Градиенты при сохранении в JPG (не ресайз)
hiren 09 Mar 2016
По поводу вопроса в http://www.penta-clu...25#entry1878925
Раскопал причину. Причина в изменении цветового пространсва в самом JPG
По умолчанию идёт :
Цветовое пространство : YUV
Субдискретизация насыщенности : 4:4:4
с уменьшением до 4:2:0 при сильном сжатии.
Эти "ступеньки" пропадают если использовать для JPG
Цветовое пространство : RGB
Субдискретизация насыщенности : 4:4:4
Например если открыть TIFF в FastStone и в настройках сохраниения
в JPG выбрать RGB
Раскопал причину. Причина в изменении цветового пространсва в самом JPG
По умолчанию идёт :
Цветовое пространство : YUV
Субдискретизация насыщенности : 4:4:4
с уменьшением до 4:2:0 при сильном сжатии.
Эти "ступеньки" пропадают если использовать для JPG
Цветовое пространство : RGB
Субдискретизация насыщенности : 4:4:4
Например если открыть TIFF в FastStone и в настройках сохраниения
в JPG выбрать RGB
hiren 09 Mar 2016
Так будут ступеньки в градиенте
Так ступенек не будет
К сожалению фотошоп не даёт в настройках сохранения JPG выбрать цветового пространства и делает эти ступеньки.
Если кто найдет возможность выйти в скрытые настройки - напишите.
А пока придётся каждый файл с градиентами прогонять через цепочку PS - TIFF\PSD - FastStone - RGB-Jpeg
АНДРЕЙ Л. 09 Mar 2016
Schwanz 09 Mar 2016
В фотошопе при использовании «save for web» эта самая субдискретизация наступает при качестве <= 50%
что я делаю не так, если никогда их не получал?
фотошоп не даёт в настройках сохранения JPG выбрать цветового пространства и делает эти ступеньки
hiren 10 Mar 2016
Ну как бы в ФШ всё делается зарание, и битность и цветовое пространство
Убедится можно посмотрев свойства JPG с помощью Media Info (хотя тот ошибочно именует его YUV)
что я делаю не так, если никогда их не получал?
https://ru.wikipedia.org/wiki/YCbCr
YCbCr, Y′CbCr, или Y Pb/Cb Pr/Cr, также пишется как Y'CBCR или YCBCR - семейство цветовых пространств, которые используются для передачи цветных изображений в компонентном видео и цифровой фотографии.
Y' - компонента яркости, CB и CR являются синей и красной цветоразностными компонентами. Y' (с апострофом) отличается от Y, которой обозначают яркость без предыскажения. Апостроф означает, что интенсивность света кодируется нелинейно с помощью гамма-коррекции.
Y'CbCr не является абсолютным цветовым пространством, скорее, это способ кодирования информации сигналов RGB. Для систем отображения используются сигналы основных цветов RGB (красный, зелёный и синий). Эти сигналы не являются эффективными для хранения и передачи изображений, так как они имеют большую избыточность. Поэтому перевод в систему Y'CbCr позволяет передать информацию о яркости с полным разрешением, а для цветоразностных компонент произвести субдискретизацию, то есть выборку с уменьшением числа передаваемых элементов изображения, так как человеческий глаз менее чувствителен к перепадам цвета. Это повышает эффективность системы, позволяя уменьшить поток видеоданных. Значение, выраженное в Y'CbCr будет предсказуемо, если первично использовались сигналы основных цветов RGB.
========================================================
Выделено важное, идёт уменьшение числа цветов. Если исходное количество оттенков укладывается в YCbCr
то глазом разницы не заметно будет.
Если не укладывается, то возможно что и тогда разницы не будет заметно.
Но иногда бывает попадается картинка, на которой есть оттенки выходящие за рамки YCbCr
и которые при этом заметны глазу. (см. фото в Девушках пентаклуба на синем фоне)
В таких случаях лучше не использовать YCbCr, а лучше честный RGB способ записи информации.
Платой за это будет увеличение размера картинки.
Schwanz 10 Mar 2016
Значит у Вас изначально фото не содержит оттенков, выходящих за пределы цветового пространства, закодированного с помощью YCrCb
karimar 10 Mar 2016
Schwanz (10 March 2016 - 05:42) писал:
или же я просто никогда не сжимаю в YCrCb? ))
(начиная с камеры, проявщика, ФШ, просмотрщика ... везде стоит цветовое пространство sRGB, а как оно там что сжимает/пережимает ... хз)
Сообщение отредактировал karimar: 10 March 2016 - 08:51
Ivan_jg 10 Mar 2016
(начиная с камеры, проявщика, ФШ, просмотрщика ... везде стоит цветовое пространство sRGB, а как оно там что сжимает/пережимает ... хз)
Ещё раз, ув. hiren, подчеркнул что это не имеет отношение к цветовому пространству, а только к способу его кодирования (представления).
Я это тоже всё замечал в те времена когда на Пенте были более жёсткие правила по размеру картинки и объёму файла. Я тогда начал экспериментировать с Фастстоун и тоже пришёл к выводу, что можно сделать: маленький файл - но с градиентом, либо больший файл с ровной заливкой цветом.
Сейчас я тоже как-то спокойно укладываюсь в размер 600 кБ и без градиента.
Сообщение отредактировал Ivan_jg: 10 March 2016 - 10:36
hiren 10 Mar 2016
Лично у меня ассоциация есть с режимами Стерео при сжатии звука в mp3
1. Стерео, битрейт выделяется на оба канала и перераспределяется между ними
(выгоден в случаях, когда каналы сильно отличаются, например первые альбомы Beatles)
2. Dual Chanel - битрейт делится пополам между каналами и они кодируются отдельно
3. Joint Stereo - кодируются не сами каналы а сумма и разность (L+R) (L-R)
(выгоден когда каналы в большей части совпадают, мало отличий)
WAV использует совершенно другой способ представления сигнала.
К примеру на записях скопированных с CD на PC
Это будет пакет данных в 16 бит каждые 1\44100 секунды описывающий значение амплитуды в каналах.
Но всё это Stereo, и на входе и на выходе имеем 2 канала,
но способ математического представления даже внутри мр3 может быть разный.
Так и со способами математического представления цвета внутри JPG
Он может быть разным. Фотошоп сохраняет используя YCrCb способ.
Какие-то другие программы могут использовать RGB способ в качестве альтернативы.
1. Стерео, битрейт выделяется на оба канала и перераспределяется между ними
(выгоден в случаях, когда каналы сильно отличаются, например первые альбомы Beatles)
2. Dual Chanel - битрейт делится пополам между каналами и они кодируются отдельно
3. Joint Stereo - кодируются не сами каналы а сумма и разность (L+R) (L-R)
(выгоден когда каналы в большей части совпадают, мало отличий)
WAV использует совершенно другой способ представления сигнала.
К примеру на записях скопированных с CD на PC
Это будет пакет данных в 16 бит каждые 1\44100 секунды описывающий значение амплитуды в каналах.
Но всё это Stereo, и на входе и на выходе имеем 2 канала,
но способ математического представления даже внутри мр3 может быть разный.
Так и со способами математического представления цвета внутри JPG
Он может быть разным. Фотошоп сохраняет используя YCrCb способ.
Какие-то другие программы могут использовать RGB способ в качестве альтернативы.
Ivan_jg 10 Mar 2016
hiren,
WAV это не сжатый формат, а mp3 всегда сжатый (хоть и с разной степенью). Поэтому сравнивать их не стоит.
В данном случае градиент появляется только на сжатых изображениях, так же как в mp3 зависит от степени сжатия. Просто в разных представлениях цвета (YCrCb, RGB и т.д.) сжатие происходит по разному (при равной степени сжатия).
WAV это не сжатый формат, а mp3 всегда сжатый (хоть и с разной степенью). Поэтому сравнивать их не стоит.
В данном случае градиент появляется только на сжатых изображениях, так же как в mp3 зависит от степени сжатия. Просто в разных представлениях цвета (YCrCb, RGB и т.д.) сжатие происходит по разному (при равной степени сжатия).
hiren 11 Mar 2016
WAV это не сжатый формат
При наличии системного кодека внутри может быть тот же мр3
В данном случае градиент появляется только на сжатых изображениях
Ну, я не знаю задач, где бы понадобилось представлять цвет в YCrCb при сохранении в несжатые,
а точнее беспотерьные форматы (сжатие без потерь допустимо).
Но мне кажется, что отсечка диапазона цвета происходит именно при смене математического представления.
Ведь в том же RGB-JPG отсечки не происходит и градиент не рвёт.
А при сохранении в YCrCb-JPG происходит разрыв градиента на тестовом фото даже при максимальном
качестве в настройках и отключении субдискретизации цвета.
На основании этого я делаю вывод, о том, что какие-то оттенки выпадают из диапазона при
его представлении в YCrCb.
Ivan_jg 11 Mar 2016
WAV - это контейнер, в котором может находится звук как в несжатом, так и в сжатом виде.
Согласен, почитал сейчас стандарт, он допускает всякие форматы отличные от PCM, но я таких не встречал, наверное не очень распространены.
Ну, я не знаю задач, где бы понадобилось представлять цвет в YCrCb при сохранении в несжатые,
YCrCb применятся в несжатом видео, а как он к фотографии, я честно говоря не разбирался.
hiren 11 Mar 2016
как он к фотографии, я честно говоря не разбирался.
Вот и я не особо в теме, а хотелось бы узнать как он влияет и как его выключить в фотошопе при случае.
Schwanz 12 Mar 2016
везде стоит цветовое пространство sRGB, а как оно там что сжимает/пережимает ... хз)
Потому что даже на искусственно моделируемых градиентах я ступеней постеризации никак не получу...
Ну, я не знаю задач, где бы понадобилось представлять цвет в YCrCb при сохранении в несжатые, а точнее беспотерьные форматы
karimar 12 Mar 2016
Schwanz (12 March 2016 - 02:51) писал:
Вы могли бы выслать мне оригинал (вернее, подготовленный, но несжатый файл) изображения с девушкой на синем фоне, на котором у вас вылезает обсуждаемая бяка?
Потому что даже на искусственно моделируемых градиентах я ступеней постеризации никак не получу...
Потому что даже на искусственно моделируемых градиентах я ступеней постеризации никак не получу...
по ссылке (примерно неделю она будет доступна) кадры с постановки света той съемки.
а именно пара равок + джипеги с них сконвертированные в С1 по умолчанию.
https://www.dropbox....dQOwDFKjha?dl=0
экзифы конечно на месте, фон рисовался Yongnuo YN-560 III с синим гелем и гридом (сотовой насадкой)
камера Sony А7 + Samyang 85/1.4 IF ED MC Aspherical при F2.0 (без защитных и каких-либо других фильтров)
Вот не делал ксжл я тогда кадров на ИСО большем чем ИСО50, есть ощущение что и в этом может быть дело...
Сообщение отредактировал karimar: 12 March 2016 - 13:04
Schwanz 12 Mar 2016
есть ощущение что и в этом может быть дело
Потом начинается интересное — что в фотошопе, что в С1 при сохранении в жпег имеем то, что имеем ) то есть сабж во всей красе (в шопе менее выражено), но и размер самого жпега интересен — при минимальном сжатии, то есть при качестве 100% размер не превышает 4 мб. (фастстоун, что интересно при тех же параметрах делает почти 9 мб с таким же рваным градиентом)
То есть внутри жпега осталась сплошная математика, а не картинка и эта математика при обратном восстановлении восстанавливается приблизительно.
Лекарство всё такое же — добавление шума. Всего 1% цветного юниформа и вуаля — размер жпега 12мб при 100% и никаких ступенек, либо использовать честный ргб, как предлагали выше (14мб на выходе).
Schwanz 12 Mar 2016
Чего?
UPD
достаточно оказалось и половины процента.
размер 6 мб, ступенек нет (почти нет, конечно... более-менее приемлемо)
в общем, если не хочется иметь конские размеры и прыгать из софта в софт, то можно играть с шумом, подбирая его количество экспериментально, потом сделать несколько экшенов на все случаи.
donvostok 12 Mar 2016
достаточно оказалось и половины процента.
Сообщение отредактировал donvostok: 12 March 2016 - 19:05
karimar 12 Mar 2016
Schwanz (12 March 2016 - 18:24) писал:
UPD
достаточно оказалось и половины процента.
размер 6 мб, ступенек нет (почти нет, конечно... более-менее приемлемо)
достаточно оказалось и половины процента.
размер 6 мб, ступенек нет (почти нет, конечно... более-менее приемлемо)
кста и представленное вами тут все так же плачевно:
http://www.penta-clu...ost__p__1882861
только еще фон стал рыхлым...
Сообщение отредактировал karimar: 12 March 2016 - 19:12
donvostok 12 Mar 2016
но по представленной вами тут картинке - все ксжл так же ужасно
hiren 13 Mar 2016
(фастстоун, что интересно при тех же параметрах делает почти 9 мб с таким же рваным градиентом)
Сообщение отредактировал hiren: 13 March 2016 - 02:16
hiren 13 Mar 2016
Лекарство всё такое же — добавление шума.
А как быть если градиент естественный, ведь шум должен быть определенного размера и точно оптимизирован по цвету...
Schwanz 13 Mar 2016
все так же плачевно: http://www.penta-clu...ost__p__1882861 только еще фон стал рыхлым
Ну так чего б ему что-то другое выдать. При всех равных математика-то одинаковая
Schwanz 13 Mar 2016
karimar 13 Mar 2016
Schwanz (13 March 2016 - 14:19) писал:
вы скачали или превью на дропбоксе смотрели?
развивая ваш метод, напрашивается скорее просто блюром по Гауссу пройтись по фону...
но млин я таки не понимаю почему эта гадость лезет. я ФШ один раз из 1000 открываю, обхожусь С1 ...
Сообщение отредактировал karimar: 13 March 2016 - 15:21
Schwanz 13 Mar 2016
скачал как бэ.
совершенно точно видно, что мои примеры с дизерингом гораздо лучше, чем жпег без дизеринга из С1
я таки не понимаю почему эта гадость лезет
Schwanz 13 Mar 2016
развивая ваш метод, напрашивается скорее просто блюром по Гауссу пройтись по фону