Почему фотошоп так долго обрабатывает изображение с примененным фильтром?

У меня на самом деле нет проблем с этим, но мне искренне интересно, каким может быть ответ...

Скажем, я захожу в фотошоп и у меня есть изображение, перейдите в «Фильтр», затем «Галерея фильтров».

Щелкая по фильтрам, для полной загрузки некоторых из них требуется около 0,2 секунды. Это складывается, если я хочу применить фильтр ко всему видео.

Тем не менее, я могу визуализировать 3D-сцену в OpenGL в режиме реального времени с некоторыми эффектами постобработки на выбор, и когда я пролистываю их, вся сцена визуализируется мгновенно (точнее, 0,0079 с, всего на 0,0001 с больше, чем кадр без эффект).

Поэтому мне было интересно... Разве Photoshop не использует графический процессор для применения этих эффектов фильтра? Нужно ли компилировать фильтры каждый раз, когда вы их выбираете? Просто CS6 сейчас считается старым и плохо оптимизированным?

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

Ответы (1)

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

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

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

Но если у вас есть редактор super opengl, который делает все за микросекунды, используйте его. Или это так, что вам нужна какая-то гибкость, которую он не предлагает? Такие функции, как Undo, на самом деле требуют некоторого времени ... Даже если PS сделает это в графическом процессоре, ему все равно нужно будет прочитать буферы и т. Д.

На самом деле я продолжаю слышать эту штуку со скоростью, но не вижу ее. Тенденция началась где-то в 2000-х годах, но все еще 16 лет спустя эти сверхускоренные приложения почему-то не сидят на каждом медиа-компьютере. Они очень медленно выходят на рынок, я знаю, что они существуют, но на самом деле их все еще нет.