某些特定场合我们会经常遇到yuv420格式的视频文件,这种视频帧无法直接用于opencv,故而,需要进行格式转换;幸运的是,opencv提供了rgb到yuv420的格式转换函数;下面给出基本用法;
函数1:读取avi格式的视频文件,转换成Yuv420格式,并写入文件;
void WriteYuv()
{
cv::VideoCapture vc;
bool flag = vc.ope...
分类:
其他好文 时间:
2014-08-02 23:32:14
阅读次数:
1266
YV12和NV12都是YUV420平面格式中的一种,其中YV12格式在我所接触的项目中使用得比较多,而NV12是Intel制定的的格式,在Intel的平台显示和支持性能最值,NV12 是用于 DirectX VA 的首选 4:2:0 像素格式。 关于YV12和NV12的内存布局格式说明如下:1.Y....
分类:
其他好文 时间:
2014-07-22 22:46:32
阅读次数:
6160
本文用Java创建UI并联合JNI层操作surface来直接显示yuv数据(yv12),开发环境为Android 4.4,全志A23平台。
package com.example.myyuvviewer;
import java.io.File;
import java.io.FileInputStream;
import android.app.Activity;
import androi...
分类:
移动开发 时间:
2014-07-14 16:12:42
阅读次数:
562
前一篇最后 我们说了一个直接将yuv转成jpg的函数 但是转换没有成功 原函数是yuv420转jpg的 研究了下发现
yuv420隔行扫描的的序列是这样的
YYYY
YYYY
UVUV
而yuv422的隔行扫描的序列是这样的
YU YV YU YV YU YV
所以将函数作如下修改
static int put_jpeg_yuv420p_memory(unsigned char *...
分类:
移动开发 时间:
2014-06-27 23:21:17
阅读次数:
298
我们如果是在在RGB视频上画图(直线,矩形等),一般采用双缓冲区继续,使用内存MemoryDC,来实现画的图形在视频上显示不闪烁的功能,但是我们知道用RGB显示视频都是使用GDI进行渲染,这样很耗CPU,那么我们能不能在YUV上进行视频渲染呢,答案是肯定的,使用ddraw直接显示yuv就ok了,可以支持yuv422和yuv420的直接使用显卡显示,不耗CPU,但是我们在使用ddraw显示时,然后在...
分类:
其他好文 时间:
2014-06-22 07:33:08
阅读次数:
400
因为在研究车牌识别算法(plr),遇到了算法 处理的格式问题,可分三个常用格式:0:rgb1:bgr2:yuv422——需要注意的是,这里为啥选yuv422做识别,当然还可选yuv444,最坏打算可选yuv420,主要是考虑颜色识别效果 R代表红,red; G代表绿,green; B代表蓝,b...
分类:
其他好文 时间:
2014-06-18 22:11:01
阅读次数:
228
RGB to YUV420 原代码: RGB2YUV.CPP文件RGB to YUV420 原代码:
RGB2YUV.CPP文件#include #include #include #include//转换矩阵#define MY(a,b,c) (( a*
0.2989 + b* 0.5866 + ...
分类:
其他好文 时间:
2014-06-05 18:55:48
阅读次数:
397
在做android摄像头捕获时,发现从android摄像头出来的原始视是逆时针旋转了90度的,所以须要把它顺时针旋转90。android视频支持的是NV21格式,它是一种YUV420的格式。当然,始果你用的是android
sdk的话,当中image就提供这个能力。可是我是在ndk下开发,没有找到....
分类:
其他好文 时间:
2014-05-26 20:56:37
阅读次数:
297
YUV420数据和字符信息如何利用滤镜方法进行编码?我希望用ffmpeg中的filter方法,把YUV420数据和字符信息一起编码,该怎么办呢?本人目前只实现了把yuv420的数据进行h.264的编码了。本人成功实现利用ffmpeg中的滤镜filter功能,在码流中进行字符叠加,太不容易了!本人使用...
分类:
其他好文 时间:
2014-05-17 17:59:26
阅读次数:
236
前面提到了YV12转RGB的各种实现方法和优化方法,主要是CPU上的实现。本文主要介绍基于GPU的YV12转RGB的实现。1.
基于OpenGL的实现利用OpenGL
shader实现将YV12转RGB,将Y、U、V分量数据作为纹理数据,并构造YUV转RGB的shader代码,最终纹理数据在shad...
分类:
其他好文 时间:
2014-05-07 21:20:55
阅读次数:
518