博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OpenCV YUV 与 RGB的互转(草稿)
阅读量:4638 次
发布时间:2019-06-09

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

YUV 转 RGB cv::Mat yuvImg;
/* //下面两行是我自己代码里用来构成YUV图像的数据,可以忽略 yuvImg.create(pInput->height*3/2, pInput->width, CV_8UC1);
memcpy(yuvImg.data, pInput->yuvPixels, pInput->width*pInput->height*3/2*sizeof(unsigned char));*/ cv::Mat rgbImg;  cv::cvtColor(yuvImg, rgbImg, CV_YUV2RGB_I420); //函数第三个参数需要视YUV图像格式而定 /*显示转化后的rgb图片*/ cv::namedWindow("new_img", CV_WINDOW_NORMAL); //图像自适应大小,否者会因为图像太大,看不全 cv::imshow("new_img", rgbImg); cv::waitKey(0); cv::cvDestroyWindow("new_img");
RGB 转 YUV

//RBG转YUV

Mat yuvImg;
cvtColor(rgbImg, yuvImg, CV_RGB2YUV_I420); //函数第三个参数需要视YUV图像格式而定

//这里注意,rgbImg的宽和高必须是2的倍数,否者会crash

 

一、YUV420格式

Y,后V,中间是U。其中的Y是w * h,U和V是w/2 * (h/2)

如果w = 4,h = 2,则:

yyyy

yyyy

uu

vv

内存则是:yyyyyyyyuuvv

需要占用的内存:w * h * 3 / 2

采样规律是:每个像素点都采样Y,寄数行采样1/2个U,不采样V,偶数行采样1/2个V,不采样U

转载于:https://www.cnblogs.com/snailgardening/p/opencv_yuv_rgb.html

你可能感兴趣的文章
和菜鸟一起学OK6410之ADC模块
查看>>
代理 模式
查看>>
[git] 细说commit (git add/commit/diff/rm/reset 以及 index 的概念)
查看>>
DOM Core和HTML DOM的区别
查看>>
SurfaceView+MediaPlay的bug们
查看>>
网络表示学习总结
查看>>
完成评论功能
查看>>
far和near
查看>>
Python爬虫实战四之抓取淘宝MM照片
查看>>
2015 Multi-University Training Contest 1
查看>>
C#判断一个字符串是否是数字或者含有某个数字
查看>>
SVN使用指南
查看>>
【转载】掌 握 3 C ‧ 迎 接 亮 丽 职 涯
查看>>
爬取网站附件
查看>>
java基础图形界面和IO系统
查看>>
javascript学习笔记
查看>>
hdu 3996
查看>>
python第三十九课——面向对象(二)之初始化属性
查看>>
python学习笔记之函数装饰器
查看>>
FEM计算2D瞬态热传导方程
查看>>