Render.ru

Почему в Grayscale через LAB?

#1
Почему при конвертации изображения в Grayscale рекомендуют сперва картинку перевести в LAB, а уж потом из канала Lightness получить Grayscale? На чём видны преимущества этого метода?
 
#2
Не знаю, кто так рекомендует.

Этому вопросу у Маргулиса посвящена целая глава. Вкратце, там говорится, и как я это понял, что лучше это делать через внимательное рассмотрение версий картинки в CMYK, LAB и RBG.

Рассматривать нужно по каналам, и выбрать те каналы, в которых контраст и насыщенность деталями значимых областей картинки максимален. Не факт, что L-канал LAB-версии будет самым удачным в данном конкретном случае.
Потом можно покрутить смешение выбранных каналов, способами, кторые тебе милее, а уж потом переводить всё в Grayscale.
 
#3
В Lab'е в канале «L» при преобразовании из других пространств оказывается взвешенная яркость точек исходного цветного изображения. При преобразовании в greyscale через меню «Image > Mode» именно «L» оказывается в единственном канале Greyscale image. Однако, как справедливо заметил Shlyap'а, результат может оказаться не слишком хорошим, т.к. часть исходных каналов может нести в себе мало информации об изображении — например тонированные изображения, но тем не менее вносит свой вклад в «L», «разбавляя» контрастность изображения и внося ненужный шум.
 
#4
Кстати, о смешении каналов («Chanell mixer») — выбирая весовые коэффициенты исходных каналов и установив галку «Monochrome» удается получить вполне приличное GS-изображение даже из не слишком хороших оригиналов. Только потом нужно жать не Image > Mode > Greyscale, а выделить канал с изображением в отдельную Multichanell картинку и затем ее преобразовывать Image > Mode > Greyscale.
 
#5
По Маргулису, а он пишет опираясь на то, как это по умолчанию делает Photoshop, преобразование из RGB в Grayscale происходит по формуле G = R30% + G60% + B10%. L-канал с этим не имеет ничего общего, если я правильно понимаю.
В любой картинке есть участки разного цвета, L-составляющая которых одинакова. Эти участики при прямом преобразовании в Garayscale из L-канала окажутся совершенно не контрастными друг другу. Добавление информации из каналов CMYK- или RGB-версии можно добится контрастности этих участков, а можно и спрятать не нужные детали.

Хороший пример пришёл в голову: пожарная машина, стоящая на зелёной траве, а выше — голубое небо с облаками. Погляди в разные каналы разных версий и увидишь совершенно разные картинки. Какая нужна именно тебе именно сейчас — решай сам.
 
#6
IMHO, тов. Маргулис несколько ошибается:
при таком раскладе RGB серый (100;100;100) должен давать всегда 100*(0,3+0,6+0,1)=100, а о белом (255,255,255) вообще лучше не говорить :)
Тем не менее, в зависимости от присвоенного RGB-профиля — особенно ощутимую разницу дают например WideGamut RGB и Generic EBU Monitor Gamma=1.5: K=61% и 49% при профиле Greyscale (он тоже влияет на результат!) «grey gamma 2.2».
Причеми целевой Greyscale профиль влияет именно на K (процент растровой точки черной краски), но не на значениие L. На значение же L влияет исходный профиль RGB (CMYK) картинки. Все это подтверждает, что по крайней мере в седьмой версии Photoshop'а преобразование в Greyscale осуществляется не простым пересчетом RGB —> K, но с использованием CMS так, как я писАл выше, т.е. я не отрицаю того, что K получается с помощью взвешивания исходных значений RGB (CMYK), но сами эти коэффициенты — не постоянные величины, а зависят от исходного пространства растра и могут быть нелинейными (для CMYK).

Аналогично тов. Маргулис умалчивает о преобразовании в greyscale CMYK картинок.

P.S. Описанное Маргулисом были справедливым до введения в PhotoShop AdobeCMS (т.е. до 5-й версии), когда все RGB-растры были в одном цветовом пространстве и можно было использовать наперед заданные значения коэффициентов. Однако сейчас, я по крайней мере, проверить это не имею возможности.
 
#7
> когда все RGB-растры были в одном цветовом пространстве и можно было использовать наперед заданные значения коэффициентов.

