GrayScale algoritmus

 

Jsou mi známy 3 metody konverze barevného obrazku do šedivého.

 

Lightness method 

Průměrování nejmenší a nejvyšší barvy

max = Math.Max(r, Math.Max(g, b));

min = Math.Min(r, Math.Max(g, b));

c = (max + min) >> 1;   -- toto je delení 2. Používám tuto metodu kvůli tomu, že nemusím používat dělení ale bitový posuv.

 

Average method

Průměrování všech barev

c = (b + g + r) / 3;

b = c;

g = c;

r = c;

 

Luminosity method

Průměrování všech barev s přihlédnutím k citlivosi lidského oka k jednotlivým barvám. Lidské oko nejintenzivněji vnímá zelenou.

c = 0.21 R + 0.72 G + 0.07 B

 

Originální obrázek

GrayScale

 

Lightness

GrayScale

 

Average

GrayScale

 

Luminosity

GrayScale

 

 





Kontakt M: 724 085 607 E: info@bura.cz

© Bura.cz