Форум: "Начинающим";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];
ВнизКак узнать яркость пикселя? Найти похожие ветки
← →
WFS (2007-11-03 12:35) [0]Необходимо выполнить фильтрацию изображения. Для этого нужно знать яркость каждого пикселя в изображении
← →
antonn © (2007-11-03 12:40) [1]
Var cMax,cMin : integer;
begin
cMax := max( max(R,G), B);
cMin := min( min(R,G), B);
L := round( ( ((cMax+cMin)*240) + 255 )/(2*255) );
L - яркость, RGB - каналы tcolor (их можно узнать через GetRValue()/GetGValue()/GetBValue() соответственно)
вот :)
← →
oxffff © (2007-11-03 12:41) [2]У монитора тоже яркость тожно подстраивать.
Как быть?
← →
turbouser © (2007-11-03 12:41) [3]
> WFS (03.11.07 12:35)
Чего?? Яркость?
LOL Пацталом :)))
← →
oxffff © (2007-11-03 12:42) [4]
> antonn © (03.11.07 12:40) [1]
А еще есть alpha составляющая.
← →
turbouser © (2007-11-03 12:43) [5]
> antonn © (03.11.07 12:40) [1]
У пикселя нет "яркости".
← →
oxffff © (2007-11-03 12:43) [6]
> У пикселя нет "яркости".
У него есть пиксельность.
← →
oxffff © (2007-11-03 12:45) [7]
> L := round( ( ((cMax+cMin)*240) + 255 )/(2*255) );
240? Это, что постоянная в системе СИ?
← →
turbouser © (2007-11-03 12:45) [8]
> oxffff © (03.11.07 12:43) [6]
Можно и так сказать :)
Всего-навсего точка определенного цвета )
← →
WFS (2007-11-03 13:02) [9]Я вот знаю, что цвет характеризуется тремя параметрами:
1. Цветовой тон (собственно цвет)
2.Чистота (оттенки, т.е примесь белым)
3. Яркость.
Насколько я понимаю, яркость характеризует степень отличия от черного.
Мне нужно эту яркость вычислить.
← →
Amoeba © (2007-11-03 17:11) [10]Яркость = 0.59*Зеленый + 0.3*Красный + 0.11*Синий
Коэффициенты отличаясь от 1/3 отражают неравномерность чувствительности глаза к разным участкам спектра.
← →
KilkennyCat (2007-11-03 17:54) [11]Я бы уточнил, человеческого глаза.
← →
antonn © (2007-11-03 19:14) [12]
> oxffff © (03.11.07 12:41) [2]
>
> У монитора тоже яркость тожно подстраивать.
> Как быть?
и у принтера тоже есть яркость, кого мучают вопросы не по существу, просьба убиться об стенку.
> turbouser © (03.11.07 12:41) [3]
>
> Чего?? Яркость?
> LOL Пацталом :)))
когда вылезешь, открой пайнт и посмотри в палитре, наряду с составляющими GRB там и констраст есть, и яркость, и оттенок...
> oxffff © (03.11.07 12:42) [4]
> А еще есть alpha составляющая.
умное слово сказал, да? у пикселя есть, в случае pf32bit, но к яркости пикселя это не имеет никакого отношения.
для умников, мерцающих гранями и своим языком без поодержки разумных доводов, советую ознакомиться с такой штукой, как HLS (а именно Оттенок/Яркость/Насыщенность)
← →
turbouser © (2007-11-03 19:58) [13]
> antonn © (03.11.07 19:14) [12]
У самого пиксела нет яркости.
pixel.color.brightness - вот оно :)
p.s.
Настроение все испортил :-)
← →
KilkennyCat (2007-11-03 20:05) [14]
> У самого пиксела нет яркости.
Если рассматривать один единственный пиксел, то у него ваще ничего нет.
← →
clickmaker © (2007-11-03 20:10) [15]> то у него ваще ничего нет
тогда он битый :)
← →
KilkennyCat (2007-11-03 20:18) [16]
> clickmaker © (03.11.07 20:10) [15]
и даже это нельзя сказать, не сравнив с другим.
← →
antonn © (2007-11-03 20:23) [17]
> turbouser © (03.11.07 19:58) [13]
>
>
> У самого пиксела нет яркости.
открой mspaint, выбери цвет на картинке. В меню сверху нажми "палитра"/"изменить палитру". Там будет кнопочка "Определить цвет >>". В расширевшемся окошке справа можно увидеть как значения с палитре RGB, так и значения HLS (в том числе есть поле "яркость"). Выходит у пикселя есть яркость? Может хватит чушь нести и буквоедством заниматься?
← →
turbouser © (2007-11-03 20:36) [18]
> antonn © (03.11.07 20:23) [17]
При чем тут паинт...
Нет у пикселя яркости. Нет и все. Вот у цвета пикселя - есть.
← →
antonn © (2007-11-03 21:11) [19]вот и я говорю - буквоедство.
← →
DrPass © (2007-11-03 21:59) [20]
> вот и я говорю - буквоедство.
+1. Лишь бы повыпендриваться...
← →
turbouser © (2007-11-03 22:16) [21]Да ну вас... Чего тут выпендриваться? У меня настроение с утра хорошее было,
радовался всему, показался смешным сабж - выразил свои эмоции :))
Буквоедство, блин..
← →
KilkennyCat (2007-11-03 22:48) [22]буква - тот же пиксел.
← →
oxffff © (2007-11-03 23:27) [23]
> antonn © (03.11.07 19:14) [12]
>
> > oxffff © (03.11.07 12:41) [2]
> >
> > У монитора тоже яркость тожно подстраивать.
> > Как быть?
>
> и у принтера тоже есть яркость, кого мучают вопросы не по
> существу, просьба убиться об стенку.
>
>
> > turbouser © (03.11.07 12:41) [3]
> >
> > Чего?? Яркость?
> > LOL Пацталом :)))
>
> когда вылезешь, открой пайнт и посмотри в палитре, наряду
> с составляющими GRB там и констраст есть, и яркость, и оттенок.
> ..
>
>
> > oxffff © (03.11.07 12:42) [4]
> > А еще есть alpha составляющая.
>
> умное слово сказал, да? у пикселя есть, в случае pf32bit,
> но к яркости пикселя это не имеет никакого отношения.
>
> для умников, мерцающих гранями и своим языком без поодержки
> разумных доводов, советую ознакомиться с такой штукой, как
> HLS (а именно Оттенок/Яркость/Насыщенность)
Дорогой друг.
Ваша реакция мне понятна.
Для начала очень рекомендую объяснить назначение 240, и откуда взялась эта цифра.
P.S.
Для того чтобы умерить ваш пыл и ваше тяфканье настоятельно рекомендую ознакомиться для начала Mathematics of Lighting.
Например в DirectX SDK.
P.P.S
Биться об стену?
Покажите пример.
← →
antonn © (2007-11-04 01:33) [24]
> oxffff © (03.11.07 23:27) [23]
>
> Дорогой друг.
> Ваша реакция мне понятна.
>
> Для начала очень рекомендую объяснить назначение 240, и
> откуда взялась эта цифра.
а не все ли равно? у канала RBG максимальное значение 255, у яркости максимальное 240.
Ну откройте пайнт, ну потыкайте, сразу куча вопросов отпадет...
← →
Германн © (2007-11-04 01:38) [25]
> KilkennyCat (03.11.07 17:54) [11]
>
> Я бы уточнил, человеческого глаза.
>
http://delphimaster.net/view/15-1194041440/
← →
oxffff © (2007-11-04 12:03) [26]
> antonn © (04.11.07 01:33) [24]
>
> > oxffff © (03.11.07 23:27) [23]
> >
> > Дорогой друг.
> > Ваша реакция мне понятна.
> >
> > Для начала очень рекомендую объяснить назначение 240,
> и
> > откуда взялась эта цифра.
>
> а не все ли равно? у канала RBG максимальное значение 255,
> у яркости максимальное 240.
>
> Ну откройте пайнт, ну потыкайте, сразу куча вопросов отпадет.
> ..
Открыл и что дальше. Откройте MSDN
Device-Independent Bitmaps
A device-independent bitmap (DIB) contains a color table. A color table describes how pixel values correspond to RGB color values, which describe colors that are produced by emitting light.
RGBQUAD
The RGBQUAD structure describes a color consisting of relative intensities of red, green, and blue.
typedef struct tagRGBQUAD {
BYTE rgbBlue;
BYTE rgbGreen;
BYTE rgbRed;
BYTE rgbReserved;
} RGBQUAD;
Когда сохраняется растр. То сохраняется цвет в формате RGB (ARGB).
А 240 ну никак не может увеличить яркость свечения пикселя на мониторе.
← →
MBo © (2007-11-04 12:25) [27]>WFS (03.11.07 13:02) [9]
>3. Яркость.
>Мне нужно эту яркость вычислить.
Для модели HLS уже подсказали - antonn © (03.11.07 12:40) [1], что совпадает с куском из
procedure ColorRGBToHLS из GraphUtil.pas
← →
antonn © (2007-11-04 12:32) [28]
> oxffff © (04.11.07 12:03) [26]
замучал флудить, попробуй не кочевряжиться, а почитать:
http://ru.wikipedia.org/wiki/HLS
← →
oxffff © (2007-11-04 12:38) [29]
> antonn © (04.11.07 12:32) [28]
>
> > oxffff © (04.11.07 12:03) [26]
>
> замучал флудить, попробуй не кочевряжиться, а почитать:
> http://ru.wikipedia.org/wiki/HLS
Может подумать.
Ты все же настоятельно читать не хочешь.
The RGBQUAD structure describes a color consisting of relative intensities of red, green, and blue.
← →
Sapersky (2007-11-04 12:40) [30]Необходимо выполнить фильтрацию изображения. Для этого нужно знать яркость каждого пикселя в изображении
А что это за фильтрация такая? Обычно фильтруют прямо по цветовым компонентам. Отсюда, видимо, и "LOL Пацталом".
у канала RBG максимальное значение 255, у яркости максимальное 240.
Максимальное на самом деле может быть любое. Hue (первый компонент HSV/HLS) часто ограничивают до 240, т.к. по-хорошему оно должно быть в диапазоне 0..360, но байта на 360 не хватает; а 240 ровно в 1.5 раза меньше (уменьшаются ошибки округления). Возможно, L в некоторых реализациях ограничивают "за компанию", хотя это не обязательно.
рекомендую ознакомиться для начала Mathematics of Lighting. Например в DirectX SDK.
Не знаю, какой у вас SDK, но в 8-м только про 3D.
Лучше, наверное, http://www.efg2.com
← →
oxffff © (2007-11-04 12:42) [31]
> antonn © (04.11.07 12:32) [28]
Может ты все же объяснить откуда взялось значение 240?
В приведенной тобой формуле и твоей ссылке про это ничего нет.
← →
antonn © (2007-11-04 12:44) [32]
> Может ты все же объяснить откуда взялось значение 240?
> Максимальное на самом деле может быть любое. Hue (первый
> компонент HSV/HLS) часто ограничивают до 240, т.к. по-хорошему
> оно должно быть в диапазоне 0..360, но байта на 360 не хватает;
> а 240 ровно в 1.5 раза меньше
← →
oxffff © (2007-11-04 12:46) [33]
> antonn © (04.11.07 12:44) [32]
Часто ограничивает кто?
Может тебе взлянуть в словарь и перевести relative intensities
← →
antonn © (2007-11-04 12:51) [34]
> Часто ограничивает кто?
[19]
засим заканчиваю говорить с любителями поспорить. нужно было - уже нашел бы.
http://www.firststeps.ru/mfc/winapi/commdia/r.php?15
← →
homm © (2007-11-04 12:58) [35]
> 0xffff ©
Идиот.
> turbouser ©
Буквоед.
> [29] oxffff © (04.11.07 12:38)
При чем здесь RGBQUAD structure? Ну попробуй пяткой затылок почесать то?
Один Антошка молодец :)
← →
homm © (2007-11-04 13:03) [36]> [29] oxffff © (04.11.07 12:38)
Ну дали тебе триугольник, говорят, найди синусы. Что ты ответишь? Что у триугольников нет синусов? Детский сад.
← →
oxffff © (2007-11-04 13:10) [37]
> antonn © (04.11.07 12:51) [34]
>
> > Часто ограничивает кто?
>
> [19]
> засим заканчиваю говорить с любителями поспорить. нужно
> было - уже нашел бы.
> http://www.firststeps.ru/mfc/winapi/commdia/r.php?15
Ты так и не ответил на вопрос кто ограничивает значение коэффициента в
240.
В диалоговом окне Цвет (Color), насыщенность и значения яркости должна быть в диапазоне 0 до 240, и значение оттенка должно быть в диапазоне 0 до 239.
А приводишь ссылки на диалоговое окно.
Тебе уже выше намекнули, что значение может быть произвольным.
И я тебе тоже намекаю на relative intensities.
> homm © (04.11.07 12:58) [35]
>
> > 0xffff ©
> Идиот.
Ну сюдя по тому, что твоих реплик не звучало в этой теме.
Я думаю модератору нужно обратить внимание на твое выражение.
По скольку ни доказательств, ни обсуждения.
Просто дешевый "бряк".
Что указывает на твое бескультурие и юность. Ну и глупость конечно же.
:)
← →
oxffff © (2007-11-04 13:14) [38]
> homm © (04.11.07 13:03) [36]
> > [29] oxffff © (04.11.07 12:38)
>
> Ну дали тебе триугольник, говорят, найди синусы. Что ты
> ответишь? Что у триугольников нет синусов? Детский сад.
А ты докажи ограничение коэффициента в 240.
А именно магический смысл этого 240.
← →
homm © (2007-11-04 13:17) [39]> По скольку ни доказательств, ни обсуждения.
> Просто дешевый "бряк".
Ты сам за меня все сказал, пример и объяснения я привел выше.
> А ты докажи ограничение коэффициента в 240.
> Максимальное на самом деле может быть любое. Hue (первый
> компонент HSV/HLS) часто ограничивают до 240, т.к. по-хорошему
> оно должно быть в диапазоне 0..360, но байта на 360 не хватает;
> а 240 ровно в 1.5 раза меньше (уменьшаются ошибки округления)
> . Возможно, L в некоторых реализациях ограничивают "за компанию",
> хотя это не обязательно.
← →
homm © (2007-11-04 13:20) [40]То, что ты ограничиваешь канал красного до 255 какой имеет магический смысл? Пишишь и не задумываешься…
А магический смысл в отм, что-бы уместиться в заданные рамки, а в случае с яркостью, еше и накладывавется смысл простого перевода в другие системы представления цвета.
Страницы: 1 2 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];
Память: 0.57 MB
Время: 0.039 c