博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Rgb to Yuv,Tuv to Rgb转换(C# emgucv)
阅读量:7115 次
发布时间:2019-06-28

本文共 2391 字,大约阅读时间需要 7 分钟。

hot3.png

private void Rgb2Yuv(Image
img, Image
yImg, Image
uImg, Image
vImg) { // Y= 0.3*R + 0.59*G + 0.11*B // U= (B-Y) * 0.493 // V= (R-Y) * 0.877 double Y = 0.0, U = 0.0, V = 0.0; for (int h = 0; h < img.Height; ++h) { for (int w = 0; w < img.Width; ++w) { //Y = 0.11 * img.Data[h, w, 0] + 0.59 * img.Data[h, w, 1] + 0.3 * img.Data[h, w, 2]; //U = (img.Data[h, w, 0] - Y) * 0.493; //V = (img.Data[h, w, 2] - Y) * 0.877; Y = 0.257 * img.Data[h, w, 0] + 0.504 * img.Data[h, w, 1] + 0.098 * img.Data[h, w, 2] + 16; U = 0.148 * img.Data[h, w, 0] - 0.291 * img.Data[h, w, 1] + 0.439 * img.Data[h, w, 2] + 128; V = 0.439 * img.Data[h, w, 0] - 0.368 * img.Data[h, w, 1] - 0.071 * img.Data[h, w, 2] + 128; yImg.Data[h, w, 0] = Y; uImg.Data[h, w, 0] = U; vImg.Data[h, w, 0] = V; } } } //Y = 0.257R + 0.504G + 0.098B + 16 //U = 0.148R - 0.291G + 0.439B + 128 //V = 0.439R - 0.368G - 0.071B + 128 //B = 1.164(Y - 16) + 2.018(U - 128) //G = 1.164(Y - 16) - 0.813(V - 128) - 0.391(U - 128) //R = 1.164(Y - 16) + 1.596(V - 128) private void Yuv2Rgb(Image
yImg, Image
uImg, Image
vImg, Image
img) { //R = Y + 1.4075 *(V-128) // G = Y – 0.3455 *(U –128) – 0.7169 *(V –128) // B = Y + 1.779 *(U – 128) double Y = 0.0, U = 0.0, V = 0.0; for (int h = 0; h < img.Height; ++h) { for (int w = 0; w < img.Width; ++w) { Y = yImg.Data[h, w, 0]; U = uImg.Data[h, w, 0]; V = vImg.Data[h, w, 0]; //byte R = (byte)(Y + 1.4075 *(V-mid)); //byte G = (byte)(Y-0.3455 *(U-mid)-0.7169*(V-mid)); //byte B = (byte)(Y + 1.779 *(U-mid)); byte B = (byte)(1.164 * (Y - 16) + 2.018 * (U - 128)); byte G = (byte)(1.164 * (Y - 16) - 0.813 * (V - 128) - 0.391 * (U - 128)); byte R = (byte)(1.164 * (Y - 16) + 1.596 * (V - 128)); if (B > 255) B = 255; if (B < 0) B = 0; if (G > 255) G = 255; if (G < 0) G = 0; if (R > 255) R = 255; if (R < 0) R = 0; img.Data[h, w, 0] = B; img.Data[h, w, 1] = G; img.Data[h, w, 2] = R; ; } } }

转载于:https://my.oschina.net/u/221120/blog/741516

你可能感兴趣的文章
python时间模块小结
查看>>
BZOJ3997:[TJOI2015]组合数学(DP,Dilworth定理)
查看>>
C# Application.DoEvents() 处理队列消息,防界面假死。
查看>>
python基础===python实现截图
查看>>
Django模型
查看>>
Quartus中代码字体大小的调整方法
查看>>
配置url防盗链、目录权限访问控制Directory、文件访问权限控制FilesMatch
查看>>
【spring boot】4.spring boot配置多环境资源文件
查看>>
关于datepicker如何获取月中日长
查看>>
神经网络练习四-ex4
查看>>
通用for_each清理容器模板函数
查看>>
MVC5发布到IIS,出现HTTP 错误 404.0 - Not Found的完美解决方法
查看>>
c# 与 java 语法异同
查看>>
cleanup failed because the file not under version control问题的解决
查看>>
html+css+js实现滑动导航条(转载)
查看>>
BZOJ 2039人员雇佣
查看>>
angular ng-repeat出来的数据 每条修改数据后返回给接口 如何取到每个对应修改的值...
查看>>
nodeJs express mongodb 建站(linux 版)
查看>>
java使用websocket,并且获取HttpSession,源码分析
查看>>
odoo开发笔记 -- 视图继承扩展
查看>>