单一像素 RGB 与 YUV 转换计算公式
简介
从 FFmpeg 读取视频帧,无论是 RGB 格式或 YUV(YUV420、NV12) 转换到另一种格式都可以通过 SwsContext 系列方法转换,但是使用 CUDA 处理图像时需要单独处理每一像素,在 YUV 与 RBG 间互相转换。
转换代码
YUV 转 RBG
1 | public void YuvToRgb(int Y, int U, int V) |
RBG 转 YUV
1 | public void RgbToYuv(int R, int G, int B) |
相关问题
YUV 默认都是 0 时显示绿色
调用方法 YuvToRgb(0, 0, 0) 获取到值:
R:-179.456 - G:135.45984 - B:-226.816
RGB 取值范围为正整数 0 ~ 255,所以显示为:
R:0 - G:135 - B:0
#008700
设置 YUV 为黑色
设置 Y = 0; U = 128; V = 128;