Векторный рисунок в XaraX

обсуждение арта - анатомия, техника, софт и тд. (artwork discussion - anatomy, software, tutorials etc.)
Аватара пользователя
Revent
experienced hunter
experienced hunter
Сообщения: 127
Зарегистрирован: 06 май 2008, 14:46

Re: Векторный рисунок в XaraX

Сообщение Revent »

DrSchmallhausen писал(а):
Revent писал(а):Почему?
из-за его крутейших возможностей по написанию подключаемых модулей
Ясно.
Аватара пользователя
Shnatsel
tech support
tech support
Сообщения: 1996
Зарегистрирован: 16 май 2008, 18:16
FurSpecies: лев
Откуда: Moscow
Контактная информация:

Re: Векторный рисунок в XaraX

Сообщение Shnatsel »

DrSchmallhausen писал(а): Будучи созданным за пару часов (что важно, без предварительных знаний целевого языка), он предназначен для удаления с произвольной картинки водяного знака DeviantArt.

Как можно видеть, о существовании водяного знака теперь напоминают разве что JPEG-артефакты, оставшиеся вокруг места его размещения.
:shock:
Это довольно сложный водяной знак, удаление такого - задача непростая... Athari, помнится, писал для удаления водяных знаков специализированную программу почти с нуля, и результаты были не столь впечатляющие. Респект!

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

А алгоритмы из нестабильной версии вообще не имеют аналогов в мире, кроме их более ранних версий в imagemagic, написанных тем же разработчиком. Я про них даже в блог писал.
It's the Circle of Life
And it moves us all
Through despair and hope
Through faith and love
Аватара пользователя
DrSchmallhausen
experienced hunter
experienced hunter
Сообщения: 200
Зарегистрирован: 28 окт 2012, 16:45
FurSpecies: Old man in a topee
Откуда: Moscow
Контактная информация:

Re: Векторный рисунок в XaraX

Сообщение DrSchmallhausen »

Shnatsel, к слову об аналогах. У нас тут в соседней лабе разрабатывали одно время метод пересчёта, основанный на регуляризации по Тихонову. Сам я, к сожалению, не сильно в теме, поскольку всё-таки системщик, и довольно посредственно разбираюсь в принципах обработки изображений — однако, может быть ты в курсе, не задумывались ли авторы GIMP над возможностью реализации такого фильтра? Наверняка говорить не буду — но думаю что, в случае чего, смогу достать сам текст научной статьи. Боюсь только, что он будет на русском.
Только в отличие от представленного в твоём посте, «тихоновский» фильтр работает на повышение размера, а не на понижение — почему, собственно, и спросил.

P.S. и, да — стиралка водяного знака основана на банальном вычитании по шаблону, которое возможно в силу обратимости формулы альфа-смешения, так что здесь нет никаких фокусов :roll:
Athari же, как я предполагаю, пытался разработать метод удаления произвольной метки, а не очистки произвольного изображения от заранее заданной (по крайней мере, бóльшей своей частью) метки.
Аватара пользователя
Shnatsel
tech support
tech support
Сообщения: 1996
Зарегистрирован: 16 май 2008, 18:16
FurSpecies: лев
Откуда: Moscow
Контактная информация:

Re: Векторный рисунок в XaraX

Сообщение Shnatsel »

Неужели DA использует простой альфа-блендинг, да ещё и без искусственных "срывов"? Мда, ну и "защита" :facepalm:
Реверс такого уровня делает backtestground в целиком автоматическом режиме для совершенно других целей.
Athari делал более мощный реверс, с компенсацией умножения и прочего хитрого блендинга.

Про регуляризацию по Тихонову я впервые слышу. И я, увы, пока имею довольно поверхностное представление о математике такого уровня. Могу только сказать, что этот конкретный автор её в контексте GIMP пока не упоминал.

Кстати, вот интересный способ изменения размера изображений, реализованный в GIMP (в виде модуля), ImageMagick и отчасти в Photoshop начиная с CS4: http://youtu.be/6NcIJXTlugc
У меня давал очень впечатляющие результаты, например: было, стало.
It's the Circle of Life
And it moves us all
Through despair and hope
Through faith and love
Аватара пользователя
DrSchmallhausen
experienced hunter
experienced hunter
Сообщения: 200
Зарегистрирован: 28 окт 2012, 16:45
FurSpecies: Old man in a topee
Откуда: Moscow
Контактная информация:

Re: Векторный рисунок в XaraX

Сообщение DrSchmallhausen »

Shnatsel писал(а):Мда, ну и "защита" :facepalm:
Ну, они берут в основном не этим, а тем, что нижняя строка в метке уникальна для каждого автора. И вот как раз для её удаления пришлось кропотливо набирать литерную базу а кернинг вообще приходится делать вручную до сих пор :D
Shnatsel писал(а):без искусственных "срывов"
К сожалению, не понял, что имеется в виду.
Аватара пользователя
Revent
experienced hunter
experienced hunter
Сообщения: 127
Зарегистрирован: 06 май 2008, 14:46

