Алгоритм баланса белого [закрывается]

Каждый из этих ответов имеет одну общую черту: все они хранят даты как одно значение (обычно строку).

Другой вариант - воспользоваться встроенной структурой JSON и представить дату в виде списка чисел:

{ "name":"Nick",
  "birthdate":[1968,6,9] }

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

Просто подумайте нестандартно - дату JSON не нужно хранить в виде строки.

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

25
задан nbanic 11 May 2014 в 07:41
поделиться

3 ответа

Относительно простой алгоритм - это усреднение оттенков (в HSV или HSL) самых ярких и самых темных пикселей на экране. В крайнем случае, используйте только самые яркие пиксели. Если оттенки между самыми яркими и самыми темными слишком разные, выберите яркий пиксель. Если темный почти черный, выбирайте яркий пиксель.

Зачем вообще смотреть на темный пиксель? Иногда темнота не близка к черному и намекает на окружающий свет, туман или дымку.

Это будет иметь смысл для вас, если вы интенсивно пользуетесь Photoshop. Световые блики на фотографии не связаны (или слабо связаны) с основным цветом объекта. Они являются вашим лучшим представлением цветового оттенка света, если только изображение не переэкспонировано настолько, что все переполняет ПЗС.

Затем отрегулируйте оттенки всех пикселей.

Вы '' Мне понадобятся функции быстрого преобразования RGB в HSV и HSV в RGB. (Но, возможно, вы сможете работать в RGB для коррекции пикселей с помощью LUT или линейной интерполяции.)

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

Чтобы быстро найти самый яркий цвет (и самый темный), вы можете работать в RGB, но у вас должны быть множители для зеленого, красного и синего. На мониторе RGB 255 зеленого цвета ярче 255 красного, который ярче 255 синего. Раньше у меня в голове были хорошие множители, но, увы, они ускользнули из моей памяти. Вы, вероятно, можете найти их в Google.

Это не сработает для изображения, на котором нет бликов. Например, покрашенная матовая стена. Но я не знаю, что вы можете с этим поделать.


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

21
ответ дан 28 November 2019 в 20:40
поделиться

GIMP очевидно использует очень простой алгоритм автоматической балансировки белого. http://docs.gimp.org/en/gimp-layer-white-balance.html

Команда «Баланс белого» автоматически регулирует цвета активного слоя, отдельно растягивая красный, зеленый и синий каналы. Для этого он отбрасывает цвета пикселей на каждом конце гистограмм красного, зеленого и синего, которые используются только 0,05% пикселей в изображении, и максимально расширяет оставшийся диапазон. В результате цвета пикселей, которые очень редко встречаются на внешних краях гистограмм (возможно, частицы пыли и т. Д.), Не влияют отрицательно на минимальные и максимальные значения, используемые для растягивания гистограмм, по сравнению с растянутой контрастностью. Однако, как и в случае «Растянуть контраст», в результирующем изображении могут быть сдвиги оттенков.

21
ответ дан 28 November 2019 в 20:40
поделиться

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

Для начала я бы просто усреднил красный, зеленый , и синий, и используйте его как точку баланса белого. Установите для него ограничения - оставайтесь в пределах диапазона для вольфрамового, люминесцентного и дневного света. Он не будет идеальным, но когда он ошибается, будет относительно легко объяснить, почему.

3
ответ дан 28 November 2019 в 20:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: