←  Цифровая обработка изображений

Форумы Пента-клуба

»

Градиенты при сохранении в 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
Изменить

 фотография donvostok 09 Mar 2016

Просмотр сообщенияhiren сказал:

Раскопал причину
Так, стоп: протрезвею - разберусь.
Изменить

 фотография hiren 09 Mar 2016

Прикрепленное изображение
Так будут ступеньки в градиенте

Прикрепленное изображение
Так ступенек не будет

К сожалению фотошоп не даёт в настройках сохранения JPG выбрать цветового пространства и делает эти ступеньки.
Если кто найдет возможность выйти в скрытые настройки - напишите.
А пока придётся каждый файл с градиентами прогонять через цепочку PS - TIFF\PSD - FastStone - RGB-Jpeg
Изменить

 фотография АНДРЕЙ Л. 09 Mar 2016

Просмотр сообщенияhiren сказал:

К сожалению фотошоп не даёт в настройках сохранения JPG выбрать цветового пространства и делает эти ступеньки.
Ну как бы в ФШ всё делается зарание, и битность и цветовое пространство
Прикрепленное изображение
Изменить

 фотография Schwanz 09 Mar 2016

В фотошопе при использовании «save for web» эта самая субдискретизация наступает при качестве <= 50%

Просмотр сообщенияhiren сказал:

фотошоп не даёт в настройках сохранения JPG выбрать цветового пространства и делает эти ступеньки
что я делаю не так, если никогда их не получал?
Изменить

 фотография hiren 10 Mar 2016

Просмотр сообщенияАНДРЕЙ Л. сказал:

Ну как бы в ФШ всё делается зарание, и битность и цветовое пространство
Речь не о профиле, а о способе сохранения RGB пространства внутри JPG, по умолчанию используется YCbCr способ кодирования RGB пространства.
Убедится можно посмотрев свойства JPG с помощью Media Info (хотя тот ошибочно именует его YUV)

Просмотр сообщенияSchwanz сказал:

что я делаю не так, если никогда их не получал?
Значит у Вас изначально фото не содержит оттенков, выходящих за пределы цветового пространства, закодированного с помощью YCrCb

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

Просмотр сообщенияhiren сказал:

Значит у Вас изначально фото не содержит оттенков, выходящих за пределы цветового пространства, закодированного с помощью YCrCb
или же я просто никогда не сжимаю в YCrCb? ))
Изменить

 фотография karimar 10 Mar 2016

Просмотр сообщенияSchwanz (10 March 2016 - 05:42) писал:

или же я просто никогда не сжимаю в YCrCb? ))
так и я вроде как тоже, однако ...
(начиная с камеры, проявщика, ФШ, просмотрщика ... везде стоит цветовое пространство sRGB, а как оно там что сжимает/пережимает ... хз)
Сообщение отредактировал karimar: 10 March 2016 - 08:51
Изменить

 фотография Ivan_jg 10 Mar 2016

Просмотр сообщенияkarimar сказал:

(начиная с камеры, проявщика, ФШ, просмотрщика ... везде стоит цветовое пространство 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 способ в качестве альтернативы.
Изменить

 фотография Ivan_jg 10 Mar 2016

hiren,

WAV это не сжатый формат, а mp3 всегда сжатый (хоть и с разной степенью). Поэтому сравнивать их не стоит.
В данном случае градиент появляется только на сжатых изображениях, так же как в mp3 зависит от степени сжатия. Просто в разных представлениях цвета (YCrCb, RGB и т.д.) сжатие происходит по разному (при равной степени сжатия).
Изменить

 фотография hiren 11 Mar 2016

Просмотр сообщенияIvan_jg сказал:

WAV это не сжатый формат
Это неточное утверждение. WAV - это контейнер, в котором может находится звук как в несжатом, так и в сжатом виде.
При наличии системного кодека внутри может быть тот же мр3

Просмотр сообщенияIvan_jg сказал:


В данном случае градиент появляется только на сжатых изображениях

Ну, я не знаю задач, где бы понадобилось представлять цвет в YCrCb при сохранении в несжатые,
а точнее беспотерьные форматы (сжатие без потерь допустимо).
Но мне кажется, что отсечка диапазона цвета происходит именно при смене математического представления.
Ведь в том же RGB-JPG отсечки не происходит и градиент не рвёт.
А при сохранении в YCrCb-JPG происходит разрыв градиента на тестовом фото даже при максимальном
качестве в настройках и отключении субдискретизации цвета.
На основании этого я делаю вывод, о том, что какие-то оттенки выпадают из диапазона при
его представлении в YCrCb.
Изменить

 фотография Ivan_jg 11 Mar 2016

Просмотр сообщенияhiren сказал:

WAV - это контейнер, в котором может находится звук как в несжатом, так и в сжатом виде.

Согласен, почитал сейчас стандарт, он допускает всякие форматы отличные от PCM, но я таких не встречал, наверное не очень распространены.

Просмотр сообщенияhiren сказал:

Ну, я не знаю задач, где бы понадобилось представлять цвет в YCrCb при сохранении в несжатые,

YCrCb применятся в несжатом видео, а как он к фотографии, я честно говоря не разбирался.
Изменить

 фотография hiren 11 Mar 2016

Просмотр сообщенияIvan_jg сказал:

как он к фотографии, я честно говоря не разбирался.

Вот и я не особо в теме, а хотелось бы узнать как он влияет и как его выключить в фотошопе при случае.
Изменить

 фотография Schwanz 12 Mar 2016

Просмотр сообщенияkarimar сказал:

везде стоит цветовое пространство sRGB, а как оно там что сжимает/пережимает ... хз)
Вы могли бы выслать мне оригинал (вернее, подготовленный, но несжатый файл) изображения с девушкой на синем фоне, на котором у вас вылезает обсуждаемая бяка?
Потому что даже на искусственно моделируемых градиентах я ступеней постеризации никак не получу...

Просмотр сообщенияhiren сказал:

Ну, я не знаю задач, где бы понадобилось представлять цвет в YCrCb при сохранении в несжатые, а точнее беспотерьные форматы
видео сплошь и рядом в 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

Просмотр сообщенияkarimar сказал:

есть ощущение что и в этом может быть дело
Не, из конвертера всё гладенько, если в 16-бит тиф.
Потом начинается интересное — что в фотошопе, что в С1 при сохранении в жпег имеем то, что имеем ) то есть сабж во всей красе (в шопе менее выражено), но и размер самого жпега интересен — при минимальном сжатии, то есть при качестве 100% размер не превышает 4 мб. (фастстоун, что интересно при тех же параметрах делает почти 9 мб с таким же рваным градиентом)
То есть внутри жпега осталась сплошная математика, а не картинка и эта математика при обратном восстановлении восстанавливается приблизительно.
Лекарство всё такое же — добавление шума. Всего 1% цветного юниформа и вуаля — размер жпега 12мб при 100% и никаких ступенек, либо использовать честный ргб, как предлагали выше (14мб на выходе).
Изменить

 фотография donvostok 12 Mar 2016

Просмотр сообщенияSchwanz сказал:

1% цветного юниформа
Чего?
Изменить

 фотография Schwanz 12 Mar 2016

Просмотр сообщенияdonvostok сказал:

Чего?
того ))

Прикрепленное изображение

UPD
достаточно оказалось и половины процента.
размер 6 мб, ступенек нет (почти нет, конечно... более-менее приемлемо)

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

 фотография donvostok 12 Mar 2016

Просмотр сообщенияSchwanz сказал:

достаточно оказалось и половины процента.
Отлично))) То, что надо. А то пугала фраза: "добавить шум".

Сообщение отредактировал donvostok: 12 March 2016 - 19:05
Изменить

 фотография karimar 12 Mar 2016

Просмотр сообщенияSchwanz (12 March 2016 - 18:24) писал:

UPD
достаточно оказалось и половины процента.
размер 6 мб, ступенек нет (почти нет, конечно... более-менее приемлемо)
не знаю что у вас на мониторе, но по представленной вами тут картинке - все ксжл так же ужасно, даже более ужасно чем из С1 если чесс...

кста и представленное вами тут все так же плачевно:
http://www.penta-clu...ost__p__1882861
только еще фон стал рыхлым...
Сообщение отредактировал karimar: 12 March 2016 - 19:12
Изменить

 фотография donvostok 12 Mar 2016

Просмотр сообщенияkarimar сказал:

но по представленной вами тут картинке - все ксжл так же ужасно
М-да. Я даже не глянул, а градиент-то есть во всей красе.
Изменить

 фотография hiren 13 Mar 2016

Просмотр сообщенияSchwanz сказал:

(фастстоун, что интересно при тех же параметрах делает почти 9 мб с таким же рваным градиентом)
Ну так чего б ему что-то другое выдать. При всех равных математика-то одинаковая.
Сообщение отредактировал hiren: 13 March 2016 - 02:16
Изменить

 фотография hiren 13 Mar 2016

Просмотр сообщенияSchwanz сказал:

Лекарство всё такое же — добавление шума.
Дизеринг помогает от разбивки градиента, если его используют при создании градиенда в ФШ.
А как быть если градиент естественный, ведь шум должен быть определенного размера и точно оптимизирован по цвету...
Изменить

 фотография Schwanz 13 Mar 2016

Просмотр сообщенияkarimar сказал:

все так же плачевно: http://www.penta-clu...ost__p__1882861 только еще фон стал рыхлым
вы скачали или превью на дропбоксе смотрели?

Просмотр сообщенияhiren сказал:

Ну так чего б ему что-то другое выдать. При всех равных математика-то одинаковая
шоповский и из С1 меньше стоуновского.
Изменить

 фотография Schwanz 13 Mar 2016

Просмотр сообщенияkarimar сказал:

даже более ужасно чем из С1 если чесс
не может такого быть!

вот С1 (кроп)

Прикрепленное изображение

вот с дизерингом

Прикрепленное изображение
Изменить

 фотография karimar 13 Mar 2016

Просмотр сообщенияSchwanz (13 March 2016 - 14:19) писал:

вы скачали или превью на дропбоксе смотрели?
скачал как бэ...
развивая ваш метод, напрашивается скорее просто блюром по Гауссу пройтись по фону...

но млин я таки не понимаю почему эта гадость лезет. я ФШ один раз из 1000 открываю, обхожусь С1 ...
Сообщение отредактировал karimar: 13 March 2016 - 15:21
Изменить

 фотография Schwanz 13 Mar 2016

Просмотр сообщенияkarimar сказал:

скачал как бэ.
тогда мне непонятны ваши претензии.
совершенно точно видно, что мои примеры с дизерингом гораздо лучше, чем жпег без дизеринга из С1

Просмотр сообщенияkarimar сказал:

я таки не понимаю почему эта гадость лезет
так объяснил же автор топика
Изменить

 фотография Schwanz 13 Mar 2016

Просмотр сообщенияkarimar сказал:

развивая ваш метод, напрашивается скорее просто блюром по Гауссу пройтись по фону
это не развивая, а в корне наоборот )
Изменить