首页 > 解决方案 > RGB 到 YUV 的转换方程

问题描述

我试图理解 RGB 到 YUV 的转换方程。我从https://sistenix.com/rgb2ycbcr.html得到了一些实现。

在此处输入图像描述

在此处输入图像描述 但我不明白如何制作如下,尤其是关于 (4) 中的 R?

R<<6 + R<<1 ?

(65.7388*R)/256 如何表示为 R<<6 + R<<1 ?

标签: verilog

解决方案


你缺少一部分,(65.7388*R)/256变成(R<<6 + R<<1)>>8

这些步骤实际上非常简单:逼近最接近的整数(65.7388*R)/256(66*R)/256可以写成(64*R + 2*R)/256. 乘以 2 等于向左移动,因此2*R变为R<<164*R变为R<<6。同理,除以 2 等于右移,因此/256变为>>8


推荐阅读