Link Copied
Thanks for example.
The IPP function ippiRGBToYCrCb422_8u_C3C2R convert image from RGB to YCrCb using formulas
// Y = 0.257*R' + 0.504*G' + 0.098*B' + 16
// Cr = 0.439*R' - 0.368*G' - 0.071*B' + 128
// Cb = -0.148*R' - 0.291*G' + 0.439*B' + 128
IPP CC domain has many color conversion function. Look please at ippcc.h or to ippiman.pdf to make sure that you use correct function. May be you should use ippiRGBToYUV422
// Y' = 0.299*R' + 0.587*G' + 0.114*B'
// U = -0.147*R' - 0.289*G' + 0.436*B' = 0.492*(B' - Y' )
// V = 0.615*R' - 0.515*G' - 0.100*B' = 0.877*(R' - Y' )
I've studied your example, it's wrong.
1. Example used src image B0,G0,R0. B1,G1,R1 not R0,G0,B0. R1,G1,B1
2. Example wanted convert src image RGB to dst image YUY2
Actually you used convert RGB to UYVY (ippiRGBToYCrCb422_8u_C3C2R) and UYVY to RGB (ippiYCrCb422ToRGB_8u_C2C3R).
Use functions ippiBGRToYCbCr422_8u_C3C2R( BGR to YUY2) and ippiYCbCr422ToBGR_8u_C2C3R(YUY2 to BGR ) and everything will be ok.
For more complete information about compiler optimizations, see our Optimization Notice.