When I do implement RGB2YCBCR on verilog. I saw several ways to convert RGB to YCBCR. Some of it are very simple. But others are quite complex.
For example, if we use
y = (r >> 2) + (g >> 1) + (b >> 2);
it is very easy to implement to hardware
But some people say that
y = (r*4899 + g*9617+ b*1868+ 8192) >> 14
is faster???
I don't know why they have this equation and why a complex equation better than a simple equation. And WHY THEY USE IT instead of that simple equation.
P/S: I saw that OpenCV also uses that complex one. Thank a lot!