Re: Векторный рисунок в XaraX

Сообщение Revent »

Shnatsel писал(а): интерполяция по кардинальному синусу с фильтрацией Ланцоша
Круто :shock: . Я теперь два дня заснуть не смогу.
Аватара пользователя
Shnatsel
tech support
tech support
Сообщения: 1996
Зарегистрирован: 16 май 2008, 18:16
FurSpecies: лев
Откуда: Moscow
Контактная информация:

Re: Векторный рисунок в XaraX

Сообщение Shnatsel »

DrSchmallhausen писал(а):
Shnatsel писал(а):без искусственных "срывов"
К сожалению, не понял, что имеется в виду.
Извиняюсь, я некорректно выразился. Имеется в виду, что операция альфа-смешивания полностью обратима только если существует заимооднозначное соответствие цвета "до" и цвета "после". Это не выполняется, например, если наложить тëмный водяной знак на тëмную картинку: любой достаточно тëмный пиксель сорвëтся в #000000 и восстановить, какой именно цвет там был, простым вычитанием будет невозможно.
Картинка не обязательно должна быть тëмной - для невозможности снятия водяного знака простым вычитанием достаточно срыва по одному каналу. В некоторых случаях такие потери можно компенсировать, заимствуя сорванные значения из ближайших нетронутых водяным знаком пикселей с близкими значениями по нетронутому каналу, но для этого нужен хотя бы один нетронутый канал. Реализаций этой идеи я пока не видел, но это не значит, что их не существует.
Если ни одного нетронутого канала нет, придëтся использовать что-то в духе гимпового модуля Resynthesizer.

Такие срывы можно вызвать не на каждом изображении без серьëзной визуальной деградации, но на многих можно, накладывая водяной знак на наиболее склонные к срывам участки или варьируя прозрачность водяного знака. DeviantArt этого не делает, поэтому простое вычитание в большинстве случаев работает.
It's the Circle of Life
And it moves us all
Through despair and hope
Through faith and love
Аватара пользователя
DrSchmallhausen
experienced hunter
experienced hunter
Сообщения: 200
Зарегистрирован: 28 окт 2012, 16:45
FurSpecies: Old man in a topee
Откуда: Moscow
Контактная информация:

Re: Векторный рисунок в XaraX

Сообщение DrSchmallhausen »

Shnatsel писал(а):любой достаточно тëмный пиксель сорвëтся в #000000 и восстановить, какой именно цвет там был, простым вычитанием будет невозможно
Не совсем верно.

Изображение
— исходя из формулы смешения (где z — любой из цветовых каналов, a — альфаканал, С — пиксель результата смешения, B — пиксель непрозрачного задника, F — пиксель полупрозрачного слоя), ошибки здесь могут возникнуть только из-за дискретизации, когда вещественное в диапазоне [0.0; 1.0] приходится квантовать на 256 возможных значений [0; 255].
В случае с водяным знаком это не так страшно, поскольку они редко когда имеют прозрачность более 128, а следовательно после восстановления у результирующей картинки в местах под ним останется 127 градаций цвета на канал, что «на глаз» очень мало где заметно. И цвет самого водяного знака при этом, кстати, не важен, поскольку потеря точности произойдёт в любом случае — будь то затемнение до 0.0, засветление до 1.0 или любое другое приведение канала к 256/(1 + a) уровням яркости :roll:
А если же «водяной» знак имеет прозрачность от 129 и выше — то он уже ни фига не водяной, поскольку виден лучше, чем то, что под ним…

Кстати, раздельноканальных знаков пока что ни разу вживую не встречал.
Да и как-то не верится, что они найдут сколько-нибудь широкое применение — в глазах же рябить будет :hmm:
И, да — сдаётся мне, что это всё равно не поможет: отдельный канал можно с неплохой точностью восстановить, вычтя из изображения метку, помимо RGB, в каком-нибудь YIQ-пространстве, а потом составив систему трёх уравнений с тремя неизвестными.
Аватара пользователя
Revent
experienced hunter
experienced hunter
Сообщения: 127
Зарегистрирован: 06 май 2008, 14:46

Re: Векторный рисунок в XaraX

Сообщение Revent »

Нет, ну вы реальные спецы. Удачи вам в удалении водяных знаков с арта девиантарта.
Аватара пользователя
Shnatsel
tech support
tech support
Сообщения: 1996
Зарегистрирован: 16 май 2008, 18:16
FurSpecies: лев
Откуда: Moscow
Контактная информация:

Re: Векторный рисунок в XaraX

Сообщение Shnatsel »

Я наконец-то нашёл короткое и ясное объяснение, как сделать контур варьирующейся толщины в Inkscape: http://tucsonlabs.com/2008/10/24/brushes-in-inkscape/

Вооружившись этим знанием, можно использовать бесплатный Inkscape вместо крякнутой Xara. При обводке разница между редакторами вряд ли будет заметна.
It's the Circle of Life
And it moves us all
Through despair and hope
Through faith and love
Ответить