Сверточная алгебра и захват, креативность и резкость - Фотопедия
1 голос
/ 17 октября 2014

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

Свертки являются как коммутативными, так и ассоциативными. Итак ... почему мы говорим о повышении резкости захвата, локальном усилении контраста / HIRLOAM и повышении резкости вывода как об отдельных вещах, когда это можно сделать в любом порядке или все сразу, в этом отношении? Отсечение - первое, что приходит на ум; во-вторых, я идиот, который неправильно понимает что-то фундаментальное.

Ответы [ 3 ]

2 голосов
/ 17 октября 2014

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

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

Причина, по которой не комбинируется свертка нескольких эффектов, более вероятна из-за структуры программного обеспечения. Особенно с большим приложением, которое имеет архитектуру плагинов, каждый плагин должен делать свое дело независимо. В главном приложении должны быть специальные ресурсы, которые позволят плагинам добавлять свои специфические модификации в глобальное ядро ​​свертки. И это будет работать только в случае линейных эффектов, которых многие не делают. Единая глобальная свертка также должна быть достаточно большой, возможно, выполняющейся медленнее, чем несколько меньших сверток подряд. Механизм глобальной свертки может посмотреть, как далеко простираются ненулевые данные, но это добавляет больше сложности и больше решений во время выполнения.

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

Добавлено отображение яркости

Мое программное обеспечение допускает несколько способов управления линейными сопоставлениями яркости, а также несколько нелинейных сопоставлений, которые объединяются. Линейные отображения в конечном итоге преобразуются в формат Y = mX + b, несмотря на ряд способов сделать это из пользовательского интерфейса. Нелинейные отображения определяются в терминах логарифмов и экспонент, что потребует очень много времени для вычисления каждого пикселя или каждого отдельного вклада в 2D-фильтр для каждого полученного значения пикселя.

Существует некоторое вычисление, которое необходимо выполнить для каждого значения цвета в целом, но большинство линейных и нелинейных отображений в конечном итоге объединяются в три таблицы поиска, по одной на цвет. Я представляю необработанное изображение внутри с 16 битами на цвет на пиксель. Для современного компьютера три справочных таблицы по 65536 записей в каждой не представляют особой проблемы. При таком относительно небольшом объеме памяти может быть представлено любое произвольное отображение интенсивности входного сигнала на интенсивность выходного сигнала. Таблицы загружаются путем выполнения лог, экспоненциальных и других расчетов. Когда происходит фактическое сопоставление пикселей, все это становится поиском.

Три таблицы поиска для каждого цвета могут обрабатывать только определенные вещи. Некоторые отображения работают с глобальным цветом всего пикселя и не могут быть разделены на независимые отображения R, G и B. Тем не менее, многие могут, и таблицы поиска объединяют любое количество из них, концептуально примененных последовательно и кропотливо рассчитанных в один поиск.

2 голосов
/ 17 октября 2014

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

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

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

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

1 голос
/ 17 октября 2014

Разделение резкости на несколько задач обеспечивает более точное управление.

Поскольку некоторые виды повышения резкости являются творческими и, следовательно, субъективными (локальное повышение резкости глаза, локальное усиление контрастности и т. Д.), Рекомендуется иметь индивидуальный контроль над всеми этапами, чтобы убедиться, что результат не переварен.

Кроме того, различные типы и масштабы проблем повышения резкости лучше реагируют на различные алгоритмы или методы повышения резкости (USM, деконволюция, высокочастотный анализ, маскирование контуров ...)

Клип - это первое, что приходит на ум;

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

...