устойчивое интерактивное цветовое редактирование

Классы МПК:H04N11/20 преобразование способа объединения отдельных составляющих сигнала цветного изображения, например преобразование цветовых телевизионных стандартов
G06T9/00 Кодирование изображения, например из побитового к непобитовому изображению
H04N1/60 коррекция или управление цветами
Автор(ы):, ,
Патентообладатель(и):МАЙКРОСОФТ КОРПОРЕЙШН (US)
Приоритеты:
подача заявки:
2006-02-20
публикация патента:

Изобретение относится к области графического редактирования, в частности к системе и способу для преобразования цветовых пространств. Техническим результатом является обеспечение сохранения хорошо определенных цветовых составляющих при преобразовании из первого во второе цветовое пространство. Технический результат достигается тем, что цветовые составляющие помещают в кэш-память, когда они являются хорошо определенными после преобразования цветового пространства. Когда после преобразования составляющие становятся неопределенными, помещенные в кэш-память значения используют вместо использования произвольного значения по умолчанию. Получающаяся в результате система цветового редактирования является «устойчивой» в том, что она соответствует ожиданиям пользователей, ограждая их от внезапных сбоев, происходящих при использовании произвольных значений для неопределенных цветовых составляющих. 4 н. и 12 з.п. ф-лы, 6 ил. устойчивое интерактивное цветовое редактирование, патент № 2406261

устойчивое интерактивное цветовое редактирование, патент № 2406261 устойчивое интерактивное цветовое редактирование, патент № 2406261 устойчивое интерактивное цветовое редактирование, патент № 2406261 устойчивое интерактивное цветовое редактирование, патент № 2406261 устойчивое интерактивное цветовое редактирование, патент № 2406261 устойчивое интерактивное цветовое редактирование, патент № 2406261

Формула изобретения

1. Способ преобразования из первого цветового пространства во второе цветовое пространство, использующий процессор, включающий в себя

получение значений первых составляющих, относящихся к упомянутому первому цветовому пространству, при этом значения указанных первых составляющих являются красными, синими и зелеными значениями составляющих;

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

преобразование посредством процессора из упомянутого первого цветового пространства в упомянутое второе цветовое пространство для определения значений вторых составляющих, связанных с упомянутым вторым цветовым пространством; и

кэширование упомянутых однозначно определенных значений составляющих в кэш-памяти

определение, посредством процессора, равны ли упомянутые значения красной, синей и зеленой;

и, если нет, вычисление упомянутых значений оттенка, насыщенности и яркости из упомянутых значений красной, синей и зеленой; и

обновление упомянутой кэш-памяти вычисленными значениями оттенка, насыщенности и яркости.

2. Способ по п.1, в котором, если упомянутые значения красной, синей и зеленой являются равными, упомянутый способ дополнительно включает в себя определение, является ли черным цвет, определенный значениями красной, синей и зеленой; и, если нет, вычисление значения яркости и обновление упомянутой кэш-памяти упомянутым расчетным значением яркости; и, если так, установление яркости в нуль без обновления упомянутой кэш-памяти.

3. Способ по п.1, дополнительно включающий в себя использование одного из упомянутых однозначно определенных значений составляющих в упомянутой кэш-памяти, когда одно из упомянутых значений первых составляющих или упомянутых значений вторых составляющих становится неопределенным.

4. Способ по п.1, дополнительно включающий в себя использование одного из упомянутых однозначно определенных значений составляющих в упомянутой кэш-памяти, когда одно из упомянутых значений первых составляющих или упомянутых значений вторых составляющих становится однозначно определенным после пребывания неопределенным.

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

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

преобразование посредством процессора из упомянутого первого цветового пространства в упомянутое второе цветовое пространство для определения значений вторых составляющих, связанных с упомянутым вторым цветовым пространством; и

кэширование упомянутых однозначно определенных значений составляющих в кэш-памяти;

определение, посредством процессора, является ли нулевой упомянутая насыщенность;

и, если так, вычисление значений красной, синей и зеленой; и

обновление упомянутой кэш-памяти упомянутым значением оттенка.

6. Способ по п.5, в котором, если упомянутая насыщенность не является нулевой, упомянутый способ дополнительно включает в себя определение, является ли нулевым упомянутое значение яркости; и, если так, вычисление значений красной, синей и зеленой, и значения яркости, и обновление упомянутой кэш-памяти упомянутыми значениями оттенка и насыщенности; и, если нет, не обновление упомянутой кэш-памяти.