Возможно, так и есть. Но общее правило, в общем и целом, сохраняется: по умолчанию Photosho-ом при переводе в Grayscale за основу берётся G-канал, во вторую очередь R, и лишь небольшой довесок B.
А это не универсально подходит ко всем картинкам (контекстам).
Словом, перевод в Grayscale цветной картинки — операция, требующая не меньшего к себе внимания, чем перевод в CMYK. Однозначно.
 
#8
> при таком раскладе RGB серый (100;100;100) должен давать всегда 100*(0,3+0,6+0,1)=100

Ты не верно понял. Проценты в данном случае это весовая доля, а не абсолютные проценты а-ля CMYK.
 
#9
возвращаясь к первоначальному вопросу, хочу заметить, что:

для получения grayscale можно воспользоваться тем, (RGB) что красный канал имеет лучшую деталировку, зеленый-хороший контраст (шум больше любит синий канал). Командой calculation в режиме normal делаем источником один из них, а приемником второй. Начав, например, с opacity красного канала 60% и зеленого 40%. Дальше - по вкусу. Это дает возможность получать лучшие изображения в градациях серого, нежели простые конвертации.
 
#10
> что красный канал имеет лучшую деталировку, зеленый-хороший контраст (шум больше любит синий канал)

Нет, всё очень контекстно зависимо.
Вот у меня перед глазами фото человека в крсной майке и синих шортах.
В G-канале что шорты, что майка тёмно-тёмно-серые и практически одинаковые.
В R-канале шёрты ТОЧНО такие же, как и в G-канале, а майка как раз R-каналом и рисуется, то есть сожержит детали. Но поскольку при преобразовании «в лоб» от этого канала берётся примерно 30%, то детали теряются весьма ощутимо.
B-канал, это верно, самый шусный (тем более, что картинка из JPG-а), но в ней красная майка — практически чёрное пятно, а синие шорты, таки, прорисовано.
Но самое примечательное, что в B-канале лучше всего прорисован рисунок линолеума, на которомстоит этот человек, пусть даже и не линолеум тут важен.

Так что, опять повторю, всё очень индивидуально, хотя, да, есть некоторые общие закономерности.

Мешать каналы можно, как я уже тоже говорил, можно любым способом, но то, что нужно мешать, а не преобразовывать «в лоб», это бесспорно.

Кстати, использование L-канала в качестве основы для G, от преобразования «в лоб» практически не отличается. То есть, не приемлемо. Особенно, когда контраст в картинке не яркостный, а тоновой (как в приведённом примере с майкой и шортами).

И вообще,
Д. Маргулис «Классическое руководство по цветокоррекции», С. 289—302.
 
#12
"Автор: Shlyapa (---.arc1.dialup.redcom.ru)
Дата: 03-06-2003 10:59

Не знаю, кто так рекомендует."
.
Не так уж и давно именно ты, Шляпа, с авторитетным видом это и заявлял. И именно на этом форуме.
 
#14
Не смеши. Мы оба знаем, что так оно и было, пока тебе Магулис в руки не попал.
 
#15
Свичтеть можешь сколько угодно, но пока ссылки не будет, всё это — 3,14-здёж
 
#16
2 Shlyapa

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

(сразу отвечаю, что у команды вычислений есть свои ограничения, но по существу вопроса они не важны)

и режимами наложения, так, что с божьей помощью, если синий канал так хорош, можно взять и синий канал. :)
 
#17
> Твои шорты и майка в данном случае - исключение

Ну ни фига себе исключение!!! У меня таких картинок сейчас в текущей работе на два разворота (каталог товаров).

> если синий канал так хорош, можно взять и синий канал. :)

Синий канал всегда плох своей повышенной шумностью. Но в зависимости от контекста, если это оправдано, ему можно дать больше веса в формировании Grayscale, чем обычные 10%.
 
#18
> Но в зависимости от контекста

Вот от контекста мы всегда и зависим, и в жизни и в Shope :)
Я совершенно согласен с твоей посылкой, которая гласит: "Всякий раз мы выбираем разумное решение в зависимости от обстоятельств".
(А каталог ты сотворяешь в Grayscale? ) :)
 
#19
> А каталог ты сотворяешь в Grayscale?

Нет, просто для примера я картинку я специально не выбирал, а взял ту, что была под рукой, и прикинул, как бы я её в Grayscale переводил, если бы нужно было.
 
#20
> А каталог ты сотворяешь в Grayscale?

Нет, просто для примера я картинку специально не выбирал, а взял ту, что была под рукой, и прикинул, как бы я её в Grayscale переводил, если бы нужно было.
 
Сверху