Исправлена ошибка с утечкой файловых дескрипторов и памяти под буферы при извлечении thumbnails. Проявиться она могла только при некорректном использовании библиотеки, однако народ наступил на...
Проект LibRaw стал настоящим — у нас завелся живой форумный тролль. Как от многих таких троллей, от него есть и некоторая польза: если кормить его вдумчиво, то можно заодно разобраться с какими-то вещами, до которых не доходили руки. В данном конкретном случае
я разобрался с мониторным softproof (т.е. эмуляцией одного монитора на другом) и с пользой от этой техники для обработки изображений:
поиск невидимых (искаженных) цветов на собственных картинках;
оценка того, как изображение будет выглядеть на чужом мониторе (в том числе и в приложении, которое ничего не знает про профили и ICC).
Все эти вещи - интуитивно понятны, но их систематизация оказалась полезной и выродилась в отдельный текст:
Мониторный Softproof и Gamut Warning в Adobe Photoshop
...мониторный софтпруф может быть полезен тем, кто публикуется на фото-сайтах и подобным электронным образом, особенно для тех, кто обзавелся монитором с расширенным охватом и/или использует в качестве рабочего пространства - RGB пространство с охватом, много большим чем мониторный (например, Adobe RGB на обычном мониторе).
Помимо этого, вполне возможна ситуация, когда монитор не способен отобразить все цвета изображения - и это надо вовремя детектировать.
С новым фотошопом регулярно натыкаюсь на проблему: при печати больших форматов на печать вылазит только узкая полоска (1-3 сантиметра) с нижней стороны картинки. Обычно у меня там рамка и все.
Проблема меня реально мучала, экспериментируя выяснил что
Если включить Print Preview в драйвере принтера, то проблему видно и в нем. Т.е. это проблема печатающего приложения, а не драйвера.
А3 и меньше я печатаю редко, но не могу вспомнить чтобы столкнулся с проблемой. Вылезает только на А2, особенно часто вылезает на полюбившемся мне 17-дюймовом рулоне (типичный размер печатаемого: 420x660 мм).
Проблема редко была у Photoshop CS3, у 32-битного CS4 проявляется гораздо чаще. Если на preview увидели, надо закрыть фотошоп, открыть фотошоп и скорее всего пройдет.
Проблемы нет у 64-битного фотошопа. Вообще. Ни разу не видел.
Другими словами, что-то где-то с памятью намудрили. Или буфер выделяется не целиком, или что-то (иногда) переполняется, чего не случается. Кто там поближе к Сан-Хосе, зашлите им диарейных лучей.
Workflow с этими двумя версиями фотошопа получается какой-то ужасающий:
Основные действия производим в Lab, в 64-битном фотошопе (ибо быстрее).
Переводим в RGB, закрывает 64-битный, запускаем 32-битный, делаем финальный sharpen (Photokit Sharpener, у них есть 64-битная версия, но у меня не заработало).
Мы с Ильей Боргом написали в Компьютерру статью, в которой постарались описать наше видение современного состояния дел с RAW-форматами. Прошло три недели с выхода журнала и, согласно первоначальной договоренности, перепечатываем у себя:
Позволю себе процитировать вводный раздел целиком.
За последние 10—15 лет цифровая фотография вытеснила фотопленку практически из всех традиционных областей применения. Конечным потребителям проданы сотни миллионов цифровых фотокамер, не считая камер, проданных в мобильных телефонах. Столь массовая индустрия не может существовать без стандартов — и таковые, казалось бы, имеются: стандартизованы устройства для хранения данных (flash-карточки) и формат изображений JPEG — наиболее массовый и удовлетворяющий потребности подавляющего числа пользователей.
Однако формат JPEG далеко не всегда удовлетворяет требованиям профессионалов — фотографов, дизайнеров, персонал prepress-бюро, а тем более фотобанков и фотоархивов. Зачастую не удовлетворяет он и требованиям "продвинутых" фотолюбителей. Именно поэтому многие модели фотокамер, обычно позиционируемые производителем как профессиональные и полупрофессиональные, поддерживают, кроме JPEG, и запись изображения в так называемом "формате RAW". У стороннего наблюдателя может создаться впечатление, что RAW — это тоже такой стандартный формат, обеспечивающий лучшее качество — "качество для профи".
В нашем маленьком тексте мы хотим показать, что на самом деле жизнь гораздо сложнее, а положение профессионалов на сегодняшнем цифровом фоторынке не просто ужасно, а совершенно ужасно, и к тому же еще и быстро ухудшается (в то время как у менее притязательных любителей — все отлично).
Как мне кажется, обсуждать данный текст лучше рядом с ним, поэтому комментарии тут я закрываю. LibRaw.SU дает комментировать без авторизации, хотя авторизованым пользователям доступно чуть больше пряников.
Я редко пишу в блог о прочитанных книжках, но для этой хочется сделать исключение, из общего ряда она довольно сильно выбивается:
Дочитал лежавшую с лета книжку Vincent Versace Welcome to Oz и всячески ее рекомендую к прочтению, несмотря на довольно двойственные впечатления, о которых ниже. Необходимо заметить, что в отличие от многих других фотошопных книжек, где примеры элементарные (в том смысле, что иллюстрируют один элемент) и понятны просто при взгляде на печатную картинку, у Versace примеры сложные и их необходимо проделать самостоятельно. Так в финальном примере я насчитал 63 слоя, правда 23 из них - вспомогательные, а формируют изображение "всего" 40.
Книжка - про активное применение локального редактирования. Конечно, почти каждое действие - глобальное (кривые, фильтры, channel mixer), но затем делается выпиливанием маски к слою, которое делается вручную, хотя и весьма быстро. Предлагаемая техника очень похожа на схемы черно-белой печати, как у Адамса в книжках и много у кого еще. Плюс фильтр Lighting Effects, который для меня был вовсе внове.
Получаемый результат крайне интересен, не говоря о (специально подобранных?) примерах, где из дерьма делается конфетка.
Поддержка Nikon D90 и P6000, Canon 50D, Sony A900, Panasonic FZ28 и LX3. При этом D90 и A900 поддержаны нормально, а для остальных нет таблиц RGBG-XYZ, цвета могут быть кривоваты (и будут еще апдейты).
Мы уже проползли в KDE (в 4.2, это даже не бета :) отчего масса софта уже использует LibRaw (конечно, если вы возьмете свежую libkdcraw и соберете), цитирую:
digiKam - photo management software
kphotoalbum, an alternative to digiKam but with less features.
gwenview, a image viewer, used to show thumbs in icon view.
dolphin, a file manager, used to show thumbs in icon view.
Импортирована последняя версия dcraw (8.87), добавлена поддержка шести новых камер: Canon 1000D, A720, SD300;
Nikon D700, Olympus E-520,Kodak C603.
Ввод-вывод через mmap() заменен на (старый) ввод-вывод через FILE. Скорость не пострадала, памяти нужно меньше.
Лицензирование изменено с GNU GPL v3 (или новее) на GNU GPL v2 (или новее).
Пользуюсь случаем, чтобы напомнить:
LibRaw - это библиотека для чтения RAW-файлов, получаемых с цифровых фотокамер (CRW/CR2,NEF,RAF,DNG и других).
LibRaw основана на исходных текстах утилиты dcraw, часть недостатков которой исправлена, а часть будет исправлена в дальнейшем. Пользователям библиотеки предлагается API для встраивания в свои программы.
Если вы не программист, а фотограф, то вам может быть полезна входящая в поставку утилита half_mt, которая функционально эквивалентна dcraw -h, но на многопроцессорных/многоядерных машинах работает в разы быстрее.
Возможно, это у меня круг общения такой, но почему-то большинство фотографических обсуждений, которые происходят вокруг - это обсуждения стадии обработки. Действительно, средства редактирования, доступные простому пользователю (с компьютером) сейчас развились необычайно и позволяют в ряде случаев сделать из дерьма конфетку.
Временами даже становится непонятно, как это 10-20, да даже и 60, лет назад снимали без HDR, расширения ДД на NN стопов, смешения каналов, масок в фотошопе и прочих продуктов цифровой эпохи. А ведь снимали.
Да действительно, современная цифровая техника во многом - очень хороша. Сочетание хорошей камеры с хорошим конвертором и фотошопом действительно дает средства сделать конфетку из этого самого. Но зачем снимать плохо, если можно сделать это хорошо ?
При редактировании изображений фотографы пользуются 3-4 компонентными моделями цвета , которые растут либо из особенностей устройства воспроизведения (RGB, CMYK), либо из классических цветовых моделей (LAB). (Затрудняюсь сказать, откуда растут HSB/HSL, классически вероятно из Манселловских атласов, но современные варианты - скорее всего пересчет из LAB по известным формулам.).
Вместе с тем, мы регулярно используем эмпирические приемы (в частности поднимаем цветовой и тоновый контраст на пейзажах, подбираем тон рамки под контраст), а современные цветовые модели содержат численное описание используемых фотографами эффектов.
По случаю дождя и нежелательности выхода на улицу, у меня родился следующий текст:
Смысл в том, что исходные данные с цифровой камеры содержат достаточно много абсолютных данных (как минимум, об освещенности) и их можно использовать, например, для автоматической коррекции контраста.
Новые цифровые фотокамеры делают с 14-битным АЦП, польза от которого для меня (как для владельца такой камеры) вполне очевидна. Однако она очевидна не для всех.
Илья Борг провел несколько экспериментов на эту тему, о которых можно почитать на LibRaw.SU:
Я уже писал
про такую настройку баланса белого цифровой камеры, когда камерные средства диагностики экспозиции (гистограмма и индикация пересвета) показывают более-менее реальные данные (при стандартных настройках это не так).
Несколько позже я обещал пересмотренную статью про это, обещания надо выполнять:
От исходной статьи новый текст отличается демонстрацией результатов использования при дневном свете и при лампах накаливания.
Описанный способ подходит для практически любых цифровых камер. Впрочем, для камер ряда популярных производителей есть способ добиться того же куда проще, буквально за 1-2 минуты и без манипуляций в фотошопе. Следите за анонсами.
Upd: оказывается у меня кросспост в ЖЖ отвалился примерно так неделю назад, вот вроде починил....
Этот пост забегает несколько вперед, но вполне сознательно. Вполне возможно, что в ходе обсуждения всплывут всякие недостающие факты.
На сегодняшний день какая-то консистентная процедура тестирования динамического диапазона цифровых камер, которая была бы применена ко многим камерам, есть только на DPReview. В результате, половина интернета мастурби смотрит на Филовские графики и делает какие-то выводы: сравнивает камеры, ругается в форумах и так далее.
Мне не удалось найти на DPReview подробного описания методики, написано лишь, что используется шкала от Stoufer на 13 стопов, освещенная сзади люминисцентной лампой. Не указывается ни использованная при тестировании конкретной камеры оптика, ни установка диафрагмы, а все это довольно важно.
Давайте рассмотрим эффекты, которые влияют на фотографирование шкал.
Теорию мы уже обсуждали, новый текст целиком про практику. Если мы прорабатываем света, недодерживая полутона, то полутона нам захочется вернуть на место, при этом не выбивая света обратно. Текст - о том, как построить правильные кривые, сами кривые для разных вариантов недодержки тоже прилагаются.
Я этими кривыми пользуюсь второй день, стало удобно: вместо ручного редактирования кривой возник выбор из списка, да еще и проградуированный в фотографических единицах.
Как-то неожиданно для меня выяснилось, что понятие линейности в применении к изображениям и их обработке не является очевидным.
Пришлось потратить полчаса, нарисовать 4 разных линейных шкалы в фотошопе (точнее, дорисовать, ибо две из них уже были в предыдущей статье) и написать три абзаца текста:
В обсуждении прошлой серии публикаций мне пеняли, дескать это все теория, а на практике и так все отлично. Проверить - при наличии искомого фильтра - дело 10 минут, что я и проделал. Результат описан в статье:
Если в двух словах, то польза от фильтра весьма существенна в следующем случае:
света - достаточно, ради применения фильтра не приходится задирать чувствительность;
вы собираетесь несколько (буквально на 1-2 стопа) поднимать тени при предпечатной подготовке.
Да, цена вопроса - 40 долларов на B&H: двадцатка за 'Gel Snap Holder', двадцатка за пленочный фильтр CC30M (или 40M, зависит от вашей камеры), это на все разумные размеры объективов. Ну, плюс доставка, конечно, но даже и с ней это получается по цене одного приличного поляризационного фильтра.
Я об этом уже писал, но общая реакция была в духе "а покажи проблему на реальных снимках". На мой взгляд, совсем реальные снимки нехороши тем, что они невоспроизводимы: невозможно найти такую же сцену, освещение, камеру и проверить утверждение автора. Снимки специальных модельных объектов (мишеней) гораздо показательнее так как легко воспроизводятся.
Возьмем рассеянный дневной свет и сфотографируем общеизвестную гретаговскую мишень:
Картинка снималась так, чтобы не было клиппинга ни в одном из каналов. Клиппинг специально проверялся Rawnalyze, стандартный центровзвешенный экспозамер камеры сразу дал правильный результат, экспокоррекция не потребовалась.
Задачи получить колориметрически-верное воспроизведение не было, поэтому картинка сконвертирована Adobe ACR 4.4.1 с настройками Auto, никакого профайлинга и прочих хитростей.
Посмотрим теперь, что произойдет, если все эти прекрасные цвета окажутся в зоне передержки.