7. Способ по п.5, дополнительно включающий в себя использование одного из упомянутых однозначно определенных значений составляющих в упомянутой кэш-памяти, когда одно из упомянутых значений первых цветовых составляющих или упомянутых значений вторых цветовых составляющих становится неопределенным.

8. Способ по п.5, дополнительно включающий в себя использование одного из упомянутых однозначно определенных значений составляющих в упомянутой кэш-памяти, когда одно из упомянутых первых значений составляющих или вторых составляющих становится однозначно определенной после пребывания неопределенным.

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

получение значений первых составляющих, относящихся к упомянутому первому цветовому пространству, при этом значения указанных первых составляющих являются красными, синими и зелеными значениями составляющих;

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

преобразование из упомянутого первого цветового пространства в упомянутое второе цветовое пространство для определения значений вторых составляющих, связанных с упомянутым вторым цветовым пространством; и

кэширование упомянутых однозначно определенных значений составляющих в кэш-памяти;

определение равны ли упомянутые значения красной, синей и зеленой;

и, если нет, вычисление упомянутых значений оттенка, насыщенности и яркости из упомянутых значений красной, синей и зеленой; и

обновление упомянутой кэш-памяти вычисленными значениями оттенка, насыщенности и яркости.

10. Считываемый компьютером носитель по п.9, в котором, если упомянутые значения красной, синей и зеленой являются равными, упомянутый считываемый компьютером носитель дополнительно включает в себя команды для определения, является ли черным цвет, определенный значениями красной, синей и зеленой; и, если нет, вычисления значения яркости и обновление упомянутой кэш-памяти упомянутым расчетным значением яркости; и, если так, установления яркости в нуль без обновления упомянутой кэш-памяти.

11. Считываемый компьютером носитель по п.9, дополнительно включающий в себя команды для использования одного из упомянутых однозначно определенных значений составляющих в упомянутой кэш-памяти, когда одно из упомянутых значений первых составляющих или упомянутых значений вторых составляющих становится неопределенным.

12. Считываемый компьютером носитель по п.9, дополнительно включающий в себя команды для использования одного из упомянутых однозначно определенных значений составляющих в упомянутой кэш-памяти, когда одно из упомянутых значений первых составляющих или упомянутых значений вторых составляющих становится однозначно определенным после пребывания неопределенным.

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

получение значений первых составляющих, относящихся к упомянутому первому цветовому пространству, при этом значения указанных первых составляющих являются красными, синими и зелеными значениями составляющих;

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

преобразование из упомянутого первого цветового пространства в упомянутое второе цветовое пространство для определения значений вторых составляющих, связанных с упомянутым вторым цветовым пространством; и

кэширование упомянутых однозначно определенных значений составляющих в кэш-памяти;

определения, является ли нулевой значение упомянутой насыщенности;

и, если так, вычисления значений красной, синей и зеленой; и

обновления упомянутой кэш-памяти упомянутым значением оттенка.

14. Считываемый компьютером носитель по п.13, в котором, если упомянутая насыщенность не является нулевой, упомянутый считываемый компьютером носитель дополнительно включает в себя команды для определения, является ли нулевым упомянутое значение яркости; и, если так, вычисления значений красной, синей и зеленой, и значения яркости, и обновления упомянутой кэш-памяти упомянутыми значениями оттенка и насыщенности; и, если нет, не обновления упомянутой кэш-памяти.

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

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

Описание изобретения к патенту

Область техники, к которой относится изобретение

Изобретение в основном относится к области графического редактирования. Более конкретно, настоящее изобретение относится к системе и способу для преобразования цветовых пространств, которое сохраняет хорошо определенные цветовые составляющие при преобразовании из первого во второе цветовое пространство.

Уровень техники

В графических приложениях цвета определяют с использованием элементов управления, которые отражают значения цветовых составляющих в различных цветовых пространствах. Как правило, получающийся в результате цвет сохраняют в терминах единого канонического цветового пространства. На Фиг.1 представлены три приводимых в качестве примера цветовых пространства: Куб RGB («Зеленый, Красный, Синий»), Конус HSB («Оттенок, Насыщенность, Яркость») и Двойной Конус HLS («Оттенок, Яркость, Насыщенность»). Другие цветовые пространства существуют и известны специалистам в данной области техники, однако, они не показаны на Фиг.1. Элемент управления цветовым редактором позволяет преобразовывать цвета в цветовых пространствах с тем, чтобы позволить пользователю редактировать канонический цвет в терминах отличающихся цветовых пространств.

Побочный эффект преобразования в цветовых пространствах состоит в том, что индивидуальные составляющие могут быть определены в первоначальном пространстве, но не определены в целевом цветовом пространстве, в зависимости от значения входного цвета. Например, «черный», представленный в цветовом пространстве RGB, это (0,0,0). Эквивалентный цвет, выраженный в цветовом пространстве HSB, имеет хорошо определенную составляющую яркости, но неопределенные составляющие оттенка и насыщенности.

Упрощенный подход к решению этой проблемы может заключаться в том, чтобы выполнять преобразование из RGB в HSB и временно вводить замещение произвольными значениями по умолчанию для неопределенных составляющих оттенка и насыщенности. Однако пользователь мог уже определить значения для этих составляющих, которые, ожидается, что будут сохранены, даже если составляющие являются неопределенными. На Фиг.2 представлен недостаток, являющийся следствием этого упрощенного, неустойчивого подхода. В цветовом пространстве HSB, когда пользователь уменьшает насыщенность до нуля (см. этапы A) - C)), первоначальное значение оттенка отбрасывают в силу неоднозначного преобразования. Это неожиданное поведение имеет недостатки и неудобства, потому что при перемещении пользователем уровня насыщенности выше (см. этапы D) и E)) оттенок остается на произвольном уровне, назначенном цветовым редактором на этапе C) (в этом случае - 0). Таким образом, тогда как на этапах A) и E) изменяется только насыщенность, оттенок изменяется на этапе C), и пользователь не способен возвратиться к первоначальному цвету на этапе A).

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

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

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

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

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

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

фиг.1 - схема приводимых в качестве примера цветовых пространств;

фиг.2 - редактирование в цветовом пространстве в соответствии с известным уровнем техники;

фиг.3 - структурная схема приводимой в качестве примера вычислительной среды, в которой могут быть осуществлены варианты изобретения;

фиг.4 - процесс преобразования из цветового пространства RGB в цветовое пространство НSB в соответствии с настоящим изобретением;

фиг.5 - процесс преобразования из цветового пространства HSB в цветовое пространство RGB в соответствии с настоящим изобретением.

фиг.6 - редактирование в цветовом пространстве в соответствии с настоящим изобретением.

Приводимая в Качестве Примера Вычислительная Среда

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

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

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

Как представлено на Фиг.3, приводимая в качестве примера система для осуществления изобретения включает в себя универсальное вычислительное устройство в виде компьютера 110. Составляющие компьютера 110 могут включать в себя, без ограничения только этими устройствами, процессор 120, системную память 130 и системную шину 121, которая связывает с процессором 120 различные системные составляющие, включающие в себя системную память. Системная шина 121 может относиться к любому из нескольких типов шинных структур, включающих в себя шину памяти или контроллер памяти, периферийную шину и локальную шину, использующие любую из разнообразных шинных архитектур. В качестве не ограничивающего примера, такая архитектура включает в себя шину Архитектуры Промышленного Стандарта (ISA), шину Микроканальной Архитектуры (МСА), шину Расширенной ISA (EISA), локальную шину стандарта Ассоциации по Стандартам в Области Видеоэлектроники (VESA), шину Межсоединения Периферийных Компонентов (PCI) (также известную, как шина второго уровня), Экспресс Межсоединения Периферийных Компонентов (PCI-Express) и Системную Управляющую Шину (SMBus).

