ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Изобретение относится к способам и устройствам для кодирования изображений высокого динамического диапазона, и, в частности, изменения яркостей пикселей изображения для преобразования изображения к другому динамическому диапазону яркости.
УРОВЕНЬ ТЕХНИКИ
Около 5 лет назад были внедрены новые методы кодирования видеосигнала высокого динамического диапазона.
Они отличаются от традиционного кодирования видеосигнала, согласно которому кодируются все видеоизображения, которое в настоящее время именуется кодированием видеосигнала стандартного динамического диапазона (SDR) (так называемый кодирование видеосигнала низкого динамического диапазона; LDR). Определение кода люмы SDR, согласно Rec. 709, позволяет кодировать (с 8- или 10-битовыми люмами) только динамический диапазон яркости около 1000:1 (так называемая оптоэлектрическая передаточная функция OETF) вследствие своей форме, близкой к функции квадратного корня (люма: Y=sqrt(яркость L)), которая кодируется для типичных возможностей рендеризации для всех дисплеев в то время, когда яркости приблизительно от 0,1 до 100 нит, причем последняя именуется пиковой светлотой (PB).
Первый кодек HDR, появившийся на рынке, HDR10, который, например, используется для создания новых дисков blu-ray с HDR black ribbon, где OETF лишь заменена функцией перцептивного квантователя более логарифмической формы, стандартизованной в SMPTE 2084, что позволяет задавать люмы для яркостей от 1/10000 нит до 10000 нит, достаточных для практического создания HDR-видео. После вычисления люм, получается 10-битовая плоскость пикселей (или, напротив, с двумя плоскостями цветности Cb и Cr 3-битовыми плоскостями), которые можно классически рассматривать дальше по линии “как будто” они были математически изображением SDR, например, сжатым в формате MPEG. Конечно, принимающая сторона теперь будет получать изображение HDR вместо изображения SDR, иначе произойдет неверная рендеризация. В случае лишь линейного отображения (кодированное изображение макс. белый, так называемое кодирование пиковой светлоты PB_C в пиковую светлоту PB_D дисплея SDR) изображение с PB_C=1000 нит будет выглядеть в 10 раз темнее, в результате чего ночные сцены станут ненаблюдаемыми. Вследствие логарифмического характера PQ OETF, изображения HDR10 наблюдаемы, но имеют сильно сниженную контрастность, из-за чего выглядят, помимо прочего, бледными и обладают неверной светлотой.
Проблема такого видеоизображения только HDR (так называемый градуировка HDR, где слово "градуировка" указывает, какую яркость должны иметь различные объекты сцены в представлении изображения с PB_C, например 1000 нит (или выше), чтобы сцена HDR выглядела оптимально в этом представлении), состоит в том, что она будет правильно отображаться только на дисплее идентичной PB_D=1000 нит, и, следовательно, в аналогичных условиях окружающего освещения, вскоре обнаруживается, что такие диски blu-ray не всегда отображаются хорошо, и также в этой ситуации ночные сцены могут быть ненаблюдаемыми.
Для этого более совершенные видеокодеры HDR кодируют две разные градуировки сцены HDR: изображение более высокого динамического диапазона, например PB_C=5000 нит, и изображение более низкого динамического диапазона, которое обычно является изображением SDR, имеющим PB_C=100 нит, поскольку оно в таком случае может непосредственно отображаться на традиционных дисплеях LDR.
Сцены реального мира (хотя равномерно освещенная сцена имеет вследствие отношение 100:1 отражательных способностей объектов только такого меньшего динамического диапазона) могут иметь весьма высокий динамический диапазон. Например, пещера с малым отверстием для освещения солнцем снаружи, может на опорном представлении 10000 нит PB_C, которое содержит подходящую градуировку HDR этой сцены для просмотра домашнего телевизора, содержат яркости гораздо ниже 1 нит для пикселей пещеры, и до 10000 нит для пикселей сцены вне помещения. Такое многообещающее изображение HDR не настолько тривиально преобразуется к значительно более низкому динамическому диапазону (например, по меньшей мере в 100 раз при переходе к SDR), в особенности, если создатель контента желает переносить зрительное впечатление, все еще приемлемо аналогичное HDR, также в рендеризации SDR, но, как показано на фиг. 1, в принципе это может осуществляться.
Нужно отчетливо отдавать себе отчет в том, что, если речь идет о кодировании изображений HDR и соответствующих изображений более низкого динамического диапазона, могут существовать ограничения. Вместо того, чтобы фактически передавать два по отдельности градуированные изображения (изображения исходной сцены, градуированные согласно HDR и SDR PB_C 100 нит), обычно передается (что будет дополнительно пояснено со ссылкой на фиг. 2) только одно градуированное изображение из пары изображений по-разному градуированных с разными PB_C в крайней концевой точке, и в качестве функций метаданных для отображения цветов и, в частности, их яркости пикселей принятого изображения в цвета другого градуированного изображения.
Следует понимать, что существуют два класса кодеров изображения: первый (режим 1) передает изображения HDR на приемники, наподобие HDR10, что позволяет, например, повторно использовать PQ OETF для кодирования этих изображений, но добавление метаданных, предписывающих, как снизить градуировку яркости этого изображения HDR до более низкого динамического диапазона (например, вычислить изображение SDR с PB_C 100 нит из принятого изображения HDR). Второй класс (режим 2) передает изображение SDR из пары, и функции обращенной формы для повышения градуировки до изображения HDR, что полезно для обслуживания большой установленной базы традиционных телевизоров (это предусматривает дополнительные технические ограничения для любой перспективной технологии дополнения).
Существуют технические механизмы повторной градуировки к изображениям промежуточной PB, именуемым изображениями среднего динамического диапазона (MDR), поэтому вместо преобразования принятого изображения SDR в исходное, например, изображение с PB_C 5000 нит, созданное создателем контента на стороне создания или передачи, приемник (например, телевизионная приставка, телевизор, компьютер, кинопроектор и т.п.), приемник может вычислять, например, изображение с PB_C 700 нит. Эта так называемая адаптация дисплея важна, поскольку не каждый будет иметь дисплей с PB_D в точности 5000 нит, т.е. естественно согласованный с контентом (так называемый эталонный дисплей, в отличие от любого фактического дисплея на принимающей стороне), следовательно, изображение, подходящее (в смысле наиболее оптимально переносящее художественный замысел, сделанное в градуировке HDR 5000 нит, и яркость на стороне создания или, в общем случае, функции повторной градуировки цвета), например, для дисплея 700 нит, нужно вычислять. Если нет, рендеризация ведет себя неопределенным образом, и обычно более светлые части контента не будут показаны или по меньшей мере будут показаны плохо (это может приводить, например, к полному исчезновению низкоконтрастностной человеческой фигуры в светлом тумане, в том смысле, что некоторые люди увидят совершено другой сюжет фильма, что крайне нежелательно).
В порядке неограничительного примера предположим, что градуировки HDR и SDR изображения создаются человеком-градуировщиком цвета (например, сначала градуировка HDR и из нее градуировка SDR), однако в ряде случаев автоматическая система определяет градуированные изображения и функции отображения цвета (что в настоящее время предпочтительно, например, при вещании в реальном времени, когда повторное использование существующих систем не совместимо с градуировкой человеком).
Для удобства читателя и для быстрого ознакомления его с некоторыми из рассматриваемых аспектов, фиг. 1 демонстрирует несколько основных примеров, иллюстрирующих многие возможные сцены HDR, которые перспективной системе HDR (например, связанной с дисплеем с PB_D 1000 нит) может потребоваться правильно обрабатывать, т.е. рендеризовать надлежащие яркости для всех объектов/пикселей в изображении. Например, ImSCN1 является изображением освещенного солнцем пространства вне помещения из фильма в жанре вестерн (которое имеет, по большей части, светлые области, которые в идеале следует рендеризовать несколько более светлыми, чем на дисплее 100 нит, для обеспечения более солнечного образа, чем образ дождливого дня, например, со средней яркостью, например, 500 нит), тогда как ImSCN2 является изображением ночного времени.
Что делает такое изображение солнечным, а другое темным? Не обязательно относительные яркости, по крайней мере, не в парадигме SDR. Рендеризация изображения HDR отличается от той, которая всегда была в эпоху SDR, которая закончилась лишь несколько лет назад, потому, что SDR имела настолько ограниченный динамический диапазон (PB=около 100 нит, и уровень черного приблизительно от 0,1 до 1 нит), что в SDR можно показывают по большей части только собственные отражательные способности объектов (в диапазоне от 90% для хорошего белого и 1% для хорошего черного). Это было бы хорошо для распознавания объектов (имеющих некоторую степень светлоты из своего отражения и, конечно, своей цветности), при равномерном технически управляемом освещении, но не настолько, чтобы красивые вариации освещения сами по себе присутствовали в естественных сценах, и чтобы производить впечатление на зрителей. Если дисплей позволяет это, и при наличии соответствующей технологии кодирования и обработки изображения, во время лесной прогулки можно будет реально увидеть солнце, сияющее сквозь деревья, т.е. вместо всего лишь чуть более желтого впечатления, как на дисплее SDR, можно будет видеть яркую и красочную освещенную солнцем одежду, когда человек выходит из тени на солнце. По той же причине огонь и взрывы производят оптимальное зрительное впечатление, по крайней мере, насколько позволяет PB_D.
В SDR можно сделать изображение ночного времени несколько более темным, в гистограмме люма, но не слишком, иначе оно будет выглядеть как слишком темное и некрасивое изображение. Кроме того на телевизоре 100 нит или при кодировании 100 нит просто не хватит места для чего-то слишком светлого. Поэтому приходится показывать объекты независимо от их освещения, и в то же время не удается правдиво показывать все иногда высококонтрастные освещения сцены, которые могут иметь место. На практике это означает, что очень светлую солнечную сцену приходится рендеризовать с приблизительно такими же яркостями дисплея (0-100 нит), как сцену скучного, дождливого дня. Даже сцены ночного времени не удается рендеризовать слишком темными, иначе зритель не сможет различать наиболее темные части изображения, поэтому, опять же, эти светлоты ночного времени будут рендеризоваться в диапазоне от 0 до 100 нит. Традиционное решение состоит в придании ночным сценам синего оттенка, чтобы зритель понял, он наблюдает не сцену дневного времени. Конечно, в реальной жизни человеческое зрение также будет адаптироваться к имеющемуся количеству света, но с трудом (большинство людей в реальной жизни понимают, что темнеет, или что попали в более темное или довольно светлое окружение). Поэтому хотелось бы рендеризовать изображения со всеми впечатляющими пространственными и также временными осветительными эффектами, которые можно художественно внедрить в них, для получения гораздо более реалистических рендеризованных изображений по меньшей мере при наличии дисплея HDR. Точная настройка яркости, например, для светового меча в темной комнате входит в обязанности градуировщика цвета, создающего главную(ые) градуировку(и), и данная заявка посвящена необходимым техническим возможностям для создания и обработки таких изображений.
На левой оси фиг. 1 отложены яркости объектов, как хотелось бы их видеть в главной градуировка HDR с PB 5000 нит, для дисплея с PB_D 5000 нит (т.е. градуировщик делает изображение, предполагая, что типичный высококачественный домашний телевизор HDR будет иметь PB_D 5000 нит, и он может фактически сидеть в представлении такого домашнего зрительного зала и градуировать на таком градуировочном дисплее). Если желательно переносить не просто иллюзию, но реальное ощущение ковбоя, находящегося в светлом освещенном солнцем окружении, необходимо указать и рендеризовать яркости достаточно светлых пикселей (но не раздражающе слишком светлых, что является типичной ошибкой при создании и обработке изображения HDR), например, около 500 нит. Для ночной сцены нужны по большей части низкие яркости, но главный герой на мотоцикле должен быть хорошо различимым т.е. не слишком темным (например, около 5 нит), и в то же время могут существовать пиксели довольно высокой яркости, например, уличных фонарей, например, около 3000 нит на дисплее 5000 нит, или вблизи пиковой светлоты на любом дисплее HDR (например, 1000 нит). Третий пример ImSCN3 демонстрирует то, что теперь также возможно на дисплеях HDR: одновременно рендеризовать как очень светлые, так и очень темные пиксели. Он демонстрирует темную пещеру с малым отверстием, через которое можно видеть солнечное наружное пространство. Для этой сцены может быть желательно сделать освещенные солнцем объекты, например дерево, несколько менее светлым, чем в сцене, которую нужно рендеризовать для создания впечатления светлого солнечного ландшафта, например, около 400 нит, для лучшей координации с по существу темным персонажем внутри пещеры. Градуировщик цвета может пожелать оптимально скоординировать яркости всех объектов (уже в главном изображении HDR с PB_HDR=5000 нит), чтобы ничто не выглядело неуместно темным или светлым и контрастность была хорошей, например, человек, стоящий в темноте в этой пещере, может кодироваться в главном изображении, градуированном по HDR около 0,05 нит (предполагая, что рендеризации HDR будут способны рендеризовать не только светлые выделения, но и темные области).
Отсюда следует, что могут существовать различные типичные действия для повторной градуировки: например, иногда желательно поддерживать яркости по существу равными во всех диапазонах яркости, и иногда они масштабируются (например, линейно масштабируются с уменьшением PB_C). Или некоторые объекты, например, Солнце, не всегда желательно отображать в PB_C.
Следует понять, что в структуре кодирования существуют некоторые ограничения. Например, в системе режима 1, нельзя свободно делать все, что заблагорассудится, но, напротив, обычно отображение должно происходить согласно ограниченному набору стандартизованных функций отображения яркости (поскольку декодеру нужно понимать, что осуществляется на стороне создания, и декодеры должны удовлетворять практическим требованиям рынка, например, упрощения и удешевления). Поэтому нужно построить набор функций, которые ведут себя правильно, и полностью согласно конкретным желаниям пользователей системы и создателей контента, а именно, что заявитель изобрел в предыдущие годы. Для системы режима 2, нужно также гарантировать, что функции обратимы, и, в частности, что в изображении SDR утрачивается не слишком много информации, которую невозможно будет математически восстановить путем повторной градуировки на приемнике, в попытке получения близкой реконструкции исходного изображения HDR на стороне создания.
Функции для оптимальной повторной градуировки будут обычно зависеть от контента, поэтому они обычно будут передаваться по меньшей мере для каждого кадра его изображений, аналогично выглядящей сцены с аналогичным распределением яркости.
Просто чтобы проиллюстрировать некоторые технические возможности кодирования видеосигнала для объяснения некоторых компонентов, которые важно хорошо понять, мы описываем иллюстративную систему кодирования видеосигнала HDR, которую заявитель построил для изображения HDR и, в частности, кодирования видеосигнала HDR (что позволяет читателю понять, что принципы изобретения применимы к системам, отличным от иллюстративной системы также для объяснения).
Эта система кодирования видеосигнала не только может обрабатывать передачу (кодирование) одного-единственного стандартизованного HDR-видео (например, 10-битовый перцептивный квантователь, используемый в качестве кода люмы, задающего EOTF для кодирования), для типичного единого вида дисплея в условиях эксплуатации (например, изображения, заданные с PB_C=1000 нит, исходя из того, что каждый конечный зритель имеет дисплей с PB_D 1000 нит), но в то же время может передавать и обрабатывать видеоизображения, которые имеют оптимальный вид/градуировку для различных возможных других типов дисплея с различными другими пиковыми светлотами в условиях эксплуатации, в частности, изображение SDR для дисплея SDR с PB_D 100 нит.
Т.е. хотя в такой системе передачи HDR-видео фактически обычно передается только один тип градуированных изображений в качестве передаваемых пикселированных изображений, хотя не исключительно в этом примере изображения SDR (или альтернативно изображения HDR), поскольку также добавляется в метаданных одна или более функций, задающих цвета пикселей изображения HDR и, в частности, яркости из этих изображений SDR, одновременно с передачей изображения HDR также происходит поиск сцены (без фактической необходимости передавать изображения HDR, как при двойной передаче изображения, или по меньшей мере второго слоя данных пикселированного изображения HDR).
Для этого задается набор надлежащих обратимых функций F_ct цветового преобразования, как показано на фиг. 2. Фиг. 2 демонстрирует без ограничения типичную систему типа передачи SDR (т.е. режим 2), в целях объяснения основных принципов. Эти функции могут задаваться человеком-градуировщиком цвета, для получения приемлемо выглядящего изображения SDR (Im_LDR), соответствующего главному изображению HDR MAST_HDR, в то же время гарантируя, что с использованием обратных функций IF_ct исходное главное изображение HDR (MAST_HDR) можно реконструировать с достаточной точностью как реконструированное изображение HDR (Im_RHDR). Функции IF_ct можно определять из передаваемых функций F_ct прямого отображения HDR в SDR, или система может даже напрямую передавать функцию(и) IF_ct.
Цветовой преобразователь 202 обычно применяет отображение яркости F_ct относительных яркостей пикселей главного изображения HDR (MAST_HDR), которые предполагаются нормализованными таким образом, что максимальная яркость равна 1,0. Для облегчения понимания принципов настоящего изобретения, для простоты можно предположить использование функции отображения яркости 4-ой степени (L_out_SDR=power(L_in_HDR; )) для вывода нормализованных выходных яркостей пикселей SDR выходного изображения SDR с PB_C 100 нит Im_LDR (т.е. правая сторона фиг. 1), т.е. что такая функция дает приемлемое зрительное впечатление от изображений, градуированных в SDR, соответствующих главному изображению HDR сцены (приемлемое смысловое значение для конкретной сцены состоит в том, что большой процент темных областей не будут выглядеть темными, лампы и другие яркие объекты будут выделяться по желанию на основании того, что они по-прежнему имеют приемлемую межобластную контрастность с более темными областями изображения даже в изображении SDR, по меньшей мере насколько позволяет динамический диапазон яркости SDR, и т.д.; для других изображений могут вносить вклад другие факторы, но такие детали не существенны и не ограничивают объяснение технических компонентов настоящего изобретения).
Поскольку приемники должны иметь возможность реконструировать главное изображение HDR из принятого соответствующего изображения SDR, или по меньшей мере близкая реконструкция, но для некоторых артефактов, связанных со сжатием, помимо фактических пикселированных изображений, также функции отображения цвета должны поступать на видеокодер 203. Без ограничения, можно предположить, что видео сжимается с помощью блока сжатия видео MPEG HEVC, и функции сохраняются в метаданных, например, посредством механизма SEI или аналогичным методом.
Поэтому после действия устройства 221 создания контента, с точки зрения технологии передачи изображения, видеокодер 203 претендует на то, чтобы получать нормальное изображение SDR в качестве ввода, и, что более важно: выводит то, что технически является изображением SDR (кодированное изображение Im_COD), согласно стандартной спецификации люмы SDR Rec. 709. Поэтому дополнительная технология, например блок 204 форматирования передачи, применяющий все необходимые преобразования для форматирования данных для прохождения через некоторую среду 205 передачи (например, кодирования для хранения на BD-диске, или частотного кодирования для передачи по кабелю и т.д.), может просто применяться ко всем типичным этапам, используемым для осуществления в парадигме кодирования SDR.
Затем данные изображения распространяются по некоторой среде 205 передачи, например, посредством спутниковой или кабельной или интернет-передачи, например, согласно ATSC 3.0 или DVB или любому принципу передачи видеосигнала, на одной или более принимающих сторон.
На стороне любого потребителя или профессионала, блок 206 снятия форматирования приемника, который может быть включен в состав различных физических устройств, например, телевизионной приставки, телевизора или компьютера, отменяет кодирование канала путем применения снятия форматирования и декодирования канала. Затем видеодекодер 207 применяет, например, декодирование HEVC, для получения декодированного изображения SDR Im_RLDR, и метаданных функции цветового преобразования F_ct. Затем цветовой преобразователь 208 преобразует изображение SDR в изображение любого динамического диапазона, отличного от SDR (т.е. PB_C более высокой, чем 100 нит, и обычно по меньшей мере в 6 раз более высокой). Например, исходное главное изображение 5000 нит Im_RHDR можно реконструировать путем применения цветовых преобразований IF_ct, обратных цветовым преобразованиям F_ct, используемым на стороне кодирования, для создания Im_LDR из MAST_HDR. Или может содержаться блок 209 адаптации дисплея, который преобразует изображение SDR Im_RLDR в другой динамический диапазон, например, Im3000 нит оптимально градуируется в случае, когда дисплей 210 является дисплеем с PB 3000 нит, или изображением с PB 1500 нит или 1000 нит и т.д. Без ограничения предполагается, что видеодекодер и цветовой преобразователь находятся в едином устройстве 220 переопределения видео. Опытный читатель может понять, что можно аналогично построить топологию, которая передает, например, изображения HDR с PB_C=10000 нит, и цветовой преобразователь выводит изображения HDR, например, с PB_C=2500 нит, для соответствующего телевизора или монитора.
Фиг. 3 демонстрирует, как в теоретическом цветовом пространстве выглядит отображение HDR в SDR цвета (содержащее, в частности, отображение яркости).
Цветовое пространство относится к цилиндрической категории и имеет в своем основании плоскость цветности. Двухмерная цветность представляет “собственный характер” цвета, например, некоторый насыщенный оранжевый, или же ненасыщенный красный (т.е. розовый), независимо от освещения или светлоты этого цвета. В качестве меры светлоты используется яркость, которая является третьим, вертикальным измерением пространства (фактически используется относительная яркость, которая по определению достигает максимума 1,0). В качестве координат цветности (Chrom) используется насыщенность (Sat), которая является расстоянием от ахроматической оси яркости в центре, и угол оттенка (H), но также можно использовать координаты CIE (u, v), или r=R/(R+G+B) и g= G/(R+G+B), где R, G и B являются линейными величинами вклада красного, зеленого и, соответственно, синего в цвет (проще говоря, количества красных и т.д. фотонов) и т.д.
Цвет SDR (Col_out) вычисляется из цвета HDR (Col_in). Читатель должен понять, что оба цвета пикселей представлены в нормализованном цветовом пространстве (PB_C=1,0), поэтому цвет SDR обычно должен быть более светлым, но все же видимым (это можно понять, рассматривая технологию, в которой относительная яркость L соответствует проценту передачи LCD подсветки, которая гораздо светлее для дисплея HDR, чем для дисплея SDR, чтобы на экране дисплея наблюдался тот же окончательный цвет, дисплей HDR должен передавать меньше света и наоборот). Следует быстро указать, что показ яркостей обоих изображений HDR и SDR в одной и той же нормализованной гамме может быть несколько обескураживающим в отношении некоторых аспектов, поскольку наиболее светлыми цветами HDR являются цвета, которые попросту невозможны в SDR, поэтому художник или автомат должен выбрать приемлемое приближение для него, но это простое объяснение удовлетворяет этой патентной заявке, которая посвящена техническим вычислениям, производимым в цепи обработки изображения или видео HDR, например, способу создания изображения более низкого динамического диапазона из принятого главного изображения HDR.
Цветовое преобразование ведет себя весьма приятно, что желательно (в частности, ортогонально, в том смысле, что изменение яркости не влияет на цветность или наоборот), поскольку можно видеть, что относительное осветление действительно не предусматривает изменения цветности (Chrom) цвета.
Это не настолько тривиально, как в начале. Наиболее типичное традиционное преобразование осветляет изображения путем применения функции на трех аддитивных цветовых каналах по отдельности (например, функция power(L;1/3) будет приятно осветлять наиболее темные цвета, при этом отображение 1,0 в 1,0 в качестве выходного сигнала не приводит к переполнению), что будет вносить ошибки оттенка, следовательно: вместо того, чтобы просто осветлять цвета пикселей, они также изменяют их оттенок по всей цветовой гамме возможных цветов, вследствие нелинейно изменяемому соотношению между относительными величинами цветовых компонент R, G и B в аддитивном смешении.
Даже в теоретическом цветовой пространстве существует еще одна возможность изменения цветности и, в частности, ее насыщенности.
По своей сути, пространство всех цветов представляет собой цилиндр, поскольку можно фактически освещать выбранный ненасыщенный желтый цвет светом сверхновой.
Однако дисплеи имеют ограничения, и также любое фактическое кодирование цветов (из-за чего была введена нормализованная цветовая гамма: несмотря на то, что PB_C=1,0 может соответствовать фактической, абсолютной PB_C, измеряемой в нитах, которая является весьма высокой, порядка 10000 нит, существует такой предел): согласно естественной конструкции наиболее светлым цветом является белый, и любой хроматический цвет, например светло-желтый, должен иметь меньшую яркость.
Поэтому даже в этом теоретическом цветовом пространстве, это может происходить, например, вблизи оттенков синего, которые обычно являются относительно темными (например, 10% от яркости белого), которые простое осветляющее отображение отображает выше гаммы реализуемых цветов (GAMU), что на практике означает, что некоторая цветовая компонента (в этом примере синяя), подлежит обрезанию до своего максимального значения, давая цвет на верхней границе гаммы, который обычно является слишком ненасыщенным и часто имеет неверный оттенок (например, светло-синий).
Однако заявителю удалось построить простую систему, которая ведет себя согласно всем желаемым: в частности, отсутствию проблем с выходом за пределы гаммы, что приводит к правильной цветности для всех цветов, ценой, возможно, некоторого снижения яркости по сравнению с желаемой в идеале. Принципы этой технологии кодирования HDR (т.е. определения, передачи и использования ее функций метаданных отображения яркости F_ct), описанные в WO2014056679, вскоре они будут повторены следующим образом (для понимания в дальнейшем отличий от настоящих принципов).
Согласно фиг. 5, осветляющее (или затемняющее) преобразование яркости фактически применяется путем умножения трех цветовых компонент на один и тот же определенный коэффициент усиления g (напомним, что яркость является линейной комбинацией линейных цветовых компонент R, G и B, т.е. L=a*R+b*G+c*B; причем коэффициенты a, b и c зависят от хроматичностей основных цветов RGB, используемых в определении видео, например, для Rec. 709 они приблизительно равны a=0,3; b=0,6; c=0,1), и это гарантирует, что их относительная пропорциональность не изменяется, т.е. оттенок и насыщенность цвета до и после обработки яркости не отличаются.
Принцип изобретения дополнительно предполагает, что коэффициент усиления определяется для каждого возможного цвета на основании того, какая из трех компонент RGB является наибольшей, что гарантирует правильное масштабирование отображения с локальной Lmax(chrom), т.е. отсутствие проблем выхода за пределы гаммы. Следовательно, такое воплощение цветовой математики реализует идеальное поведение линейной и разделенной обработки цвета/светлоты, даже с учетом ограничений гаммы, в частности, гаммы дисплея.
Однако, по различным причинам, может потребоваться цветовая обработка, работающая также в других представлениях цвета, т.е. других цветовых пространствах.
Уже со времен аналогового видео (PAL, NTSC), было определено цветовое пространство YCbCr (или соответствующее YIQ), которое показало себя полезным для передачи видео, но люди также хотели осуществлять в нем цветовую обработку (например, с помощью аналоговых телевизионных схем, изменяющих светлоту путем регулировки канала Y или насыщенность путем аналогичного изменения каналов Cb и Cr).
Фиг. 4 демонстрирует, как это выглядит, и каковы его свойства. Для начала, куб RGB (в 0-1,0) поворачивается на своей вершине, таким образом, что теперь диагональная ось, где R=G=B, становится ахроматической т.е. бесцветной осью светлоты.
Однако теперь новой мерой светлоты является люма.
Она задается с теми же коэффициентами a, b,c, что и яркость, однако, теперь из нелинейных (предварительно подвергнутых гамма-коррекций) коэффициентов RGB, которые согласно Rec. 709 приблизительно равны R=sqrt(R_linear) и т.д. (заметим, что в эпоху HDR были дополнительно заданы нелинейные компоненты RGB, а именно, R_nonlin=OETF_HDRcodec(R_lin) и т.д.).
Принято считать, что Power(люма;2) равно яркости, и это действительно так на ахроматической оси (поскольку при R=G=B power((a+b+c=1)*sqrt(R);2) = power(Y;2)=L). Однако, для хроматических цветов люма связана не только с яркостью, но и с цветностью, что именуется утечкой непостоянной яркости.
Это имеет некоторые последствия: если желательно осветлять цвета изображения путем применения функции, например Y_out=power(Y_in; 1/3), то входная люма Y_in зависит от цветности, а значит и интенсивность осветления вследствие зависящего от Y действия (выбранной для простоты понимания) степенной функции с показателем 1/3. Заметим, что любая такая функция отображения люмы (будь то простая иллюстративная степенная функция или гораздо более сложная и интересная функция с несколько тщательно выбранным локальными более высокими или более низкими наклонами, соответствующими яркостям объектов сцены, представляющих особый интерес) в нашей вышеописанной традиционной системе соответствует люмозависимому коэффициенту g(Y) усиления, на который умножаются (линейные или нелинейные в соответствующих возможных вариантах осуществления) компоненты RGB (поскольку можно реализовать покомпонентное умножение также в переопределениях линейного RGB степенной функцией, например YCbCr). Поэтому, если “неправильная” яркость оценивается для цвета (имеющего теоретически ту же яркость, что и некоторый ахроматический серый, который необходимо осветлить) как отличающаяся люма, такой цвет может получать “неправильный” подъем, приводящий, в том числе, к тому, что насыщенные цвета, например красный цвет, будут выглядеть флуоресцирующими.
Третье основное отличие от теоретического цветового пространства, показанного на фиг. 3, состоит в том, что цветовые компоненты CbCr не являются хроматичностями, о чем свидетельствует тот факт, что (помимо ограничения гаммы наверху в верхней половине) это цветовое пространство является коническим, а не цилиндрическим.
Насыщенность изменяется не с увеличением Cb, а с увеличением угла от ахроматической оси люмы. Это можно понять, взяв синий основной цвет (ColBlu), т.е. имеющий максимальную насыщенность, воспроизводимую в этой зависящей от дисплея цветовой системе, и увеличивая его яркость к наиболее светлому возможному синему (Blu). Поскольку это тот же вид насыщенного синего цвета, его цветность и, таким образом, его насыщенность не будут изменяться, но его Cb значение возрастает с люмой (или, соответственно, с яркостью). Эта зависимость от яркости объясняет, почему компоненты Cb и Cr называются цветностью, причем первая часть указывает тот факт, что она кодифицирует цветовой аспект (синеву цвета), но вторая часть указывает линейное изменение с нелинейной люмой. В таком представлении YCbCr насыщенность можно изменять путем умножения цветностей на один и тот же постоянный коэффициент насыщенности (Sm):
Cb_out=Sm*Cb_in; Cr_out=Sm*Cr_in. Люма при этом не изменяется, поскольку не затрагивается этой обработкой, хотя яркость цвета будет изменяться вследствие такого свойства люмы как непостоянная яркость (что во многих ситуациях не воспринимается как проблема пользователями систем цветовой обработки, но в некоторых более критичных сценариях это возможно). Однако изменение только люмовой части не приводит к постоянству цветности цвета, поскольку компоненты CbCr соответствуют “неправильной” яркости, следовательно, цвету другой насыщенности. Но это можно относительно легко скорректировать, регулируя в обратном направлении коэффициенты CbCr на аналогичную разницу в люме (или яркости при яркостной обработке, например, линейного пространства YCbCr, или линейных версий, включенных в описанные ниже нелинейные топологии, и т.д.).
Проблемы насыщенности наверху гаммы, вследствие ее сужения к максимальному белому, по-прежнему существуют в любой системе (и могут приводить к ошибкам оттенка), и это является задачей, которую новые варианты осуществления и принципы настоящего изобретения призваны решать.
Последнее, что представляет интерес как информация уровня техники для полного понимания различных нижеследующих принципов, пояснено со ссылкой на фиг. 5.
Фиг. 5 схематично иллюстрирует оборудование основного декодера HDR (где кодер осуществляет зеркальную обработку) заявителя, совместно разработанное Technicolor-Philips (так называемый SLHDR1, соответственно SLHDR2). Оно может аналогично работать в двух режимах: в режиме 1, когда вводится YCbCr на основе PQ, т.е. вычисляемый на основании нелинейных координат R’G’B’, которые вычисляются из линейных координат с помощью OETF, которая является функцией перцептивного квантователя SMPTE 2084, и в режиме 2, версия которого рассматривается здесь, когда вводятся нормальные цвета изображения YCbCr SDR (т.е. декодируемые согласно Rec. 709 или аппроксимированные на основе sqrt-OETF).
Заметим, что аналогично этому примеру, рассматриваемые варианты осуществления можно реализовать как в линейном (т.е. на основе линейного RGB) цветовом пространстве YCbCr, так и в нелинейном, подчиняющемся степенному закону, как в описанном здесь примере R’=sqrt(R).
Дело в том, что вычисления в линейном пространстве можно сделать эквивалентными вычислениям степенной функции, в частности вычислениям квадратного корня, например: k*power(a*sqrt(R)+b*sqrt(G);2)=power(a*sqrt(k*R)+b*sqrt(k*G);2)
Это означает, что, несмотря на применение общего коэффициента усиления gNL к нелинейным нормализованным компонентам RGB R’G’B’_nrm, для получения правильно затемненных цветов пикселей HDR, можно фактически осуществлять линейную, полностью отдельную яркостную обработку (т.е. избегать ошибок светлоты типа флуоресцирующего цвета вследствие обработки светлоты на основе люмы при непостоянной яркости).
Об этом свидетельствует тот факт, что часть обработки яркости полного отображения цвета SDR в HDR (движение вверх иллюстративного цвета на фиг. 3) яркостным процессором 501 получает в качестве ввода яркость L обрабатываемого в данный момент пикселя.
Преобразователь 502 цветового пространства может обрабатывать это, будучи выполнен с возможностью преобразования люмы Y непостоянной яркости в яркость, которое может осуществляться по-разному (например, нелинейные значения R’G’B’ преобразуются в их линейные значения путем применения надлежащего обратного OETF, так называемой EOTF, и затем яркость L вычисляется согласно надлежащему линейному уравнению определения на основании значений RGB-триплета, как объяснено выше).
Необходимый линейный мультипликативный коэффициент для трех цветовых компонентов, gL, получается делением нормализованной выходной яркости L_out на нормализованную входную яркость L.
Но интересно, что, хотя линейной обработке подвергается яркость, можно указывать (и выполнять) обработку фактически в нелинейной версии яркости (вследствие разделения чисто яркостного информационного канала, это можно формулировать эквивалентно).
В этом примере показана обработка в перцепционно униформизированной области, которая может быть более естественной для человека-градуировщика (или автомата) для указания динамического диапазона, который желательно переградуировать. Для этого преобразователь 511 области преобразует линейные яркости в перцепционно более равномерные перцептивные люмы PY (например, путем применения PQ OETF или функции, запатентованной фирмой Philips в WO2015007505, принципы которого включены сюда согласно потенциальному варианту осуществления настоящего изобретения). Блок 512 отображения яркости осуществляет отображение перцептивных люм PY SDR в выходные перцептивные люмы PY_O HDR. Можно предположить, продолжая вышеприведенное упрощенное объяснение, что правильные перцептивные люмы изображения HDR получаются путем применения простого кубичного закона: PY_O=power(PY;3), но в общем случае создатель контента может задавать наиболее оптимальную форму кривой любой сложности, который считывается из совместно передаваемых метаданных SEI(F_ct), и, например, загружать в LUT, или аналогичную структуру. Можно видеть (в отличие от того, что объяснено со ссылкой на фиг. 3, как создавать яркости пикселей соответствующего объекта (фактически вычисляемые здесь как соответствующие им люмы) для изображения меньшего динамического диапазона и, в частности, пиковую светлоту кодирования PB_C вместо входного изображения) что необходимо гасить большинство относительных яркостей для получения изображения более высокого динамического диапазона (например, PB_C=1000 нит), создающего правильное соответствующее зрительное впечатление.
Затем, второй преобразователь 513 области повторно реализует перцептивные люмы, т.е. получает правильные яркости HDR L_out.
Поэтому эта топология является мощным средством для реализации чисто яркостных изменений, сохраняющих цветность по-разному по желанию (то есть по меньшей мере: при условии, что общий мультипликативный коэффициент не поднимает ни одно из значений R’G’B’ выше его максимума, который, без ограничения, предполагается равным 1,0, что является объясненным выше отсечением над гаммой). Остаток схемы является вариантом осуществления, который не настолько критичен для понимания нижеследующих аспектов настоящего изобретения.
Другая цветовая LUT B(Y) может загружаться из метаданных (блоком 520 хроматической обработки), давая коэффициент B для люмы Y каждого пикселя для умножения значений CbCr, принятых (умножителем 521), для получения более подходящих выходных значений CbCr_COR. Это может быть простая стратегия или более сложная, которая также учитывает значение V цвета, где V=max(R’G’B’), или V=max(R, G,B) в линейном сценарие. Наконец, матрица выводит нормализованные значения R’G’B’ R’G’B’_nrm. Они укладываются в нормализованную γ, как показано на фиг. 3 и 4, но наспределены по закону квадратного корня, поскольку они все еще находятся в нелинейной области цветов входного изображения (Y_SDR, Cb, Cr). Фактически, они являются цветами, расположенными в своих позициях SDR (см. фиг. 3: Col_out(SDR), поскольку в этом примере цвета SDR являются входными цветами, а не выходными цветами). Их нужно надлежащим образом отображать для каждого пикселя посредством соответствующего коэффициента gNL, таким образом, что умножитель 530 может умножать три компоненты аналогично на этот коэффициент, для получения нелинейных, нормализованных цветов HDR R’G’B’_HDR.
Поэтому умножитель 530 осуществляет: R’_HDR=gNL*R’_nrm; G’_HDR=gNL*G’_nrm; B’_HDR=gNL*B’_nrm [Ур. 1].
То же самое изменение яркости также может быть альтернативно реализовано на других производных представлений цвета на основе степенной функции, например Y’_HDR=gNL*Y’_nrm; Cb_HDR=gNL*Cb_nrm; Cr_HDR=gNL*Cr_nrm, благодаря чему, Cb и Cr задаются согласно их обычному уравнению на основании R’G’B’, т.е. в примере будут цветностями SDR, но нормализованными к 1. Заметим, что в этом тексте знак прим указывает, используется величина на основе степени (т.е. классическое определение нелинейной люмы согласно Rec. 709), и отсутствие прима обычно указывает нормальные линейные цветовые компоненты, и двойной прим указывает еще одно возможное определение цветовых компонент HDR, где R'' обычно указывает R''=OETF_PQ(R). Специалисту в данной области очевидно, что в такой заданной системе задаются соответствующие Cb и Cr.
Наконец, преобразователь 540 дисплея может преобразовывать цвета для универсального эталона (например, в случае хранилища) или конкретного соединенного дисплея. В первом примере, обработка может быть настолько простой, чтобы преобразовывать значения R’G’B’, заданные посредством γ 1/(2,0) в люмы R''G''B''_PQ, заданные посредством PQ OETF. В последнем примере, любой конкретный алгоритм адаптации дисплея может применяться преобразователем 540 дисплея для получения вместо, например, R’G’B’_HDR, заданного посредством PB_C 5000 нит, например, оптимизированных значений R''G''B'' PB_D 800 нит (не следует ошибочно понимать, что в других вариантах осуществления эта адаптация дисплея уже может происходить в самой обработке, в частности, в яркостном процессоре 501). Фактически, преобразователь дисплея может выдавать любой формат сигнала, необходимый соединенному дисплею, и может осуществлять связь для приема информации о нем из дисплея до формирования желаемых выходных цветов и сигнала, кодифицирующего их (например, по кабелю HDMI или беспроводному каналу и т.д.).
Можно видеть, что эта топология имеет некоторые преимущества нескольких до сих пор взаимоисключающих походов к цветовой обработке: она имеет структуру YCbCr, в частности, допускает использование нормальных входных цветов YCbCr, и в то же время демонстрирует все привлекательные свойства линейной цветовой обработки, например, отсутствие сдвигов оттенка нормальных цветов (т.е. в изображениях HDR, большинство цветов лежит значительно ниже вершины гаммы, поскольку эти цвета обычно кодифицируют ультрасветлые цвета, например, цвета лампы, которые часто являются бесцветным белым, или по меньшей мере не вызывают раздражения при потере насыщенности). Однако проблема отображения цвета над гаммой все еще существует, как и в любом цветовом пространстве коническом от вершины (будь то коническом от основания или цилиндрическом от основания). Не следует думать, что это происходит при обработке цветового куба, например, отображении нелинейного RGB с разделением каналов, по меньшей мере в таком представлении легко избегать переполнения, но как упомянуто в таких представлениях цветовые ошибки могут возвращаться вследствие изменения пропорциональностей цветовых компонент.
Любая функция отображения яркости (например, желаемая и создаваемая человеком-градуировщиком форма функции) или алгоритм может преобразовываться в единый мультипликативный коэффициент усиления блоком 514 вычисления коэффициента усиления следующим образом: предположим входная яркость равна, например 0,2, и применение всех функций в блоке 501 (которые в общем случае могут, между двумя коробками концевой точки, осуществляющими преобразование области, содержат любое количество обработок, приводящих к окончательному результату) дает выходную яркость 0,4. Затем блок 514 вычисления коэффициента усиления может быть простым делителем, выдавая коэффициент gL (в линейной области) как L_out/L.
Входная яркость L будет соответствовать входным цветовым компонентам, например, линейным R, G,B. Их умножение на коэффициент gL, который в примере равен 2,0, даст правильные выходные цветовые компоненты, которые также имеют правильную желаемую выходную яркость. В случае, когда вычисления (т.е. топология IC или программное обеспечение) не производятся в линейной области, может потребоваться преобразователь 515 области коэффициента усиления, который в этом примере, где обработка производится в области SDR с классической γ 2,0, должен применять функцию квадратного корня для получения окончательного, необходимого нелинейного коэффициента усиления gNL=sqrt(gL). Когда сформулировано, что отображение яркости производится с яркостью в качестве ввода, можно аналогично воплощать соответствующую формулировку с люмой в качестве ввода, для которой обычно используется люма с классической γ 2,0. (Заметим, что V-зависимость цветовой обработки блока 520 ранее не заявлялась, но полезна в связи с настоящим изобретением). Цветовая математика, применяемая цветовой матричной схемой 523 для вывода нормализованных координат R’G’B’_nrm из CbCr_COR не должна быть слишком трудной для понимания специалистом в цветовой технологии, и также не является действительно важной, поскольку принципы настоящего изобретения работают в различных вариантах осуществления вычисления цветов, т.е. присутствует ли эта часть, при условии, что можно вывести три цветовые компоненты, которые могут регулироваться по яркости общим коэффициентом g, что часть цветовой обработки достаточно присутствуют, т.е. хотя показана полная топология цветовой обработки декодера HDR, для настоящих принципов она является верхней частью 501, которая представляет интерес.
В WO2017/157977 также представлены аспекты предпочтительного подхода настоящего заявителя к повторной градуировке яркости HDR-видео и, в частности, некоторые особенности обработки сверхглубоких черных цветов. Но подобно настоящему рассмотрению, в ней указано, как можно преимущественно задавать функции отображения яркости, которые затем можно применять как общее умножение соответствующего коэффициента g на три цветовые компоненты пикселя (линейной или нелинейной), например обычно YCbCr. Однако в этой патентной заявке не представлено элегантное решение для любого следствия вышеупомянутого поведения гаммы, поскольку на практике это считается спорным (заметим, что изображения HDR часто могут содержать относительно темные цвета, что может не создавать проблемы в SDR, если чрезмерно не поднимать их, и часто некоторые ахроматические выделения, которые не будут создавать психовизуальные проблемы в случае отсечения). В таком случае эксперту обычно нужно выбирать чуть менее “агрессивную” (т.е. меньший подъем яркости от HDR к SDR) кривую, например, выбирать более подходящий наклон для яркостей наиболее светлого изображения функции отображения яркости, применяемой регулятором динамического диапазона (DRA), показанным на фиг. 12 WO’977. Любая проблема, представляющая достаточную озабоченность, затем, как правило, будет достаточно смягчена, хотя обычно это происходит с некоторым другим психовизуальным эффектом изображения (например, изменение наклона упомянутого верхнего линейного сегмента, как правило, также оказывает влияние на форму описанной ниже функции, вследствие желаемой непрерывности).
Поэтому автор изобретения предложил новое техническое решение цветовой обработки изменения динамического диапазона, при этом сохраняя некоторые хорошие свойства некоторых существующих вычислений цветового пространства и, в частности, которые могут согласовываться с несколькими устройствами практического изменения динамического диапазона или топологиями программного обеспечения, как описано ниже (и выше), и аналогичными топологиями.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Как упомянуто, проблема отображения цвета вблизи вершины цветовой гаммы (обычно дисплея, хотя не исключительно) является трудной проблемой, которая может легко порождать, например, ошибки оттенка (например, цвет становится более зеленоватым), в связи с чем настоящее изобретение предлагает новый способ такой цветовой обработки, подходящий для недавно появившейся области обработки изображений высокого динамического диапазона и соответствующего вывода изображений другого динамического диапазона (который для простоты предполагается определяемым в основном пиковой светлотой PB_C), который, в частности, содержит яркостный процессор (501), выполненный с возможностью вычисления выходной яркости пикселя выходного изображения (Im_LDR; Im3000nit), имеющего второй динамический диапазон яркости, характеризуемый второй пиковой светлотой (PB_LDR; PB_MDR) из входной яркости (L) пространственно совмещенного пикселя входного изображения (MAST_HDR), имеющего первый динамический диапазон яркости, характеризуемый первой пиковой светлотой (PB_HDR), причем яркостный процессор содержит:
- блок (514) вычисления коэффициента усиления, выполненный с возможностью вычисления коэффициента (gL) умножения, причем коэффициент умножения задан для входной яркости любого входного цвета пикселя изображения входного изображения на основании функции (FLM) отображения яркости, указывающей, как регулировать входную яркость, чтобы добиться соответствующей промежуточной выходной яркости, путем вычисления коэффициента умножения посредством деления выхода функции отображения яркости для входной яркости на эту входную яркость: gL=FLM(L)/L;
- вычислитель (602) переполнения, выполненный с возможностью вычисления меры (T) переполнения, указывающей, насколько выше верхней границы гаммы при цветности входного цвета располагается промежуточная выходная яркость, причем промежуточная выходная яркость получается в результате применения коэффициента (gL) умножения к входному цвету;
- блок (603) изменения коэффициента усиления, выполненный с возможностью определения более низкого альтернативного коэффициента усиления (F1(gL)) в случае, когда мера переполнения превышает порог (G), и выполненный с возможностью поддержания исходного коэффициента усиления в противном случае, и выполненный с возможностью вывода одного из них в качестве окончательного коэффициента усиления (gF); и
- умножитель (530) для умножения входного цвета (R’G’B’_nrm) на окончательный коэффициент усиления (gF) для получения выходного цвета (R’G’B’_HDR), имеющего выходную яркость.
Обычно выходное изображение имеет меньший динамический диапазон (т.е. более низкое значение PB_C), хотя не исключительно, поскольку в некоторых сценариях проблема вершины гаммы (а, следовательно, и ее решение) состоит также в повышении градуировки динамического диапазона, и в любом случае обработку (например, одну и ту же IC) можно применять к обеим ситуациям, поскольку в качестве защитной стратегии она не будут давать вклад без необходимости (беспроблемные цвета просто обрабатываются в соответствии с функциями F_ct отображения цвета, выведенными стороной создания контента, или, в общем случае, функциями отображения цвета, выведенными любым способом, например, самим приемником на основании анализа изображения.
Блок вычисления коэффициента усиления определяет мультипликативный коэффициент усиления (например, gL или связанный с ним коэффициент), поскольку механизм обычно работает, аналогично масштабируя по яркости три цветовых компонента (которыми, естественно, являются линейные красный, зеленый и синий цветовые компоненты для систем аддитивного воспроизведения цвета, как в телевизоре; или их степенные функции, наподобие Y’CbCr, которые можно вычислять, извлекая квадратный корень из линейных компонент RGB, что дает довольно хорошее приближение традиционной OETF для видео согласно Rec. 709).
Потенциальной опасности ситуации (поскольку с одной стороны цвета с большей вероятностью будут отображаться выше границы цветовой гаммы вследствие, например, вычисления изображения HDR в SDR, если они уже светлые, а также если они являются цветами определенного типа, например, оттенками синего, которые всегда имеют низкие яркости, поэтому любое отображение яркости, которое базируется на входной яркости цвета пикселя, небезопасно для таких оттенков синего) по замыслу автора изобретения можно благополучно избежать, начав с вычисления V=max(R, G,B) входного цвета (или max(R’, G’, B’), который несколько отличается численным значением, но ведет себя аналогично согласно принципам этого подхода), и затем задав меру переполнения на этой основе. Хотя для применения одних и тех же технических принципов изобретения можно задавать различные меры переполнения (правильные, где и до необходимой степени), некоторые из которых не требуют использования V (например, посредством таблицы, содержащей более высокие яркости гаммы для каждой цветности, и решения уравнения расстояния), в частности, применение gL к значению V путем их перемножения позволяет элегантно реализовать меру переполнения. Это не следует ошибочно понимать как механизмы, которые всегда применяют отображение яркости на основании этого значения V интенсивности, т.е. V_out=F_Lt(V_in), наподобие того, что утверждается в WO2014056679. Вычисление мультипликативного коэффициента усиления, например, для компонент RGB согласно спецификации повторной градуировки, которая работает на V, а не на яркости L цветов пикселей, которая обрабатывается последовательно, всегда автоматически отображает внутрь гаммы, поэтому не сталкивается с проблемой, с которой имеет дело настоящее решение, но которая приводит к недостатку, состоящему в получении более темных изображений SDR, более темных, чем потенциально предпочтительные. Конечно, варианты осуществления настоящей системы также допускают использование более консервативной функции F_ct отображения на основании более темной яркости (/ обратной FLM), но варианты осуществления также допускают использование более светлой функции, и иначе решают проблемы отображения яркости в верхней области гаммы. Наиболее основные варианты также предусматривают отсечение некоторых из наиболее светлых цветов до цвета на верхней границе гаммы, но обычно гарантируют, что цветность (или по меньшей мере оттенок) не отличается от входного цвета. Это создает лишь дифференциальное осветление, которое применяется только к некоторым из цветов изображения, и для некоторых изображений (и в особенности при переходе к динамическому диапазону, который не сильно отличается, обычно более низкому, чем динамический диапазон входного изображения), может существовать лишь несколько пикселей, подлежащих отсечению. Фактически, содержимое пунктирного прямоугольника в нижней правой части фиг. 6 можно рассматривать как некоторый защитный механизм. Является ли он фактически защитным механизмом, в том смысле, что создает скорректированные коэффициенты g из начальных коэффициентов g, зависит от типа варианта осуществления. В первом классе вариантов осуществления, автомат или человек-градуировщик на стороне создания контента раскованно определяет некоторую функцию отображения яркости HDR в SDR (которая ведет себя надлежащим образом для большинства цветов изображения, например, она обеспечивает приятно правильно светлый внешний вид более темных цветов изображений текущей сцены, и также для ненасыщенных цветов вблизи ахроматической оси), и предполагает, что механизма будет достаточно для решения проблем для (нескольких) проблемных цветов, например, некоторых светлых красноватых и оранжеватых цветов закатного неба. Преимущество такого механизма состоит в том, что он может грубо определять эту функцию, вместо необходимости точно указывать, что именно должно происходить для разных отображений цветов для тех нескольких критичных цветов закатного неба, и это может быть, например, полезно для кодирование контента в реальном времени. Такой механизм дополнительно делится на две подкатегории, а именно, ту, в которой кодер определяет приемлемые значения для самого контента (или даже имеет заранее установленные значения, которые хорошо работают в общем случае в сценариях наиболее критичного цвета, в том смысле, что это снижает тяжесть ошибки отсечения, соответствующую отсутствию действий), и вторую подкатегорию, где сторона создания контента сама определяет оптимальную стратегию. Поэтому простые варианты осуществления могут использовать очень простой вариант, имеющий, например, фиксированное пороговое значение G, например 0,75, и, в порядке альтернативы, выделение более низкого коэффициента усиления линейно распределяет яркости между G (обычно ниже 1) и, например, 1,5 (например, максимальным промежуточным выходным цветом для этой цветности, или даже для всех цветностям), в [G,1]), или, что то же самое, с переменным порогом G, оптимизируемым создателем. Например, на фиг. 11 показано, как в качестве второго прохода коррекции его первоначально указанной(ых) функции(й) повторной градуировки, который грубо хорош, т.е. для большинства пикселей изображения и вида изображения, например, человек-градуировщик может указывать несколько больше параметров, задающих отображение в верхних областях цветовой гаммы (обычно желательно оставлять повторную градуировку в более низких частях только выходной гаммы, т.е. как указано создателем контента в функции FLM). Порог G фактически служит оптимизируемым или по меньшей мере приемлемым определением точки на верхнем участке выходной гаммы, где лучше всего осуществлять действие по корректировке исходной повторной градуировки.
Но следует заметить, что в порядке альтернативы “корректировочным” вариантам осуществления, в которых параметры, например, ρ и т.д. определяют повторное вычисление первоначально определенного коэффициента g (т.е., например, gL на основании функции FLM и настоящей яркости цвета), то есть по меньшей мере для проблемных цветов, которые будут (значительно) отображаться выше вершины границы гаммы, кодер также может преобразовывать их всех в набор окончательных функций цветовой обработки (или даже соответствующих им коэффициентов g) для применения на принимающей стороне. Это может осуществляться, в частности, если сторона создания контента совместно передает функцию для отображения цветов в верхних областях гаммы (обычно “дифференциально” на основании нормального нескорректированного поведения). В этом случае блок изменения коэффициента усиления проверяет, применять ли “стандартное” грубое отображение яркости, или более совершенное, в точности как указано создателем контента в его функции FADAP (и читатель понимает, что принимающая сторона, например, телевизор, даже может делать некоторые небольшие вариации самих себя в этой спецификации, но для простоты изучения будем предполагать, что она просто следует знаниям повторной градуировки стороны создания, передаваемых в различных параметрах яркости верхней области гаммы или, в общем случае, отображения цвета).
Вычислитель (602) переполнения вычисляет меру T переполнения, которая указывает, насколько критична ситуация, т.е. насколько близок к границе гаммы и, следовательно, переполнению отображенный цвет (т.е. после применения отображения яркости в качестве его коэффициента g), или что особенно интересно: насколько вершина гаммы выше отображенного цвета, следовательно, насколько серьезно требуется коррекция (поскольку, как упомянуто, коррекция может состоять лишь в затемнении, но это может не быть наилучшим выбором для всех различных типов изображения HDR, в особенности, если требуется значительное затемнение, и, как будет показано ниже, варианты осуществления также могут принимать решение осуществлять коррекцию другим, более усовершенствованным образом, например, путем определения оптимальной величины снижения насыщенности цвета помимо некоторой, меньшей величины затемнения). В частности, меры переполнения ниже фактического переполнения (например 90%) полезны согласно вариантам осуществления, что должно давать место для переполненных цветов также путем повторной градуировки некоторых соседних цветов, которые сами не являются реально переполняющими, и что особенно интересно в сценариях, когда необходима обратимая цветовая обработка, например, кодирование в режиме 2, которая кодирует изображения HDR фактически как соответствующие переградуированные изображения SDR (следовательно, оба изображения должны быть достаточно детальными, чтобы иметь возможность отображения в изображения HDR достаточного качества, функциями, которые сами также должны быть хорошими).
Предпочтительно, когда яркостный процессор (501) содержит средство (689) приема данных, выполненное с возможностью приема порога (G) от создателя контента по сети (690). Другие варианты осуществления яркостного процессора могут сами определять порог, например, на приемнике изображений HDR, например, анализируя свойства этого изображения (например, определяя существующий тип эффекта HDR, например, количество пикселей, вид структуры в нем, например, согласно характеристике текстуры и т.д.). Могут работать даже более простые версии с фиксированным или по меньшей мере стандартным начальным значением, например G=0,9. Однако, может быть весьма преимущественно, если сторона создания контента сможет предписывать оптимальное значение G, для всего фильма, кадра из N последовательных изображений одной и той же сцены или даже изображение, сделанное в один момент времени. Тогда не только можно использовать более сложный анализ изображения на стороне создания, но и человек-градуировщик может указывать свое собственное наилучшее рабочее значение G, например, с помощью UI, как показано на фиг. 11. На основании единого значения G, можно разработать стратегии переопределения коэффициента g, например, с помощью сегментов линейной функции, как показано на фиг. 10.
Предпочтительно, когда яркостный процессор (501) содержит средство (689) приема данных, выполненное с возможностью приема функции (FADAP) для определения альтернативного коэффициента усиления от создателя контента по сети (690). Таким образом, на стороне создания контента можно создавать очень сложные функции переопределения коэффициента g, которые учитывают конкретные нужды контента, что может быть полезно при наличии весьма конкретного очень критичного контента в верхних областях гаммы (например, шаблон мягкой контрастности, записанный на синей коммерческой TL-трубке, и затем функции переопределения можно придать такую форму, чтобы она пыталась поддерживать более высокий наклон контраста яркости по меньшей мере вокруг яркостей этих текстовых символов). Человек-градуировщик (или даже автомат) может, например, идентифицировать критичные области в наиболее светлых частях изображения, которые нуждаются в достаточной контрастности после корректировочного отображения в окончательные выходные цвета, и настраивать форму функции FADAP, которая выравнивается путем настройки, как окончательные коэффициенты g будут распределять назначенные, но нереализуемые цвета над гаммой по верхнему участку гаммы. Когда часть облака начинает выглядеть слишком банально, форму такой функции FADAP можно корректировать (или часть коррекции можно сдвигать к обработке насыщенности).
Здесь рассмотрены структурные аспекты, позволяющие определять, передавать и окончательно применять такую функцию FADAP, поскольку специалист на основании принципов может представить, что может существовать много детальных аспектов построения конкретной формы функции FADAP для каждого конкретного изображения (набора последовательных изображений), или класс изображений и т.д. (например, в ряде случаев создатель контента может обращать внимание на контраст яркости некоторого поднабора наиболее светлых яркостей, отражающего это в форме функции FADAP, определяющей выделение входных цветов по верхнему участку выходной гаммы, при том, что некоторый конкретный объект сцены или цвета участка изображения занимают больше имеющегося объема гаммы ценой точности некоторых других цветов). Благодаря простому иллюстративному примеру освещенного солнцем желтого вечернего неба, читатель может представить, что если нужно снизить некоторую локальную контрастность (которая задает формы облаков их составляющих значений серого), возможно, ниже видимой или по меньшей мере дающую сниженное визуальное впечатление, это изменение первого набора значений серого (предполагая для простоты их отображение в единое значение) может иначе влиять на наблюдаемые формы облаков, чем нарушать другой поднабор яркостей (например, поскольку первые яркости возникают вокруг ярко освещенных границ некоторых важных облаков, и вторые яркости определяют внутренний вид некоторых вторичных облаков). Описывает ли вариант осуществления FADAP по меньшей мере более высокую часть нормальной функции яркости, которая аналогична FLM, можно преобразовать в коэффициент g путем деления, или он задается на коэффициентах g (g_out=FADAP(g_in)), является деталью, которая не имеет значения для принципов, позволяющих устанавливать хорошую альтернативу в свойствах настоящей новой структуры.
Даже если функция передается, в некоторых вариантах осуществления (например, допускающих изменение предписанного механизма переопределения на приемнике; или частичные характеризации функции) все же может быть полезно также передавать коэффициент g.
Предпочтительно, когда яркостный процессор (501) содержит средство (689) приема данных, выполненное с возможностью приема от создателя контента по сети (690) параметра (Vmx) отсечения, указывающего, выше какого разрешено отсечение цвета с сохранением оттенка, причем параметр отсечения задается как максимум красной, зеленой и синей цветовых компонент. В этом случае допустимо, чтобы некоторые из цветов в конце концов становились одним и тем же цветом в выходном изображении, что может быть хорошим оптимумом для необратимых сценариев, т.е. когда не нужно переопределять исходные цвета из полученного единого цвета. Это может работать с другими стратегиями (например, гашения яркости, сбалансированного со снижением насыщенности) ниже поднабора отсеченных цветов. В идеале (и, конечно, для некоторых приложений), отсечение вовсе не производится, но иногда это хорошая компонента оптимальной повторной градуировки изображения, поскольку позволяет, например, меньше затемнять или снижать насыщенность некоторых других цветов изображения, что может быть особенно полезно при наличии некоторых критичных областей, например в облаках, которые требуют повышенного внимания и, следовательно, большого подобъема верхнего участка выходной гаммы.
В зависимости от конфигурации параметров, несколько основных действий может производиться с изображением, и тяжесть этого зависит от вида сцены HDR, желательно делать оптимальный выбор между вариантами.
В простейшем случае, можно устанавливать G равным значению вершины гаммы (G=1,0), что означают просто жесткое отсечение для всех тех цветов, которые возникают для отображения над вершиной гаммы, однако с сохранением оттенка и насыщенности. Конечно это может означать, что несколько цветов, которые первоначально отличаются во входном изображении (например, обычно изображение HDR) отображаются в один и тот же цвет в выходном изображении более низкого динамического диапазона (обычно). Это допустимо только если объект, который нарушает условие внутри гаммы, является, например, красочной TL-трубкой, поскольку различия в яркости вероятно не имеют никакого семантического значения для следования сюжету фильма или видео (в особенности, если это просто какая-то декоративная лампа в фоне, и действие происходит где-то в другом месте). Исходя из того, что невозможно сделать TL-трубку насыщенно красной и очень светлой в SDR (по этой причине изображения HDR выглядят лучше), для такой сцены, вероятно, гораздо оптимальнее просто представлять всю TL-трубку в SDR как максимально светлой, имеющей основной красный цвет, вместо того, чтобы, например, значительно снижать насыщенность для сохранения некоторых различий в яркости внутри светлого участка трубки (что придает трубке некрасивый розоватый цвет). Для приятного красного заката с многочисленными структурами сероватых облаков с красным отливом оптимальное решение может быть совсем другим. В таком случае слишком жесткая обрезка нежелательна, потому что она может слишком сильно нарушать красивую структуру облаков.это можно обрабатывать, либо равномерно затемняя все цвета пикселей облака, хотя это может приводить к снижению значения G, либо вводя (также) небольшое снижение насыщенности. Однако параметр Vmx позволяет указывать, возможность также небольшого отсечения, даже при наличии “защиты” большей части структуры облаков в изображении более низкого динамического диапазона. В случае используется способ обратимой обработки изображений, например, система передачи на основе кодирования в режиме 2, в которой изображения HDR необходимо реконструировать из принятых изображений SDR на любой принимающей стороне, значение Vmx обычно должно быть таким, чтобы отсекалось лишь несколько пикселей, ослабляя возможность дифференциации (например, всему внутреннему пространству лампы можно придавать одно и то же значение 1023 в изображении SDR, и позволит создавать реконструированное изображение HDR, которое, хотя математически не в точности идентично главному изображению HDR на стороне создания, визуально дает достаточно точное приближение).
Будет весьма полезно, если яркостный процессор (501) по любому из предыдущих пунктов, содержащий вычислитель (903) частичного отображения, выполненный с возможностью определения первого коэффициента коррекции для умножения на (gL), и выполненный с возможностью определения второго коэффициента коррекции для определения коэффициента (S) насыщенности для осуществления вычисления насыщенности цвета. Согласно предложенному новому подходу, специалист может понять, что должно покрываться расстояние от исходного переградуированного цвета над гаммой как идеально назначенного, к границе гаммы. Обратившись к фиг. 8, специалист может изучить и понять, что можно задавать долю такого расстояния (например, его половину), и что можно задать альтернативный коэффициент g, который отображается в половину такого расстояния, т.е. не выполняя полного затемнения, необходимого для смещения вниз на верхней границе гаммы для достижения в точности входной цветности ((оттенка, насыщенности) или (u, v)). Поэтому остается расстояние (или точнее, переполнение) Arem, которое надо как-то покрыть, в противном случае, возможно, отсечение с сохранением цветности может давать вклад как уменьшение по умолчанию, но которое может не давать наилучший визуальный результат для обрабатываемых таким образом объектов в этом изображении. Оставшееся расстояние до верхней границы цветовой гаммы может покрываться в ортогональном направлении, т.е. путем соответствующей обработки снижения насыщенности.
Автор изобретения обнаружил, что будет полезно разложить необходимое ослабление A (т.е. соответствующий коэффициент умножения для gL*V для достаточного перемещения его вниз, внутрь гаммы или на его границу) на первую часть Arho, и оставшуюся часть Arem, которые задаются через параметр "ρ" следующим образом:
Arho=power(A; ρ); Arem=power(A; 1-ρ) [Ур. 2].
Такую спецификацию можно определять на основании некоторого цвета наихудшего случая, и затем аналогично обрабатываются другие цвета.
Это позволяет значительно упростить отображение яркости с понижением, т.е. функцию для переопределения окончательного коэффициента g gF для получения большого количества критичных цветов эффекта HDR в верхнем диапазоне изображения более низкого динамического диапазона, в частности для ситуаций, требующих обращения функций, например кодирования HDR в режиме 2 , поскольку тогда можно решать оставшуюся проблему, состоящую в том, что промежуточный цвет все еще располагается над границей гаммы, посредством операции снижения насыщенности вместо дополнительного затемнения, или более экстремального снижения контрастности при использовании другой формы функции переопределения FADAP. Это опять же дает гораздо большей свободы для выбора для каждого особого эффекта HDR, например, ярко освещенных облаков перед закатом, или человеческой фигуры едва видимой в светлом тумане (человек тумана), или вида из окна в солнечном свете, или лампы на дискотеке или базаре модных вещей и т.д., лучше ли производить несколько большее снижение светлоты наиболее темных из проблематичных цветов вблизи вершины гаммы, или большее снижение контрастности текстуры в этих областях, или несколько большее снижение насыщенности. В необязательном порядке, вместо простой глобальной операции этого алгоритма (который относительно прост в реализации человеком-градуировщиком, которому не требуется тратить слишком много дорогостоящего времени на градуировку, или даже автоматом), в веьма хитрых случаях можно даже отправлять несколько наборов параметров обработки и указывать область цветового пространства, в которой нужно применять их (например, для красного заката другой способ, чем для области синей TL-трубки на фасаде контражурного дома на переднем плане).
Опять же может быть весьма преимущественно, если яркостный процессор (501) содержит средство (689) приема данных, выполненное с возможностью приема значения (ρ) коэффициента вышеприведенных уравнений от создателя контента по сети (690), вместо того, чтобы приемник должен был сам определять оптимальное значение ρ, поскольку часто оптимальное значение технической обработки изображений может быть художественным по своей сути, т.е. даже может быть делом вкуса, применять ли для первого красивого заката, человеку-создателю его большее отсечение, чем для второго (просто некоторые градуировщики предпочитают едкие цвета для своего вида, тогда как другим наравятся более мягкие, проработанные рисунки).
Техническим зеркальным требованием того, что яркостный процессор принимающей стороны может или должен окончательно делать для получения цветов изображения более низкого динамического диапазона, в случае приема параметров алгоритма от стороны создания, является система, которая должна делать эти параметры, например, порог G, или функцию FADAP и т.д. Некоторые или все такие параметры могут устанавливаться человеком или автоматом (например, автоматом, подсказывающим хорошую настройку, которую человек при необходимости может улучшить, или человек, просто указывает любое значение в отсутствие автомата анализа изображения и т.д.). Автомат может идентифицировать такие свойства, как когерентность областей (например, при наличии многих значений, как в проработанной текстуре, например, клумбе, наблюдаемой издалека, или менее), вычислять некоторые текущие контрастности в нескольких направлениях в нескольких областях (например, в центре изображения, который может быть визуально более важным), осуществлять некоторый алгоритм распознаваемости, например, что эллипс легко аппроксимирует плавно идущую границу со многими значениями серого посредством нечеткой аппроксимации, в отличие от более трудного для получения хорошего эллипса, если упомянутая граница имеет произвольную форму, в том числе зигзагообразную, и т.д.).
Например, видеокодер высокого динамического диапазона, которому для кодирования обычно необходимо, чтобы параметры в метаданных отправлялись или получались совместно с изображениями, представляющими HDR-видео, может содержать:
- вход для приема входного изображения от источника (1202) изображения;
- кодер для кодирования входного изображения в качестве выходного изображения и для кодирования по меньшей мере одной функции (F_Lt) отображения яркости; причем кодер содержит процессор (1210) оценивания изображения, выполненный с возможностью анализа цветовых свойств изображения видео, для определения порога (G), подлежащего применению яркостным процессором по п. 1, и при этом кодер выполнен с возможностью вывода этого порога (G) в качестве метаданных. Яркостный процессор выше (и ниже) описанных типов может, например, позволять человеку просматривать, как будут выглядеть его варианты выбора на стороне декодера, но не всегда содержится в автоматических кодерах (хотя часто содержится, поскольку автоматический анализ изображения затем может производиться на одном или более изображениях, полученных в результате один или более возможных вариантов выбора параметров, например, оптимального порога G, например, путем сравнения некоторой метрики качества изображения, например, контрастности, метрик текстуры и т.д. во входном и тестируемом варианте выходного изображения).
В общем случае видеокодер (1201) высокого динамического диапазона может содержать:
- вход для приема входного изображения от источника (1202) изображения;
- кодер для кодирования входного изображения в качестве выходного изображения и по меньшей мере одна функция (F_Lt) отображения яркости; причем кодер содержит процессор (1210) оценивания изображения, выполненный с возможностью анализа цветовых свойств изображения видео, для определения по меньшей мере одного из параметров, а именно: a) порога (G) согласно приведенным примерам для использованию оптимального порога (где оставлять цвета без изменений, и где лучше всего начинать применение алгоритма ослабления с его соответствующими неидеальностями цвета), функции (FADAP), параметра (Vmx) отсечения, и значения (ρ) коэффициента, указывающего разделение и величину коррекции для обработки путем гашения или же снижения насыщенности, и при этом кодер выполнен с возможностью вывода в качестве метаданных такого по меньшей мере одного из параметров, таким образом, что яркостный процессор любого приемника может применять соответствующую повторную градуировку.
Опять же в зависимости от варианта осуществления, возможно только один параметр фактически определяется и передается, например Vmx, и в этом случае принимающая сторона может только определять отображение, которое осуществляет повторное выделение цветов в диапазоне яркостей вблизи вершины гаммы для цветов которые соответствуют значению V интенсивности <=Vmx. Если же передаются три или более параметров, на принимающей стороне можно использовать более сложные уравнения баланса. Ограничение количества параметров несколькими наиболее важными имеет, конечно, преимущества например в том, что человек-градуировщик несколькими движениями ползунка или шарового манипулятора может устанавливать те ситуационные значения, которые оказывают наибольшее влияние на качество окончательного результата. Более простые системы будут иметь автомат для определения по меньшей мере одного параметра хотя, поскольку в некоторых сценариях для этого нет персонала или по меньшей мере нежелательно привлекать для этого производственную группу. Такой автомат может проводить анализ изображения, например, определять, имеет ли область наиболее светлых цветов (высоким L и в особенности высоким V) структурой со значительным пространственным изменением яркости, например, с использованием анализаторов текстуры. Также несколько прагматических вариантов осуществления может работать с оцениванием ухудшения качества изображения. Это может быть также просто, как подсчет величины, или пространственного распределения отсеченных пикселей в некоторых сценариях, или вычислять такие меры, как, например, мера текущей контрастности на вариациях яркость облаков до и после корректировочной обработки переопределенного коэффициента g.
Конечно, особенно интересно, если эта сторона создания имеет систему кодирования видеосигнала высокого динамического диапазона, содержащую описанный видеокодер высокого динамического диапазона, который подключен к средству (1203) пользовательского интерфейса, что позволяет человеку-градуировщику (1204) цвета указывать по меньшей мере один из параметров (G, ρ или параметры, указывающие более сложную функцию переопределения коэффициента g и т.д.) в качестве выходного сигнала процессора (1210) оценивания изображения, причем видеокодер высокого динамического диапазона содержит яркостный процессор (501), выполненный с возможностью вычисления выходного изображения (Im_LDR; Im3000nit), которое можно проверять на подключенном дисплее (1220). Специалист понимает, что это можно реализовать по-разному, например, при полуавтоматическом определении может быть преимущественно, если процессор оценивания изображения сам предлагает ρ, G и т.д., оставляя при этом возможность человеку совершать их точную настройку, или в некоторых операциях даже полностью обходить оценивание и самостоятельно устанавливать значения на выходных каналах и т.д. В этих случаях яркостный процессор входит в состав кодера, чтобы человек мог видеть, какое действие фактически будет совершаться, на принимающей стороне, и корректировать другие параметры, если они лучше работают в настоящей сцене. Дисплей 1220 может быть эталонным дисплеем с высокой PB_D, например 10000 нит, что позволяет ему показывать результирующие изображения SDR, а также многие возможные результирующие изображения MDR, например, в случае PB_MDR= 3000 нит, он способен показывать яркости пикселей до 3000 нит.
Дополнительно преимущественные варианты осуществления предусматривают помимо прочего:
видеодекодер (1300) высокого динамического диапазона, содержащий:
- вход для приема входного изображения и функции (FLM) отображения яркости;
- второй вход, выполненный с возможностью приема значения порога (G);
- яркостный процессор (501) по любому из пп. 1-7, выполненный с возможностью вычисления выходного изображения, с использованием функции (FLM) отображения яркости и порога (G) для изменения яркостей пикселей входного изображения для формирования выходного изображения; и
- выход для вывода выходного изображения.
видеодекодер (1300) высокого динамического диапазона, содержащий яркостный процессор (501) согласно любому из предложенных вариантов осуществления яркостного процессора;
способ обработки яркости для вычисления выходной яркости пикселя выходного изображения (Im_LDR; Im3000nit), имеющего второй динамический диапазон яркости, характеризуемый второй пиковой светлотой (PB_LDR; PB_MDR) из входной яркости пространственно совмещенного пикселя входного изображения (MAST_HDR), имеющего первый динамический диапазон яркости, характеризуемый первой пиковой светлотой (PB_HDR), содержащий:
- вычисление коэффициента (gL) умножения, который является функцией входной яркости и функцией (FLM) отображения яркости;
- вычисление значения (V) интенсивности, которое является максимальным из трех красной, зеленой и синей цветовых компонент цвета пикселя входного изображения, причем эти компоненты являются либо линейными красной, зеленой и синей цветовыми компонентами, либо степенью этих линейных красной, зеленой и синей цветовых компонент;
- вычисление меры (T) переполнения, указывающей, насколько близко к верхней границе гаммы располагается выходная яркость;
- определение альтернативного коэффициента усиления (F1(gL)) в случае, когда мера переполнения превышает порог (G), и поддержание исходного коэффициента усиления в противном случае, и вывод одного из них в качестве окончательного коэффициента усиления (gF); и
- умножение входного цвета (R’G’B’_nrm) на окончательный коэффициент усиления (gF) для получения выходного цвета (R’G’B’_HDR), имеющего выходную яркость.
Способ обработки яркости для вычисления выходной яркости пикселя выходного изображения (Im_LDR; Im3000nit), имеющего второй динамический диапазон яркости, характеризуемый второй пиковой светлотой (PB_LDR; PB_MDR) из входной яркости пространственно совмещенного пикселя входного изображения (MAST_HDR), имеющего первый динамический диапазон яркости, характеризуемый первой пиковой светлотой (PB_HDR), содержащий:
- вычисление коэффициента (gL) умножения, причем коэффициент умножения задан для входной яркости любого входного цвета пикселя изображения входного изображения на основании функции (FLM) отображения яркости, указывающей, как регулировать входную яркость для достижения промежуточной выходной яркости, путем вычисления коэффициента умножения посредством деления выхода функции отображения яркости для входной яркости на эту входную яркость: gL=FLM(L)/L;
- вычисление меры (T) переполнения, указывающей, насколько выше верхней границы гаммы при цветности входного цвета располагается промежуточная выходная яркость, причем промежуточная выходная яркость получается в результате применения коэффициента (gL) умножения к входному цвету;
- определение более низкого альтернативного коэффициента усиления (F1(gL)) в случае, когда мера переполнения превышает порог (G), и поддержание исходного коэффициента усиления в противном случае, и вывод одного из них в качестве окончательного коэффициента усиления (gF); и
- умножение входного цвета (R’G’B’_nrm) на окончательный коэффициент усиления (gF) для получения выходного цвета (R’G’B’_HDR), имеющего выходную яркость.
Способ обработки яркости, содержащий прием от создателя контента по любой соединенной сети по меньшей мере одного из предложенных параметров, а именно: a) порога (G), выше какого начинается обработка переопределения, и где переопределенные цвета должны вдавливаться в выходную гамму, b) параметрической кодификации формы конкретной функции (FADAP), необходимой для определения коэффициента g (или любого ее эквивалента, например, функции значения V интенсивности), c) параметра (Vmx) отсечения, который все же допускает некоторую величину отсечения для наиболее нарушающих цветов, т.е. цветов, которые находятся на максимальном удалении над вершиной гаммы и которые, следовательно, труднее всего повторно отображать внутрь гаммы, и d) значения (ρ) коэффициента, который допускает спецификацию разделения на две частичных стратегии повторного отображения, одна из которых повторно вычисляет яркости пикселей, и другая повторно вычисляет насыщенности пикселей, и применения такого по меньшей мере одного параметра при вычислении яркости.
Сигнал изображения HDR, содержащий:
- набор, содержащий цвета пикселей в количестве, равном ширине изображения, умноженной на высоту изображения;
- по меньшей мере одну функцию отображения яркости, задающую, как вычислять из яркости цвета пикселя выходную яркость, и по меньшей мере один из следующих параметров: a) порога (G), b) параметра (Vmx) отсечения и c) значения (ρ) коэффициента;
Сигнал изображения HDR, содержащий:
- набор, содержащий цвета пикселей в количестве, равном ширине изображения, умноженной на высоту изображения;
- по меньшей мере одну функцию отображения яркости, задающую, как вычислять из яркости цвета пикселя выходную яркость, и дополнительно содержащий функцию (FADAP).
Очевидно, что эти сигналы позволяют реализовать изобретение в таких вариантах осуществления, где значение, например, G играет главную роль в предстоящем конкретном повторном отображении яркости. Смысловое значение, формат, уникальная идентифицируемость таких метаданных не подлежат детальному раскрытию в описании изобретения, поскольку специалисту нетрудно понять, что правильная работа полной цепи (сигнал лишь образует соединение между устройствами или способами создания и потребления) обычно реализуется путем надлежащей стандартизации метаданных, например, с заполнителями, согласованными с органом стандартизации, например ETSI, и благодаря тому, что создающее устройство заботится о том, чтобы приемное устройство понимало формат, например, передавая в заголовке, что сигнал передается в формате SL_HDRxyz, установленном ETSI, и т.д.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Эти и другие аспекты способа и устройства согласно изобретению явствуют из и будут пояснены со ссылкой на реализации и варианты осуществления, описанные ниже, и со ссылкой на прилагаемые чертежи, которые служат лишь неограничительными конкретными иллюстративными примерами более общих принципов, и где штрихи используются для указания, что компонента является необязательной, компоненты без штрихов не обязательно являются важными. Штрихи также можно использовать для указания, что элементы, которые, согласно объяснению, важны, но скрыты внутри объекта, или для нематериальных вещей, например, выделений объектов/участков (и как они могут быть показаны на дисплее).
В чертежах:
фиг. 1 схематически иллюстрирует несколько типичных цветовых преобразований, которые происходят при оптимальном отображении изображения высокого динамического диапазона в соответствующее оптимально градуированное по цвету и аналогично выглядящее (аналогично по желанию и допустимое с учетом различий в первом и втором динамических диапазонах DR_1 соотв. DR_2) изображение более низкого динамического диапазона, например, изображение стандартного динамического диапазона с пиковой светлотой 100 нит, которое в случае обратимости (режим 2) также будет соответствовать отображению принятого изображения SDR, которое фактически кодирует сцену HDR, в реконструированное изображение HDR этой сцены;
фиг. 2 схематически иллюстрирует пример вида со спутника технологии для кодирования изображений высокого динамического диапазона, т.е. изображений, способных иметь яркости по меньшей мере обычно 700 нит (т.е. по меньшей мере 7-кратную PB_C изображения SDR) или более (обычно 1000 нит или более), которую заявитель недавно разработал, которая может фактически передавать изображение(я) HDR как изображение SDR плюс метаданные, кодирующие функции цветового преобразования, содержащие по меньшей мере надлежащее определенное преобразование яркости для цветов пикселей, подлежащее использованию декодером для преобразования принятого(ых) изображения(й) SDR в изображение(я) HDR, которые являются точной реконструкцией исходного(ых) главного(ых) изображения(ий) HDR, созданного(ых) на стороне создания изображения;
фиг. 3 демонстрирует, как обычно происходит изменение только яркости (т.е. без нежелательных изменений цветности) преобразований динамического диапазона, происходящее при таком декодировании (или кодировании) и обработке HDR, например, при определении, что изображение имеет более низкий динамический диапазон, чем входное изображение, как показано в теоретическом цветовом пространстве, с плоскостью цветности и ортогональной осью L яркости;
фиг. 4 схематически поясняет, как ведут себя цвета и цветовая обработка в другом виде цветового пространства (с другой геометрией), причем пространство является типичным пространством кодирования цветов видео: YCbCr (где Y в принципе может быть линейной яркостью L, или нелинейной люмой Y’ с γ 2,0, или даже какой-то другой люмой, заданной посредством другой OETF, например, люмой Y'' на основе PQ).
Фиг. 5 (не призванная быть ограничением) демонстрирует более детализированный пример того, как заявитель обычно предпочитает осуществлять цветовое преобразование блока 202 или 208 на фиг. 2;
фиг. 6 демонстрирует универсальное объяснение верхнего уровня основного аспекта, который настоящее изобретение добавляет в обработку яркости систем, например, показанных на фиг. 2 и 5;
фиг. 7 частично демонстрирует, как будет вести себя такая система, в частности, показанная на фиг. 5 без корректировочных элементов, показанных на фиг. 6, в цветовом пространстве цветности-яркости;
фиг. 8 демонстрирует поведение усовершенствованного варианта осуществления, который решает проблему корректировочного отображения вблизи вершины цветовой гаммы выходного цветового пространств частично посредством операции снижения насыщенности;
фиг. 9 в целом и схематически демонстрирует пример яркостного процессора, который является частью цветового процессора, также имеющего процессор насыщенности;
фиг. 10 схематически демонстрирует некоторые примеры определения стратегии корректировочного отображения цвета для цветов в верхней части цветовой гаммы, и соответствующие функции на основании значения V интенсивности, заданного как максимальная из красной, зеленой и синей компоненты цвета, которое, согласно настоящим принципам, может быть сформулировано как соответствующий коэффициент gF усиления, в частности, которое может быть результирующим коэффициентом усиления, отличающимся от начального коэффициента усиления, только для цветов вблизи вершины гаммы;
фиг. 11 демонстрирует пользовательский интерфейс, позволяющий человеку-градуировщику на стороне создания контента указывать несколько простых, но мощных параметров, приблизительно предписывающих или в точности указывающих яркость и, в общем случае, цветовую обработку светлых цветов вблизи вершины гаммы яркостным процессором принимающей стороны по любому из вариантов согласно принципам настоящего изобретения; и
фиг. 12 схематически демонстрирует пример возможных автоматического, полуавтоматического или ручного кодеров, которые дают параметры, необходимые для разновидностей яркостного процессора стороны декодирования согласно предложенным вариантам осуществления.
Фиг. 13 поясняет декодер режима 2 согласно принципам настоящего изобретения, соответствующий кодеру, показанному фиг. 9.
ПОДРОБНОЕ ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
Теперь сосредоточимся в объяснении различных вариантов осуществления на яркостном процессоре (501) показанном на фиг. 5, который перерисован в более развернутой конфигурации для пояснения новых принципов настоящего изобретения на фиг. 6.
Во-первых, хотя объяснение исходит из того, что обработка производится в отношении линейной яркости, т.е. яркость L входит и выходит (L_out), несмотря на то, что внутри этой ветви обработка может преобразовывать в другую область люмы, например PQ, то же самое также может происходить в других областях люмы, например, обычно в отношении классической люмы по Rec. 709, т.е. люмы Y’, равной sqrt(L) (т.е. отображение яркости преобразования динамический диапазон блоком 512 отображения яркости в таком сценарии может быть напрямую указано как Y’_out=FLM*(Y’_in)).
Однако в такой ситуации нужно гарантировать, что вместо люмы непостоянной яркости вычисляется соответствующая люма постоянной яркости (убедиться, что обработка яркости ведет себя правильно как линейная обработка яркости, несмотря на то, что она реализована в области квадратного корня, и неверная оценка яркости в неверной люме непостоянной яркости не приводит к ошибкам типа флуоресцирующих красных мундиров и т.д.).
Напомним, что люма стандартно определяется как Y’=a*sqrt(R)+b*sqrt(G)+c*sqrt(B), тогда как люма постоянной яркости определяется как Y’_CL=sqrt(L), где L=a*R+b*G+c*B.
Обычно яркостный процессор видеодекодера получает входной сигнал YCbCr, следовательно, естественные выведенные из него цветовые компоненты являются нелинейными R’G’B’. Один способ вывода люмы постоянной яркости состоит в том, что преобразователь 502 цветового пространства сначала вычисляет линейные компоненты RGB путем применения надлежащей EOTF (т.е. R=EOTF_rec709(R’)=power(R’;2) и т.д.), затем вычисляет L, и затем Y’_CL=sqrt(L).
Поскольку площадь оборудования или стоимость (/мощность) обработки не является неограниченной, могут существовать упрощенные варианты вычисления, например:
Sqrt(power(K;2)+power(L;2) = приблизительно max(K, L) если max(K, L)>4*min(K, L)
и=приблизительно (7/8)*max(K, L)+(1/2)*max(K, L) в противном случае,
для любых чисел K и L.
Следовательно, это можно использовать для вычисления Y_CL напрямую из значений R’G’B’.
Хотя V является величиной, которая растет с яркостью L (или в представлении квадратного корня с люмой Y’), она не тривиально связана с ней, но имеет полезное свойство, состоящее в том, что является мерой близости к верхней границе гаммы, и в частности, что все цвета на верхней границе гаммы имеют максимальное значение V интенсивности=1,0 (выходящее за пределы этой границы в случае осветления, наибольшая из цветовых компонент, например, синяя должна выйти за пределы своего нормализованного максимума, например B=1,1, что математически возможно, но физически невозможно). Компоненты, пронумерованные в 500-х, аналогичны показанным на фиг. 5, т.е. помимо прочего они производят “нормальное” осветление цвета, т.е. как указано в функции FLM обработки яркости, и при этом механизм обработки верхней области гаммы определения коэффициента g еще не работает.
Предположим, что яркостный процессор на фиг. 6 входит в состав декодера HDR, который получает HDR PB_C 5000 нит, кодированный цветами пикселей YCbCr в качестве ввода (если они кодируются на основе PQ, то преобразователь производит правильные математические расчеты для преобразования в яркость, и линейную RGB в примере), и выводит, например, изображение MDR 900 нит и его яркости. Значение V интенсивности также вычисляется и будет пояснено на примере, где используются линейные цветовые компоненты, следовательно, V=max(R, G,B).
Обратим внимание на то, что, автор изобретения установил, что, хотя предполагается применять FLM отображения, определенную стороной создания, к яркости L цвета пикселя (или цветовая обработка эквивалентного характера фактически осуществляется, как умножение линейных компонентов RGB на один и тот же коэффициент g изменения яркости gL), его интересно применять к значению V интенсивности, поскольку затем с каждой цветностью цвета можно видеть, будет ли он отображаться над границей гаммы.
Это можно видеть на фиг. 7. Отображение яркости предполагается для отображения цветов на основании их яркости, независимо от их хроматичностей, что позволяет проверять его для ахроматических цветов на оси яркости. Рассмотрим некоторый цвет средней яркости Col_in входного изображения HDR, который осветляется до Col_out (например для создания изображения SDR или MDR) поскольку все цвета требуют осветления, в особенности более темные, чтобы можно было приемлемо видеть, что происходит в фильме в рендеризациях более низкого динамического диапазона, но эти осветленный цвета будут толкать вверх также все более яркие цвета, вследствие необходимости поддержания соотношения яркостей в двух градуировках, т.е. между выходным изображением и входным изображением.
Это осветление не создает проблем для ахроматических серых цветов, поскольку Col_out выглядит по прежнему находящейся глубоко внутри цветовой гаммы. Однако, если провести горизонтальные линии равной яркости, можно увидеть, что отображение синего цвета ColBluH той же яркости, что и серые цвета HDR Col_in в его эквивалентный ColBluL для LDR приведет к тому, что он окажется над цветовой гаммой, в связи с чем придется что-то изменить в обработке, или отсекатель будет автоматически обрезать по меньшей мере одну цветовую компоненту до 1,0, что обычно приводит к значительным ошибкам цветности в том числе потенциально серьезным ошибкам оттенка.
Однако, проводя линии равной V (толстыми штрихами) можно видеть, что в этой ситуации входной синий цвет ColBluH все еще находится глубоко в гамме (например, V=0,8), но выходной цвет ColBluL имеет, например, V=1,2 следовательно, превышает 1,0.
Обратим внимание на то, что линейная мера V ведет себя аналогично пропорционально, как L, что позволяет преобразовывать ее с помощью того же коэффициента g:
Если R_out=gL*R_in; G_out=gL*G_in; B_out=gL*B_in, то max(R_out, G_out, B_out)=gL*V_in.
Таким образом, критерием для контроля фактически является значение gL * (входное) значение V, вычисляемое блоком 502 на фиг. 6, и это произведение вычисляется в иллюстративном варианте осуществления умножителем 602, и результат именуется тестовым значением T.
Затем блок 603 изменения коэффициента усиления использует это значение в тесте для изменения начального значения коэффициента усиления, выведенного из градуировочной функции FLM, которая локально определяется приемником, или принимается от стороны создания контента обычно совместно с фактическими принятыми изображениями согласно некоторому формализму кодирования метаданных изображения.
В простейшем варианте осуществления порог G равен 1,0 (например, жестко зафиксирован в яркостном процессоре).
Тогда, если цвета отображаются в T=gL(цвет)*V(цвет)<= 1,0, они фактически отображаются в гамме, и проблемы не существует, следовательно, отображение не ухудшается, и начальные коэффициенты усиления gL без изменения становятся окончательными коэффициентами gF усиления для осуществления фактического изменения цвета HDR в MDR на компонентах RGB. Заметим, что (цвет) добавлен, чтобы подчеркнуть, что и вычисленный коэффициент gL, и значение V зависят от значений цветовых компонент текущего цвета пикселя.
Однако если T>G=1,0, то возникает проблема переполнения гаммы, например, когда gL*V равно 1,8.
В этом случае нужно применять функцию F1(gL), чтобы отображенный цвет (и одновременно его значение V) гарантированно отображался внутри гаммы, по меньшей мере, для большинства цветов (возможно кроме тех нескольких цветов, для которых, если значение Vmx определено, все же разрешено отсечение).
Простая функция, которая может определяться декодером (например, фиксированным в его программном обеспечении или схеме яркостного процессора) может иметь следующий вид для каждого возможного из gL отображения гаммы (цвет) * V(цвет):
Если T>G=1,0, то gF=gL*(1/T) [Ур. 3].
В этом случае действительно можно видеть, что если для некоторого цвета значение T при отображении с исходным коэффициентом gL для выходного цвета равно, например 1,3, то отображение того же входного цвета (и его значения V) с другим gF, который равен gL/1,3, будет отображаться в точности в единицу (и применение gF/1,8 для другого цвета, который отображается в 1,8, приведет к тому же результату, и т.д.).
Конечно, несмотря на сохранение цветности, это довольно сырая стратегия (но подходящая для начала объяснения), но все же пригдна в некоторых ситуациях, но не настолько оптимально работает на более критичных разновидносях изображения HDR.
Для этого может быть преимущественно использовать более сложную стратегию отображения, которая все же сохраняет дифференцируемость исходных различий в яркости для всех цветов, которые первоначально отображались выше границы гаммы, вводя (по меньшей мере) пороговое значение G. Это пороговое значение опять же может определяться яркостным процессором принимающей стороны или, преимущественно, приниматься и передаваться на блок 603 изменения коэффициента усиления средством (689) приема данных, выполненным с возможностью приема порога (G) от создателя контента по сети (690), которая, как очевидно специалисту в данной области, является любой существующей или перспективной системой доставки изображения или данных, например, каналом спутникового телевидения, интернетом, или для заранее установленного упакованного хранилища значения G для последовательных видеоизображений могут храниться даже, например, на диске blu-ray для обращения к ним с помощью устройства чтения BD и т.д.
Как можно реализовать различные стратегии/функции переопределения gL, пояснено со ссылкой на фиг. 10. На фиг. 10A показан пример, где порог G задан равным 0,9, a линейное отображение до Vmx. Фактически, может существовать несколько цветов (возможно, лишь десятки пикселей), имеющих gL * значение V, которое становится выше Vmx вплоть до наивысшего в изображении или цепочке последовательных изображений VmaxSCN, но они могут подвергаться жесткому отсечению до цвета на вершине границы гаммы с той же цветностью, что и входной цвет HDR.
T_in это значение V отображенного цвета с начальным коэффициентом gL, и окончательное отображение должно иметь gF, который дает значения T_out до 1,0, что соответствует границе гаммы. Ниже 0,9 коэффициент усиления остается неизменным, следовательно значение T_out также будет равно значению T_in (SEGPSS). Повторное отображение между G и Vmx, может быть сформулировано по-разному, и может представлять собой просто линейный сегмент (SEGADPT). Коэффициент A ослабления можно легко вычислить из представления в этой системе координат, например, если цвет 2,5 должен отображаться в 1,0, нужно разделить gL на 2,5, и т.д.
Пример уравнения для вычисления ослабления A (полного ослабления только в направлении яркости) имеет вид:
A(T)= (T>G?) 1/{1+[(Vmx-1)/(Vmx-G)]*(T-G)}: 1 [Ур. 4]
Можно видеть, что если T=Vmx, то A(T) становится 1/Vmx, и т.д.
Фиг. 10B демонстрирует ситуацию, в которой часть проблемы "над гаммой" решается путем снижения насыщенности. В этом случае, цвета, первоначально отображающиеся в Vmx, может отображаться в y.x>1,0, например 1,9 (вероятно, не слишком далеко выше границы гаммы, чтобы не приходилось слишком сильно снижать насыщенность), поскольку этот остаток переполнения показан в направлении насыщенности.
Это показано на графике цветовой гаммы на фиг. 8. Полное ослабление A будет приводить отображенный цвет в границы гаммы. Однако, задавая параметр ρ вышеописанным образом, его можно отображать в позицию между ними, и затем горизонтально сдвигать к ColOut путем снижения насыщенности.
Параметр ρ может взвешиваться до оптимальной величины между вредным эффектом затемнения и вредным эффектом снижения насыщенности, например, когда человек-градуировщик устанавливает ползунок 1101 в его предпочтительной позиции между 0 и 1. Некоторые альтернативные варианты осуществления могут иметь фиксированную настройку, например, ρ =1/2 и т.д.
Мультипликативный параметр, необходимый при снижении насыщенности, можно вычислять следующим образом:
S=(Vinterm*Arem-Y)/(Vinterm-Y)=(1-Y)/(Vinterm-Y) [Ур. 5],
где Vinterm - высота, все еще выше границы гаммы после осуществления части гашение яркости, и Y - например, промежуточная яркость в линейном примере (т.е. Li на фиг. 9). Конечно, при желании можно использовать более сложные стратегии снижения насыщенности (с непостоянным S, т.е. снижение насыщенности, которое может изменяться в цветовом пространстве), в особенности, если они передаются принимающей стороне (по меньшей мере обратимые системы наподобие передачи HDR в SDR режима 2 должны знать все для реконструкции).
Пример архитектуры обработки (и вариант осуществления усовершенствованного яркостного процессора, подключенного к блоку насыщенности) в кодере, способной реализовать такую стратегию коррекции, показан на фиг. 9. В принципе, можно по выбору осуществлять обработку насыщенности и обработку яркости в противоположном порядке по желанию, но для выбранного порядка, декодер должен инвертировать порядок (поэтому, если кодер сначала отображает яркость и затем снижает насыщенность, обращенный декодер сначала будет производить соответствующее восстановление насыщенности и затем отображение яркости). Заметим, что если известны Vinterm и Y, то известен S (для снижения насыщенности или для восстановления насыщенности), если известен Arem, который, например, передается от стороны создания посредством параметра ρ.
Коэффициент ослабления A(T) на стороне декодера можно вычислять следующим образом:
A(T)= (T>G)? {1-[(Vmx-1)/(Vmx-G)]*G}/{1-[(Vmx-1)/(Vmx-G)]*T}:1 [Ур. 6]
Теперь вычислитель 903 частичного отображения определяет коэффициент Arho ослабления для умножения на gL в умножителе 902 для получения надлежащего окончательного gF для частичного гашения яркости, осуществляемого умножителем 910 на RGB трио совместно с яркостью, которая должна стать промежуточной яркостью Li для дальнейшего этапа снижения насыщенности, осуществляемого блоком 911 снижения насыщенности. Блок 901 определения коэффициента насыщения может определять необходимый коэффициент насыщения S(V, Y,Arem), например, согласно Ур. 5, для его применения процессором 911 насыщенности, при снижении насыщенности с сохранением яркости согласно уравнениям 7:
Ro=Li+S*(Ri-Li); Go=Li+S*(Gi-Li); Bo=Li+S*(Bi-Li).
Таким образом, эти выходные цветовые компоненты являются правильными цветовыми компонентами, например, для цвета SDR (или цвета MDR), выведенного из цветов входного изображения HDR.
Очевидно, что при снижении градуировки одновременно на кодере и декодере (т.е. в ситуации режима i, в которой фактически само изображение HDR передается на приемники, обычно с нелинейными значениями R''G''B'', подвергнутыми PQ-OETF, или поскольку обычно кодирование видеосигнала сопряжено со стандартным, например HEVC, сжатием соответствующих цветовых компонент YCbCr) кодер и декодер будут преобразовывать цвета в одном и том же направлении снижения градуировки, из-за чего на декодере не будет происходить обращения порядка цветовой обработки (в этом случае можно представить, что кодер осуществляет преобразование только для проверки дальнейшего поведения декодера, с выбранными вариантами выбора параметров).
Однако при обратимом кодировании изображения или видео HDR, т.е. кодировании изображений в режиме 2, в качестве изображений SDR, где кодер создает их путем снижения градуировки, декодер воссоздает близкое приближение главных изображений HDR путем повышения градуировки, т.е. в противоположном направлении.
Затем декодер кое-что изменяет, как объяснено со ссылкой на фиг. 13.
Заметим, что противоположный порядок насыщения (911) и осветления (умножителем 910), которое теперь производится с помощью 1/gF, но он является тем же частичным коэффициентом g, с которым начальный цвет ColBluL над гаммой снижается к промежуточной яркости окончательного цвета ColOut, которая будет промежуточным результатом подъема яркости снова с тем же самым коэффициентом. Теперь используется суффикс s для указания, что в этом сценарии входные цвета RsGsBs и яркость Ls являются цветами SDR, и выходные цвета RoH, GoH, BoH относятся к реконструированному изображению HDR (согласно новой оптимальной обработке критичных цветов вблизи вершины гаммы). Заметим также, дополнительный умножитель 1301, поскольку промежуточная позиция яркости не является начальной позицией, и теперь используется в тракте определения коэффициента g.
Фиг. 11 демонстрирует пример пользовательского интерфейса, который человек-градуировщик может использовать для создания параметров, которые могут представлять собой просто три значения G, ρ и Vmx.
Например, ρ может устанавливаться ползунком, например, автомат полуавтоматического способа определил, что настройка 0,25 была оптимальна, но пользователю больше нравится 0,2 или 0,3.
В его распоряжении также имеются еще два ползунка, 1103 соотв. 1102 для установления Vmx и значения G, например, на графике цветовой гаммы. Также может существовать вид 1110 обрабатываемого изображения, например, представляющий изображение сцены HDR, изображаемого в кадре из последовательных видеоизображений, где могут существовать автоматически генерируемые указатели 1111 для быстрого привлечения внимания градуировщика. Например, автомат вычислил, что на этом участке (освещенных солнцем облаков) происходит значительное снижение контрастности текстуры (возможно даже жесткое отсечение), и пользовательский интерфейс может, например, показывать мигающую красную границу вокруг этого участка.
Фиг. 12 демонстрирует пример системы кодирования с кодером 1201 (который может не только кодировать изображения HDR согласно любому ранее описанному режиму, но и определять выход настоящих новых параметров ρ, G, Vmx, или функции для переопределения на принимающей стороне коэффициентов g), на которой градуировщик 1204 цвета, создающий контент, может производить свою работу градуировки, по меньшей мере определение одного параметра согласно настоящему изобретению, например, G или ρ. Он может проверять на дисплее 1220, что происходит, поскольку яркостный процессор 501 применяет обработку (т.е. прямое снижение градуировки в режиме 1, и обычно всю цепь кодирования+декодирования, содержащую обращенное повышение градуировки в режиме 2) для показа результата выбора градуировщика, например ρ, посредством пользовательского интерфейса 1203, который обычно является панелью градуировки, и программного обеспечения, выделяющего, например, изменение ρ шаровому манипулятору. Изображения поступают из любого хранилища 1202 изображений, например, жесткого диска на сервере и т.д., или в ряде случаев даже потоковой передачи реального времени. Процессор 1210 оценивания изображения может проводить все виды анализа изображения для формулирования предложений ρ, G и т.д., и в автоматических вариантах осуществления это будет единственный блок, определяющий эти параметры.
Видеокодер (1201) высокого динамического диапазона может использовать яркостный процессор для помощи человеку-градуировщику цвета в определении подходящих значений для различных параметров, управляющих любым вариантом осуществления этого алгоритма изменения яркости (например, когда содержится в декодере, принимающем эти параметры в качестве параметров управления в метаданных по некоторому соединению данных или видео). Для передачи любых таких параметров управления видеокодер HDR может содержать:
- вход для приема входного изображения от источника (1202) изображения;
- кодер для кодирования входного изображения в качестве выходного изображения и по меньшей мере одна функция (F_Lt) отображения яркости;
- процессор (1210) оценивания изображения, выполненный с возможностью анализа цветовых свойств изображения видео, для определения по меньшей мере одного из параметров, а именно: a) порога (G), выше которого следует использовать некоторый альтернативный окончательный коэффициент gF усиления, и ниже которого исходный коэффициент усиления, соответствующий функции FLM отображения яркости, подходящей для повторной градуировки динамического диапазона текущего изображения с учетом особенностей распределения яркости его объектов или пикселей, b) функции (FADAP), пригодной для определения альтернативного коэффициента усиления для более светлых цветов обрабатываемого изображения, c) параметра (Vmx) отсечения, указывающего, от какой входной яркости (после повторной градуировки яркости) разрешено отсечение, но отсечение, сохраняющее цветность (в случае, когда такой эффект желателен) и d) значения (ρ) коэффициента, определяющего разделение интервала коррекции к гамме, обрабатываемой путем затемнения, в отличие от снижения насыщенности, например, 40% расстояния яркости, оставшегося после применения окончательного gF, и подлежащего обработке путем снижения насыщенности, чтобы по меньшей мере гарантировать сохранение оттенка входного цвета пикселя, и при этом кодер выполнен с возможностью вывода в качестве метаданных этого по меньшей мере одного из параметров. Специалист может понять из всех настоящих принципов, как аналогично, например, определению подходящего значения G, выше которого нужно применять некоторую коррекцию к исходному изменению яркости, определенному коэффициентом g на основе FLM (либо полностью сохраняющую оттенок, либо с некоторым отсечением оставшейся ошибки оттенка, но обычно малую и гораздо меньшую, чем в отсутствие применения настоящих принципов коррекции над гаммой), например, человеком, смотрящим, насколько может ухудшаться освещенное солнцем вечернее небо с облаками в установленном порядке (например, согласно заранее согласованной простой стратегии, в отношении которой сторона кодирования знает, что сторона декодирования будет применять в случае лучшая FADAP не передается), также можно определять другие параметры. Например, человек-градуировщик цвета может использовать UI для рисования формы верхней части функции FADAP для использования для определения значений gF для наиболее светлых цветов, чтобы, например, не затемнять слишком сильно по меньшей мере некоторые цвета изображения или не снижать по меньшей мере некоторые яркости, которые имеют некоторые пиксели в некоторых частях облаков, что могло бы привести к слишком сильному ухудшению видимой текстуры такого облака и т.д. Также автомат может принимать решение на применение некоторого отсечения, на основании вычисление, например, контрастностей по различным наборам соединенных пикселей на участке, оцененном как интересный или критичный, например, упомянутых облаках (которые можно идентифицировать на основании, например, других мер текстуры, например, низкой меры бизнеса, которая указывает, что плавные градиенты в небе могут легче показывать артефакты, чем области высокочастотной многоцветной текстуры, например, клумбы, наблюдаемой издалека, и т.д.). Однако в случае, когда кодер использует только алгоритмы автоматического анализа изображения, ему не нужно содержать яркостный процессор, чтобы фактически показывать любой выбранный результат человеку, создающему видеоконтент.
Аналогично, способ обработки яркости может содержать прием от создателя контента по любой соединенной сети (сети, очевидно пригодной в самом широком смысле) по меньшей мере один из следующих параметров: a) порога (G), функции (FADAP), параметра (Vmx) отсечения и значения (ρ) коэффициента по отдельности или в любой комбинации параметров в зависимости от потребностей конкретного варианта осуществления изменения яркости, и применение такого по меньшей мере одного параметра при вычислении яркости.
Алгоритмические компоненты, раскрытые в этом тексте можно (полностью или частично) реализовать на практике в виде оборудования (например, частей специализированных IC) или в виде программного обеспечения, выполняющегося на особом цифровом сигнальном процессоре, или универсальном процессоре и т.д.
Специалисту в данной области техники будет понятно из нашего представления, какие компоненты могут быть необязательными усовершенствованиями и могут быть реализованы совместно с другими компонентами, и как (необязательные) этапы способов соответствуют соответствующим средствам устройств, и наоборот. Слово “устройство” в этой заявке используется в самом широком смысле, а именно, как группа средств, позволяющих достигать конкретной цели, и поэтому может, например, быть (малой схемной частью) IC, или специальным приспособлением (например, приспособлением с дисплеем), или частью сетевой системы, и т.д. “Конфигурация” также подлежит использованию в самом широком смысле, поэтому она может содержать, помимо прочего, единое устройство, часть устройства, совокупность (частей) взаимодействующих устройств, и т.д.
Понятие "компьютерный программный продукт" следует понимать как охватывающее любую физическую реализацию совокупности команд, позволяющих универсальному или специального назначения процессору, после последовательности этапов загрузки (которая может включать в себя промежуточные этапы преобразования, например, перевод на промежуточный язык, и окончательный язык процессора) для ввода команд в процессор, и для выполнения любой из характеристических функций изобретения. В частности, компьютерный программный продукт может быть реализован как данные на носителе, например, диске или ленте, данные, присутствующие в памяти, данные, передаваемые через сетевое соединение, проводное или беспроводное, или программный код на бумаге. Помимо программного кода, характеристические данные, необходимые для программы, также можно реализовать в виде компьютерного программного продукта.
Некоторые из этапов, необходимых для выполнения способа, могут уже присутствовать в функциональных возможностях процессора вместо описанных в компьютерном программном продукте, например, этапы ввода и вывода данных.
Следует отметить, что вышеупомянутые варианты осуществления иллюстрируют, но не ограничивают изобретение. Когда специалист в данной области техники может легко реализовать отображение представленных примеров в другие участки формулы изобретения, мы для краткости не раскрыли полностью все эти варианты. Помимо комбинаций элементов изобретения, скомбинированных в формуле изобретения, возможны другие комбинации элементов. Любую комбинацию элементов можно реализовать в едином специальном элементе.
Любая ссылочная позиция в скобках в формуле изобретения не призвана ограничивать формулу изобретения. Слово “содержащий” не исключает наличия элементов или аспектов, не перечисленных в формуле изобретения. Употребление названия элемента в единственном числе не исключает наличия множества таких элементов.
название | год | авторы | номер документа |
---|---|---|---|
ОПТИМИЗАЦИЯ ИЗОБРАЖЕНИЙ ВЫСОКОГО ДИНАМИЧЕСКОГО ДИАПАЗОНА ДЛЯ КОНКРЕТНЫХ ДИСПЛЕЕВ | 2016 |
|
RU2721762C2 |
ОБРАБОТКА МНОЖЕСТВЕННЫХ ИСТОЧНИКОВ ИЗОБРАЖЕНИЯ HDR | 2016 |
|
RU2723676C2 |
КОДИРОВАНИЕ И ДЕКОДИРОВАНИЕ HDR ВИДЕО | 2017 |
|
RU2728516C2 |
ОБРАБОТКА ИЗОБРАЖЕНИЯ С ИЗМЕНЕНИЕМ СТЕПЕНИ ЯРКОСТИ ПРИ ПОСТОЯНСТВЕ ЦВЕТА | 2015 |
|
RU2707728C2 |
МНОГОДИАПАЗОННОЕ КОДИРОВАНИЕ ВИДЕО С РАСШИРЕННЫМ ДИНАМИЧЕСКИМ ДИАПАЗОНОМ | 2019 |
|
RU2790178C2 |
СИСТЕМА ДЛЯ ОБРАБОТКИ НЕСКОЛЬКИХ HDR-ВИДЕОФОРМАТОВ | 2019 |
|
RU2783591C2 |
УЛУЧШЕННЫЕ СПОСОБЫ И УСТРОЙСТВА КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ HDR ИЗОБРАЖЕНИЯ | 2014 |
|
RU2633128C2 |
СПОСОБЫ И УСТРОЙСТВА ДЛЯ КОДИРОВАНИЯ HDR-ИЗОБРАЖЕНИЙ | 2015 |
|
RU2686642C2 |
СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ ВЫСОКОГО ДИНАМИЧЕСКОГО ДИАПАЗОНА, СООТВЕТСТВУЮЩИЙ СПОСОБ ДЕКОДИРОВАНИЯ И УСТРОЙСТВО ДЕКОДИРОВАНИЯ | 2017 |
|
RU2737507C2 |
ПРОСТОЕ, НО ГИБКОЕ КОДИРОВАНИЕ ДИНАМИЧЕСКОГО ДИАПАЗОНА | 2016 |
|
RU2720446C2 |
Изобретение относится к способам и устройствам для кодирования изображений высокого динамического диапазона и, в частности, изменения яркостей пикселей изображения для преобразования изображения к другому динамическому диапазону яркости. Технический результат заключается в возможности лучше определять изображение с другим динамическим диапазоном яркости, в частности, характеризуемым другой максимальной яркостью, чем входное изображение. Настоящее изобретение предлагает несколько вариантов яркостного процессора, выполненного с возможностью вычисления выходной яркости пикселя выходного изображения, имеющего второй динамический диапазон яркости, характеризуемый второй пиковой светлотой из входной яркости пространственно совмещенного пикселя входного изображения, имеющего первый динамический диапазон яркости, характеризуемый первой пиковой светлотой. 5 н. и 8 з.п. ф-лы, 13 ил.
1. Яркостный процессор (501), выполненный с возможностью вычисления выходной яркости пикселя выходного изображения (Im_LDR; Im3000nit), имеющего второй динамический диапазон яркости, характеризуемый второй пиковой светлотой (PB_LDR; PB_MDR) из входной яркости (L) пространственно совмещенного пикселя входного изображения (MAST_HDR), имеющего первый динамический диапазон яркости, характеризуемый первой пиковой светлотой (PB_HDR), отличающийся тем, что яркостный процессор содержит:
- блок (514) вычисления коэффициента усиления, выполненный с возможностью вычисления коэффициента (gL) умножения, причем коэффициент умножения задан для входной яркости любого входного цвета пикселя изображения входного изображения на основании функции (FLM) отображения яркости, указывающей, как регулировать входную яркость, чтобы добиться соответствующей промежуточной выходной яркости, путем вычисления коэффициента умножения посредством деления выхода функции отображения яркости для входной яркости на эту входную яркость: gL=FLM(L)/L;
- вычислитель (602) переполнения, выполненный с возможностью вычисления меры (T) переполнения, указывающей, насколько выше верхней границы гаммы при цветности входного цвета располагается промежуточная выходная яркость, причем промежуточная выходная яркость получается в результате применения коэффициента (gL) умножения к соответствующим цветовым компонентам, задающим входной цвет;
- блок (603) изменения коэффициента усиления, выполненный с возможностью определения более низкого альтернативного коэффициента усиления (F1(gL)) в случае, когда мера переполнения превышает порог (G), и выполненный с возможностью поддержания коэффициента (gL) умножения в противном случае, и выполненный с возможностью вывода в качестве окончательного коэффициента усиления (gF) более низкого альтернативного коэффициента усиления (F1(gL)) в случае, когда мера переполнения превышает порог (G) или коэффициент (gL) умножения в противном случае; и
- умножитель (530) для умножения соответствующих компонентов входного цвета (R’G’B’_nrm) на окончательный коэффициент усиления (gF) для получения соответствующих компонентов выходного цвета (R’G’B’_HDR), который имеет выходную яркость.
2. Яркостный процессор (501) по п. 1, содержащий средство (689) приема данных, выполненное с возможностью приема порога (G) от создателя контента по сети (690).
3. Яркостный процессор (501) по п. 1 или 2, содержащий средство (689) приема данных, выполненное с возможностью приема функции (FADAP) для определения альтернативного коэффициента усиления от создателя контента по сети (690).
4. Яркостный процессор (501) по любому из предыдущих пунктов, содержащий средство (689) приема данных, выполненное с возможностью приема от создателя контента по сети (690) параметра (Vmx) отсечения, который указывает насколько выше верхней границы гаммы располагается цвет, причем параметр отсечения задается как максимальный из красного, зеленого и синего цветовых компонентов упомянутого цвета, указывая, что для цветовых яркостей, превышающих этот параметр отсечения, разрешено отсечение цвета с сохранением оттенка.
5. Яркостный процессор (501) по любому из предыдущих пунктов, содержащий вычислитель (903) частичного отображения, выполненный с возможностью определения первого коэффициента коррекции входного цвета к границе гаммы, которой необходимо достичь при реализуемом цвете в пределах гаммы, причем первый коэффициент коррекции подлежит обработке путем умножения на окончательный коэффициент умножения (gF), и выполненный с возможностью определения оставшегося второго коэффициента коррекции для определения коэффициента (S) насыщенности для осуществления вычисления насыщенности цвета.
6. Яркостный процессор (501) по п. 5, содержащий средство (689) приема данных, выполненное с возможностью приема значения (ρ) коэффициента от создателя контента по сети (690), который определяет первый и второй коэффициенты коррекции.
7. Яркостный процессор (501) по любому из предыдущих пунктов, в котором мера (T) переполнения вычисляется как наивысшее значение красного, зеленого и синего цветовых компонентов цвета пикселя, умноженное на коэффициент (gL) умножения.
8. Видеокодер (1201) высокого динамического диапазона, содержащий:
- вход для приема входного изображения от источника (1202) изображения;
- кодер для кодирования входного изображения в качестве выходного изображения и для кодирования по меньшей мере одной функции (F_Lt) отображения яркости; причем кодер содержит процессор (1210) оценивания изображения, выполненный с возможностью анализа цветовых свойств изображения видео, для определения порога (G), подлежащего применению яркостным процессором по п. 1, и при этом кодер выполнен с возможностью вывода этого порога (G) в качестве метаданных.
9. Система кодирования видеосигнала высокого динамического диапазона, содержащая:
- пользовательский интерфейс (1203), позволяющий человеку-градуировщику (1204) цвета указывать значение порога (G) по п. 1;
- яркостный процессор (501) по п. 1, дополнительно выполненный с возможностью приема и использования значения порога (G), указанного человеком-градуировщиком цвета, и подключенный к дисплею (1220) для отображения выходного изображения яркостного процессора; и
система кодирования видеосигнала высокого динамического диапазона дополнительно содержит кодер, выполненный с возможностью кодирования и вывода порога (G).
10. Видеодекодер (1300) высокого динамического диапазона, содержащий:
- вход для приема входного изображения и функции (FLM) отображения яркости;
- второй вход, выполненный с возможностью приема значения порога (G);
- яркостный процессор (501) по любому из пп. 1-7, выполненный с возможностью вычисления выходного изображения, с использованием функции (FLM) отображения яркости и порога (G) для изменения яркостей пикселей входного изображения для формирования выходного изображения; и
- выход для вывода выходного изображения.
11. Способ обработки яркости для вычисления выходной яркости пикселя выходного изображения (Im_LDR; Im3000nit), имеющего второй динамический диапазон яркости, характеризуемый второй пиковой светлотой (PB_LDR; PB_MDR) из входной яркости пространственно совмещенного пикселя входного изображения (MAST_HDR), имеющего первый динамический диапазон яркости, характеризуемый первой пиковой светлотой (PB_HDR), содержащий этапы, на которых:
- вычисляют коэффициент (gL) умножения, причем коэффициент умножения задан для входной яркости любого входного цвета пикселя изображения входного изображения на основании функции (FLM) отображения яркости, указывающей, как регулировать входную яркость для достижения промежуточной выходной яркости, путем вычисления коэффициента умножения посредством деления выхода функции отображения яркости для входной яркости на эту входную яркость: gL=FLM(L)/L;
- вычисляют меру (T) переполнения, указывающую, насколько выше верхней границы гаммы при цветности входного цвета располагается промежуточная выходная яркость, причем промежуточная выходная яркость получается в результате применения коэффициента (gL) умножения к соответствующим цветовым компонентам, задающим входной цвет;
- определяют более низкий альтернативный коэффициент усиления (F1(gL)) в случае, когда мера переполнения превышает порог (G), и поддерживают коэффициент (gL) умножения в противном случае, и выводят в качестве окончательного коэффициента усиления (gF) более низкий альтернативный коэффициент усиления (F1(gL)) в случае, когда мера переполнения превышает порог (G) или коэффициент (gL) умножения в противном случае; и
- умножают соответствующие компоненты входного цвета (R’G’B’_nrm) на окончательный коэффициент усиления (gF) для получения соответствующих компонентов выходного цвета (R’G’B’_HDR), который имеет выходную яркость.
12. Способ обработки яркости по п. 11, содержащий этап, на котором принимают от создателя контента по любой соединенной сети порог (G) для его применения при вычислении выходного цвета.
13. Способ обработки яркости по п. 11 или 12, содержащий этап, на котором принимают от создателя контента по любой соединенной сети функцию (FADAP) для определения альтернативного коэффициента усиления.
Многоступенчатая активно-реактивная турбина | 1924 |
|
SU2013A1 |
Автомобиль-сани, движущиеся на полозьях посредством устанавливающихся по высоте колес с шинами | 1924 |
|
SU2017A1 |
Автомобиль-сани, движущиеся на полозьях посредством устанавливающихся по высоте колес с шинами | 1924 |
|
SU2017A1 |
US 2015010059 A1, 08.01.2015. |
Авторы
Даты
2022-10-26—Публикация
2018-12-06—Подача