OpenCV 图形API(52)颜色空间转换-----将 NV12 格式的图像数据转换为 RGB 格式的图像

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

将图像从 NV12 (YUV420p) 色彩空间转换为 RGB。该函数将输入图像从 NV12 色彩空间转换到 RGB。Y、U 和 V 通道值的常规范围是 0 到 255。

输出图像必须是 8 位无符号三通道图像 CV_8UC3。

注意

函数的文字 ID 是 "org.opencv.imgproc.colorconvert.nv12torgb"

函数原型

cpp 复制代码
GMat cv::gapi::NV12toRGB 
(
 	const GMat &  	src_y,
	const GMat &  	src_uv 
) 	

参数

  • 参数 src_y:输入图像,8 位无符号单通道图像 CV_8UC1。
  • 参数 src_uv:输入图像,8 位无符号双通道图像 CV_8UC2。

代码示例

cpp 复制代码
#include <opencv2/gapi.hpp>
#include <opencv2/gapi/core.hpp>
#include <opencv2/gapi/imgproc.hpp>
#include <opencv2/opencv.hpp>

int main()
{
    // 假设我们有一个宽度为640像素,高度为480像素的图像
    int width  = 640;
    int height = 480;

    // 创建Y和UV平面的Mat对象
    cv::Mat yPlane( height, width, CV_8UC1 );           // Y 平面
    cv::Mat uvPlane( height / 2, width / 2, CV_8UC2 );  // UV 平面

    // 填充一些随机数据作为示例
    cv::randu( yPlane, cv::Scalar( 0 ), cv::Scalar( 255 ) );
    cv::randu( uvPlane, cv::Scalar( 0 ), cv::Scalar( 255 ) );

    // 定义G-API图
    cv::GMat src_y, src_uv;
    auto rgb = cv::gapi::NV12toRGB( src_y, src_uv );

    cv::GComputation comp( cv::GIn( src_y, src_uv ), cv::GOut( rgb ) );

    // 创建输出矩阵
    cv::Mat out_rgb;

    // 应用计算图并执行转换,指定使用默认的CPU后端
    comp.apply( cv::gin( yPlane, uvPlane ), cv::gout( out_rgb ), cv::compile_args( cv::gapi::kernels() ) );

    // 显示结果
    cv::imshow( "Converted RGB Image", out_rgb );
    cv::waitKey( 0 );

    return 0;
}

运行结果

相关推荐
取酒鱼食--【余九】23 分钟前
rl_sar实现sim2real的整体思路
人工智能·笔记·算法·rl_sar
一勺汤33 分钟前
YOLO12 改进|融入 Mamba 架构:插入视觉状态空间模块 VSS Block 的硬核升级
yolo·计算机视觉·mamba·yolov12·yolo12·yolo12该机·yolo12 mamba
Jamence43 分钟前
多模态大语言模型arxiv论文略读(111)
论文阅读·人工智能·语言模型·自然语言处理·论文笔记
归去_来兮1 小时前
图神经网络(GNN)模型的基本原理
大数据·人工智能·深度学习·图神经网络·gnn
爱吃饼干的熊猫1 小时前
PlayDiffusion上线:AI语音编辑进入“无痕时代”
人工智能·语音识别
SelectDB技术团队1 小时前
Apache Doris + MCP:Agent 时代的实时数据分析底座
人工智能·数据挖掘·数据分析·apache·mcp
Leinwin1 小时前
微软推出SQL Server 2025技术预览版,深化人工智能应用集成
人工智能·microsoft
CareyWYR1 小时前
每周AI论文速递(2506202-250606)
人工智能
YYXZZ。。1 小时前
PyTorch——优化器(9)
pytorch·深度学习·计算机视觉