Компьютер 110 обычно включает в себя разнообразные читаемые компьютером носители. Читаемые компьютером носители могут быть любыми доступными носителями, к которым можно осуществлять доступ посредством компьютера 110, и включают в себя как энергозависимые, так и энергонезависимые носители, сменные и несменные носители. В качестве примера, а не ограничения, компьютерные читаемые носители могут включать в себя компьютерные носители данных и носитель связи. Компьютерные носители данных включают в себя как энергозависимые, так и энергонезависимые, сменные и несменные носители, выполненные любым способом и по любой технологии хранения информации, такой как читаемые компьютером команды, структуры данных, программные модули или другие данные. Компьютерные носители данных включают в себя, но не ограничены только этим, ОЗУ(RAM), ПЗУ(ROM), ЭСППЗУ(EEPROM), флэш-память или память другой технологии, CD-ROM, цифровые многофункциональные диски (DVD) или другие оптические дисковые хранилища, магнитные кассеты, магнитную ленту, магнитные дисковые хранилища или другие магнитные устройства хранения или любую другую среду, которая может быть использована для хранения желаемой информации и к которой может иметь доступ компьютер 110. Носитель связи обычно заключает в себе читаемые компьютером команды, структуры данных, программные модули или другие данные в модулируемом сигнале данных, таком как несущая или другой транспортный механизм и содержит любую среду доставки информации. Термин «модулированный сигнал данных» означает сигнал, который имеет один или несколько своих наборов характеристик или измененный таким образом, чтобы кодировать информацию в сигнале. Посредством примера, и без ограничения только им, носитель связи включает в себя проводные носители, такие как проводная сеть или подключение по проводной линии, и беспроводные носители, такие как акустические, РЧ, инфракрасные и другие беспроводные носители. Комбинация любых из вышеупомянутых также входит в объем читаемого компьютером носителя.

Системная память 130 включает в себя компьютерные носители данных в виде энергозависимой и/или энергонезависимой памяти типа ПЗУ 131 и оперативной памяти 132. Базовая система 133 ввода-вывода (BIOS) содержит основные подпрограммы, которые помогают передавать информацию между элементами в компьютере 110, такие, как те, что обычно сохраняют в ПЗУ 131 при запуске. Оперативная память 132 обычно содержит данные и/или программные модули, которые являются незамедлительно доступными для процессора 120 и/или которые в настоящий момент выполняются им. Посредством не ограничивающего примера на Фиг.3 представлена операционная система 134, прикладные программы 135, другие программные модули 136 и программные данные 137.

Компьютер 110 может также включить в себя другие сменные/несменные энергозависимые/энергонезависимые компьютерные носители данных. Только для примера, на Фиг.3 представлен накопитель 141 на жестком диске, который считывает с несменного энергонезависимого магнитного носителя или записывает на него, накопитель 151 на магнитном диске, который считывает со сменного энергонезависимого магнитного диска 152 или записывает на него, и накопитель 155 на оптическом диске, который считывает со сменного энергонезависимого оптического диска 156, типа CD-ROM или другого оптического носителя. Другие сменные/несменные энергозависимые/энергонезависимые компьютерные носители данных, которые могут быть использованы в приводимой в качестве примера рабочей среде, включают в себя, без ограничения только этими устройствами, кассеты с магнитной лентой, карты флэш-памяти, цифровые многофункциональные диски, цифровую видеоленту, полупроводниковое ОЗУ, полупроводниковое ПЗУ и подобные устройства. Накопитель 141 на жестком диске обычно подключен к системной шине 121 посредством несменного интерфейса памяти, такого как интерфейс 140, а накопитель 151 на магнитном диске и накопитель 155 на оптическом диске обычно подключены к системной шине 121 посредством сменного интерфейса памяти, такого как интерфейс 150.

Накопители и их соответствующие компьютерные носители данных, рассмотренные выше и представленные на Фиг.3, обеспечивают хранение читаемых компьютером команд, структур данных, программных модулей и других данных для компьютера 110. На Фиг.3, например, показано, что в накопителе 141 на жестком диске хранят операционную систему 144, прикладные программы 145, другие программные модули 146 и программные данные 147. Следует отметить, что эти составляющие могут быть теми же самыми, что и операционная система 134, прикладные программы 135, другие программные модули 136 и программные данные 137 или могут быть отличными от них. Операционной системе 144, прикладным программам 145, другим программным модулям 146 и программным данным 147 здесь присвоены различные ссылочные позиции, чтобы проиллюстрировать, что, как минимум, они представляют собой различные копии. Пользователь может вводить команды и информацию в компьютер 110 посредством устройства ввода данных, такого как клавиатура 162, и координатно-указательного устройства 161, обычно называемого мышью, шаровым манипулятором или сенсорной площадкой. Другие устройства ввода данных (не показаны) могут включать в себя микрофон, джойстик, игровую клавиатуру, спутниковую антенну, сканер или подобные устройства. Эти и другие устройства ввода данных часто подключают к процессору 120 посредством пользовательского интерфейса 160 ввода, который связан с системной шиной, но могут быть присоединены посредством другого интерфейса и шинных структур, таких как параллельный порт, игровой порт или универсальная последовательная шина (USB). Монитор 191 или устройство отображения другого типа также связан с системной шиной 121 посредством интерфейса, такого как видеоинтерфейс 190. В дополнение к монитору компьютеры могут также включать в себя другие периферийные устройства вывода, такие как громкоговорители 197 и принтер 196, которые могут быть присоединены посредством периферийного интерфейса 195 вывода.

