Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.03.30;
Скачать: CL | DM;

Вниз

Сравнение пикселей   Найти похожие ветки 

 
Nemeziz   (2008-03-01 13:24) [0]

Народ возникло пара вопросов:
1. Как правильно сравнивать цвета пикселей ?
2. Отличается ли чем нибудь сравнение типа: (R1 + G1 + B1) = (R2 + G2 + B2) от RGB(R1, G1, B1) = RGB(R2, G2, B2) ?
3. Как при сравнении цвета пикселей можно добавить погрешность сравнения цвета.


 
MBo ©   (2008-03-01 13:38) [1]

точное совпадение - просто сравнивать TColor
приблизительное - выбрать метрику, например, евклидово расстояние в цветовом кубе RGB - корень из суммы квадратов разности составляющих
Sqrt(Sqr(r1-r2)+Sqr(g1-g2)+Sqr(b1-b2))
корень обычно можно и не извлекать.


 
Anatoly Podgoretsky ©   (2008-03-01 14:10) [2]

> Nemeziz  (01.03.2008 13:24:00)  [0]

R1 + G1 + B1 -  котлеты обратно корову не сделаешь


 
АИК   (2008-03-01 16:15) [3]

Незнаю как с RGB но вот так проще всего например так

procedure TForm1.Button1Click(Sender: TObject);
var
c1: TColor;
c2: Tcolor;
begin
c1:= Form1.Canvas.Pixels[1, 1];
c2:= Form1.Canvas.Pixels[1, 2];
Shape1.Brush.Color:=c1;
If c1 = c2 then label1.Caption:= "Ok";
end;


 
homm ©   (2008-03-01 18:28) [4]

> [2] Anatoly Podgoretsky ©   (01.03.08 14:10)
> R1 + G1 + B1 -  котлеты

запятая

> [2] Anatoly Podgoretsky ©   (01.03.08 14:10)
> обратно корову не сделаешь


 
korneley ©   (2008-03-01 18:43) [5]


> АИК   (01.03.08 16:15) [3]
> Незнаю как с RGB...

Надо узнать :) В [1] уже написано:"точное совпадение - просто сравнивать TColor"



Страницы: 1 вся ветка

Текущий архив: 2008.03.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.03 c
2-1204208944
Ultimate
2008-02-28 17:29
2008.03.30
Реестр


15-1203340039
ввв
2008-02-18 16:07
2008.03.30
Проверить компонент


2-1204133404
Рустам
2008-02-27 20:30
2008.03.30
dbgrid


2-1204542004
av-mari
2008-03-03 14:00
2008.03.30
Длинное имя?


15-1203177531
Alien1769
2008-02-16 18:58
2008.03.30
Интересная ошибка