yuv2rgb
来源:互联网 发布:java日期选择控件 编辑:程序博客网 时间:2024/05/16 10:47
这里指的YUV实际是YcrCb了 8 ) YUV2RGB的转换公式本身是很简单的,但是牵涉到浮点运算,所以,如果要实现快速算法,算法结构本身没什么好研究的了,主要是采用整型运算或者查表来加快计算速度。
首先可以推导得到转换公式为:
R = Y + 1.4075 *(V-128)
G = Y – 0.3455 *(U –128) – 0.7169 *(V –128)
B = Y + 1.779 *(U – 128)
要用整型运算代替浮点运算,当然是要用移位的办法了,我们可以很容易得到下列算法:
u = YUVdata[UPOS] - 128;
v = YUVdata[VPOS] - 128;
rdif = v + ((v * 103) >> 8);
invgdif = ((u * 88) >> 8) +((v * 183) >> 8);
bdif = u +( (u*198) >> 8);
r = YUVdata[YPOS] + rdif;
g = YUVdata[YPOS] - invgdif;
b = YUVdata[YPOS] + bdif;
为了防止出现溢出,还需要判错计算的结果是否在0-255范围内,做类似下面的判断。
if (r>255)
r=255;
if (r<0)
r=0;
- YUV2RGB
- yuv2rgb
- YUV2RGB
- YUV2RGB
- yuv2rgb
- yuv2rgb.c
- YUV2RGB总结
- yuv2rgb 优化
- 【数据压缩】yuv2rgb
- YUV2RGB Opencv
- RGB2YUV/YUV2RGB
- formula YUV2RGB RGB2YUV
- android yuv2rgb方案
- YUV2RGB实验报告
- 【数据压缩】RGB2YUV/YUV2RGB实验报告
- 关于YUV2RGB的2篇文章(ZZ)
- 实验一:彩色空间转换(YUV2RGB)
- 《数据压缩》实验报告一·YUV2RGB实验
- 安卓事件处理1之监听器盘点
- 黑马程序员——IO流1
- 同事给的建议——我要好好保存,说不定能提醒一下懒惰到极致的我
- matlab中寻找矩阵元素并替换
- DataGridView中自定义控件不能设置属性的问题
- yuv2rgb
- 虚拟机安装10g rac的几点备忘
- IOS开发笔记 - 关于导航标题栏的颜色问题
- vector实现邻接表的两种方式
- loadrunner 工具的下载
- AJAX实现防止Session过期
- 2113 Secret Number
- 详解linux内存磁盘初始化技术
- activity的切换问题(activity与栈)