您好,欢迎来到百家汽车网。
搜索
您的当前位置:首页RGB与YUV转换及代码

RGB与YUV转换及代码

来源:百家汽车网

1. 转换公式

  • YUV(256 级别) 可以从8位 RGB 直接计算:
    Y = 0.299 R + 0.587 G + 0.114 B
    U = - 0.1687 R - 0.3313 G + 0.5 B + 128
    V = 0.5 R - 0.4187 G - 0.0813 B + 128
  • 反过来,RGB 也可以直接从YUV (256级别) 计算:
    R = Y + 1.402 (Cr-128)
    G = Y - 0.34414 (Cb-128) - 0.71414 (Cr-128)
    B = Y + 1.772 (Cb-128)

2.Python code

import argparse
parser = argparse.ArgumentParser(description='RGB2YUV')
parser.add_argument('--R', type=int, default=0)
parser.add_argument('--G', type=int, default=0)
parser.add_argument('--B', type=int, default=0)
args = parser.parse_args()
R = args.R
G = args.G
B = args.B

print('%d,%d,%d'%(R,G,B))

Y = round(0.299 * R + 0.587 * G + 0.114 * B)
U = round(-0.1687 * R - 0.3313 * G + 0.5 * B + 128)
V = round(0.5 * R - 0.4187 * G - 0.0813 * B + 128)
print('{0x%x, 0x%x, 0x%x}'%(Y, U, V))

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baijiahaobaidu.com 版权所有 湘ICP备2023023988号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务