832

YCbCr -> RGB (optimizari)

Trebuie sa scap de floating point in asta:Y = 0.2989*(double)aRGBMatrix[1][1][0] + 0.5866*(double)aRGBMatrix[1][1][1] + 0.1145*(double)aRGBMatrix[1][1][2];Cb = -0.1687*(double)aRGBMatrix[1][1][0] - 0.3312*(double)aRGBMatrix[1][1][1] + 0.5*(double)aRGBMatrix[1][1][2]+128;Cr = 0.5*(double)aRGBMatrix[1][1][0] - 0.4183*(double)aRGBMatrix[1][1][1] - 0.0816*(double)aRGBMatrix[1][1][2]+128;Y, Cb, Cr sunt de tip BYTE (unsigned char)aRGBMatrix este de asemenea de tip BYTE :)---Una din solutii ar fi sa inmultesc cu 10,000 si pe urma sa impart.Alta este sa inmultesc cu 256 si pe urma sa fac >> 8.Idei?! :)P.S.Scuze pentru copy/paste-ul aiurit :(Iata un copy/paste normal:http://rafb.net/p/gxskKz23.html------------Varianta la care m-am oprit (nimic original nu-mi vine in cap):http://rafb.net/p/RAcLh562.html
0