Компьютер 110 может работать в сетевой среде, используя логические соединения с одним или несколькими удаленными компьютерами, такими как удаленный компьютер 180. Удаленный компьютер 180 может быть персональным компьютером, сервером, маршрутизатором, сетевым ПК, равноправным (одноранговым) устройством или другим общим сетевым узлом и обычно включает в себя многие или все из тех элементов, которые были описаны выше применительно к компьютеру 110, хотя на Фиг.3 было показано только устройство 181 хранения в памяти. Показанные логические соединения включают в себя локальную сеть (ЛС, LAN) 171 и глобальную сеть (ГС, WAN) 173, но могут также включать в себя и другие сети. Такие сетевые среды являются общераспространенными в офисах, компьютерных сетях в масштабах предприятия, сетях интранет и Интернет.

При использовании в сетевой среде ЛС компьютер 110 соединен с ЛС 171 посредством сетевого интерфейса или адаптера 170. При использовании в сетевой среде ГС компьютер 110 обычно включает в себя модем 172 или другое средство для установления связи по ГС 173, такое как Интернет. Модем 172, который может быть внутренним или внешним, может быть связан с системной шиной 121 посредством пользовательского интерфейса 160 ввода или другим подходящим механизмом. В сетевой среде программные модули, изображенные применительно к компьютеру 110 или его частям, могут быть сохранены в удаленном устройстве хранения в памяти. Посредством не ограничивающего примера, на Фиг.3 представлены удаленные прикладные программы 185 как находящиеся в устройстве 181 памяти. Очевидным является, что показанные сетевые соединения приведены в качестве примера и для установления линии связи между компьютерами могут быть использованы другие средства.

Приводимые в Качестве Примера Варианты Осуществления Устойчивого Интерактивного Цветового Редактирования

Процессы по настоящему изобретению описаны со ссылкой на Фиг.4-6. Обычно параметрами являются:

1. Каноническое цветовое пространство.

2. Цветовое пространство для преобразования в него (то есть, цветовое пространство «дисплея»).

3. Процесс цветового преобразования.

4. Механизм кэширования.

На Фиг.4 представлен процесс преобразования из RGB в HSB, при поддержании хорошо определенных цветовых значений. В смысле, используемом в настоящем описании, «хорошо определенный» означает, что конкретный цвет определен однозначно уникальной тройкой компонентов цветового пространства (то есть, значениями H, S и B) в этом пространстве. На этапе 200 вводят значения компонент RGB. На этапе 202 определяют, являются ли значения RGB ахроматическими. Если это так, то на этапе 206 значения оттенка, яркости и насыщенности рассчитывают в соответствии с хорошо известным преобразованием. Поскольку это хорошо определенное цветовое значение, новые значения HSB на этапе 208 помещают в кэш-память. На этапе 218 значения составляющих HSB выдают пользователю.

Если на этапе 202 результатом является «да», то на этапе 204 определяют, является ли цвет черным (R=G=B=0). В противном случае, затем на этапе 210 используют помещенное в кэш-память значение для оттенка, насыщенность устанавливают на нуль и вычисляют яркость. На этапе 212 помещенное в кэш-память значение насыщенности обновляют на основании результата этапа 210 и значения составляющих HSB выдают на этапе 218. Если цвет на этапе 204 является черным, то используют помещенные в кэш-память значения оттенка и насыщенности, а яркость устанавливают на нуль на этапе 214. Помещенные в кэш-память значения не обновляют в связи с этим условием (этап 216) и получающиеся в результате значения цветовых составляющих выдают на этапе 218.

На Фиг.5 представлен процесс преобразования из НSB в RGB при поддержании хорошо определенных цветовых значений. На этапе 220 вводят значения составляющих HSB. На этапе 222 определяют, является ли значение насыщенности нулевым. Если это так, то на этапе 234 значения красной, зеленой и синей составляющих вычисляют в соответствии с хорошо известным преобразованием. Поскольку это хорошо определенное цветовое значение, новые значения RGB на этапе 236 помещают в кэш-память. На этапе 238 значения составляющих RGB выдают пользователю.

Если на этапе 222 результатом является «да», то на этапе 224 определяют, является ли яркость нулевой. Если да, то на этапе 230 вычисляют значения красной, зеленой и синей составляющих. На этапе 232 помещенные в кэш-память значения оттенка и насыщенности представляют собой значения, введенные на этапе 220. Затем на этапе 238 выдают значения составляющих RGB. Если яркость на этапе 224 не является нулевой, то на этапе 226 вычисляют значения красной, зеленой и синей составляющих. Однако помещенные в кэш-память значения не обновляют в связи с этим условием (этап 224) и получающиеся в результате значения цветовых составляющих RGB выдают на этапе 238.

Таким образом, в соответствии с настоящим изобретением сохраняют в кэш-памяти наиболее недавние хорошо определенные значения для цветовых составляющих и используют их, когда:

1. Цветовая составляющая становится неопределенной после пребывания хорошо определенной: используют помещенные в кэш-память значения для неопределенной составляющей вместо произвольного значения по умолчанию.

2. Цветовая составляющая становится хорошо определенной после пребывания неопределенной: используют помещенные в кэш-память значения для составляющей, когда цветовое преобразование отходит от сингулярности.

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

На Фиг.6 представлено преобразование цветового пространства по Фиг.2, показывающее цветовое редактирование с использованием настоящего изобретения. На Фиг.6 представлены усовершенствования по настоящему изобретению, являющиеся результатом устойчивого подхода. В цветовом пространстве HSB, когда пользователь снижает насыщенность до нуля (см. этапы A) - C)), первоначальное значение оттенка отбрасывают в связи с неоднозначным преобразованием. Однако, в соответствии с настоящим изобретением, для оттенка используют хорошо определенное, помещенное в кэш-память значение. При перемещении пользователем уровня насыщенности выше (см. этапы D) и E)) используют находящееся в кэш-памяти значение оттенка, и, в конечном счете, пользователь получает возможность возвратиться к первоначальному цвету на этапе A).

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

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

Класс H04N11/20 преобразование способа объединения отдельных составляющих сигнала цветного изображения, например преобразование цветовых телевизионных стандартов

Класс G06T9/00 Кодирование изображения, например из побитового к непобитовому изображению

способ кодирования видео и устройство кодирования видео с использованием блоков предсказания на основании блоков кодирования, определенных в соответствии с древовидной структурой, и способ декодирования видео и устройство декодирования видео с использованием блоков предсказания на основании блоков кодирования, определенных в соответствии с древовидной структурой -  патент 2528132 (10.09.2014)
кодирующее устройство для сигналов трехмерного видеоизображения -  патент 2528080 (10.09.2014)
предсказание вектора движения текущего раздела изображения, указывающего на опорную зону, которая перекрывает несколько разделов опорного изображения, кодирование и декодирование с использованием такого предсказания -  патент 2520425 (27.06.2014)
способ кодирования с предсказанием вектора движения, способ декодирования с предсказанием вектора движения, устройство кодирования фильма, устройство декодирования фильма и их программы -  патент 2519525 (10.06.2014)
способ алфавитного представления изображения -  патент 2519445 (10.06.2014)
способ и устройстство для кодирования видео и способ и устройство для декодирования видео с учетом порядка пропуска и разбиения -  патент 2517433 (27.05.2014)
способ и система осуществления видеоконтроля посредством мобильного терминала -  патент 2517255 (27.05.2014)
способ для изменения опорного блока в опорном изображении, способ для кодирования или декодирования блока изображения с помощью опорного блока и устройство для этого, и носитель информации, переносящий блок, кодированный с помощью измененного опорного блока -  патент 2517247 (27.05.2014)
способы передачи и приема потоков изображений, носитель информации, передающее устройство, модуль преобразования для этих способов -  патент 2513907 (20.04.2014)
способ сжатия цифровых изображений с использованием фиксированного числа битов в блоке -  патент 2510079 (20.03.2014)

Класс H04N1/60 коррекция или управление цветами

Наверх