【opencv-3】YUV转opencv Mat格式

2023-05-16

int  yuv_to_mat(unsigned char *data, Mat image)
{
    unsigned char *srcYuv = data;
    int indexY, indexU, indexV;
    unsigned char Y, U, V; 
    unsigned char R, G, B; 
    int WIDTH = image.cols;
    int HEIGHT = image.rows;
    int u_pos = WIDTH * HEIGHT;
    int v_pos = u_pos + u_pos/4;

    for( int i = 0; i < HEIGHT; i++ )
    {
        for (int j = 0; j < WIDTH; j++ )
        {
            Y = srcYuv[j + i * WIDTH];
            indexV = i / 2 * WIDTH/2 + j/2;
            indexU = i / 2 * WIDTH/2 + j/2;
            U = srcYuv[u_pos + indexU];
            V = srcYuv[v_pos + indexV];
            
            // YUV to RGB
            R = Y + 1.403 *(V-128);
            G = Y - 0.34414* (U-128) - 0.71414* (V-128);
            B = Y + 1.772 *(U-128);

            image.at<Vec3b>(i, j)[0] = B;
            image.at<Vec3b>(i, j)[1] = G;
            image.at<Vec3b>(i, j)[2] = R;
        }
    } 

    return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【opencv-3】YUV转opencv Mat格式 的相关文章

  • 针对不同相机(RGB 和红外)的 StereoCalibrate

    我在校准两个摄像头时遇到问题 第一个是 RGB 第二个是红外 它们有不同的分辨率 我调整了大小并裁剪了更大的图像 焦距等等 例子 RGB 1920x1080 Infrared 512x424 如何相互校准它们 我应该在stereoCalib
  • 使用 Unity3D 解决 PnP

    我有一个真实 物理的棍子 上面连接有红外摄像头和一些红外 LED 它们形成了我正在使用的模式 以便使虚拟棍子以与物理棍子相同的方式移动 为此 我在 Python 中使用 OpenCV 并将由solvePnP 计算的旋转和平移向量发送到 Un
  • 从视频/图像中提取元数据

    我从 IP 摄像机获取 MJPEG 流 我正在查看该流并将其保存在计算机上 可以找到我的操作代码here https stackoverflow com questions 21702477 how to parse mjpeg http
  • 如何使用 OpenCV 从图像中获取调色板 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想提取图像的调色板 类似于此 来自 我需要它来提取特定的颜色 如黄色 绿色和棕色 并显示该颜色覆盖的区域的百分比 另外 我可以添加更
  • 如何获得垂直线穿过的完整内轴线?

    我有一个图像 我想获取穿过其中轴的像素 我尝试使用骨架化 and 中轴方法来获取它们 但这两种方法都返回比相应对象短的一维线 这是带有示例图像的代码 gt gt gt import skimage filter gt gt gt impor
  • 如何将图像从 np.uint16 转换为 np.uint8?

    我正在创建一个图像 image np empty shape height width 1 dtype np uint16 之后我将图像转换为 BGR 模型 image cv2 cvtColor image cv2 COLOR GRAY2B
  • 将线性数组转换为二维矩阵

    我有一个浮点指针 数组 它代表一个图像 它的元素计数和索引具有宽度 高度 图像不像矩阵 其原点位于左上角 相反 它的原点位于左下角 就像在笛卡尔坐标系中一样 达到最大宽度后 它从左侧开始下一行 所以我想有效地将 这个数组转换为二维矩阵 可选
  • OpenCV Android - 无法解析相应的JNI函数

    我正在尝试按照此处概述的本教程使用 Opencv 设置 Android Studio https www youtube com watch v OTw GIQNbD8 https www youtube com watch v OTw G
  • OpenCV:如何使用图像计算相机和物体之间的距离?

    我是 OpenCV 的新手 我正在使用以下公式来计算距离 distance to object mm focal length mm real height of the object mm image height pixels obje
  • 如何在 OpenCV 中将 Float Mat 写入文件

    我有一个矩阵 Mat B 480 640 CV 32FC1 包含浮点值 我想将此矩阵写入一个可以打开的文件Notepad https en wikipedia org wiki Windows Notepad or 微软Word https
  • VideoCapture 未检测到 uEye 摄像头

    我的 uEye 相机遇到了一个问题 使用我的笔记本电脑摄像头 id 0 或 USB 上的网络摄像头 id 1 此行完美运行 TheVideoCapturer open 1 TheVideoCapturer 属于 VideoCapture 类
  • 如何将k4a_image_t转换为opencv矩阵? (Azure Kinect 传感器 SDK)

    我开始尝试使用 Azure Kinect Sensor SDK 我经历了官方操作指南 https learn microsoft com en us azure Kinect dk about sensor sdk sensor sdk 我
  • 使用 OpenCV 和 Python 叠加两个图像而不丢失颜色强度

    如何叠加两个图像而不损失两个图像的颜色强度 我有图像1和图像2 2 我尝试使用 0 5 alpha 和 beta 但它给我的合并图像的颜色强度只有一半 dst cv2 addWeighted img1 0 5 img2 0 5 0 但是当我
  • OpenCV 读取视频文件时内存不足

    此示例从文件中读取视频cv2 VideoCapture在 python OpenCV 中内存不足 import cv2 cap cv2 VideoCapture file mp4 while True ret frame cap read
  • 如何将 OpenCV 的测试框架与 CMake 结合使用?

    好像 OpenCV 有一个测试框架 https github com Itseez opencv tree ef91d7e8830c36785f0b6fdbf2045da48413dd76 modules ts include opencv
  • 如何将 Opencv VideoWriter 与 GStreamer 结合使用?

    我正在尝试使用 Opencv VideoWriter 传输 h264 流 以使用 VideoCapture 将其传输到网络上的另一台电脑上 但是 我被困在 VideoWriter 上 执行此代码会返回错误 并且 out isOpened 始
  • 将图像分割成多个网格

    我使用下面的代码将图像分割成网格的 20 个相等的部分 import cv2 im cv2 imread apple jpg im cv2 resize im 1000 500 imgwidth im shape 0 imgheight i
  • 如何绘制每个分割对象的轮廓

    我应用分水岭分割来检测触摸对象 这样做效果很好 现在 我想绘制每个对象的轮廓 这样我就可以获得它们的长度 面积 矩等 但是分割结果中的对象仍然是触摸的 所以 我没能画出每一个的轮廓 如何绘制每个对象的轮廓 include
  • Opencv C++ 检测并裁剪图像上的白色区域

    我在网上搜索过 已经找到了一些方法来完成我想要的事情 但是与我需要的相比 这些方法的效率较低 我有一个 kinect 使用 Microsoft SDK 当前正在获取一个移除背景的人 将结果保存在 3 通道 Mat 中 并将该人从背景中移除
  • 通过 cmake 链接作为外部项目包含的 opencv 库[重复]

    这个问题在这里已经有答案了 我对 cmake 比较陌生 经过几天的努力无法弄清楚以下事情 我有一个依赖于 opencv 的项目 它本身就是一个 cmake 项目 我想静态链接 opencv 库 我正在做的是我的项目中有一份 opencv 源

随机推荐

  • Sublime3 安装激活教程

    Sublime3 安装激活教程 1 下载安装 官网 xff1a http www sublimetext com 2 在hosts文件末尾添加内容 xff1a 127 0 0 1 license sublimehq com 127 0 0
  • maven打包的jar包无法在linux中运行

    问题描述 xff1a 使用mvn 打包的jar包无法在linux中运行 解决方法 xff1a 在idea中使用右侧的Maven菜单栏选择对应的模块然后打开Lifecycle先点击compile 再点击package进行打包 此种方法打包的j
  • [数学]三角函数与双曲函数及其导数和不定积分

    三角函数与双曲函数及其导数和不定积分 定义 sin x
  • [C++] std::ranges中的特征和自定义std::ranges::view变换

    文章目录 1 std ranges中的特征1 1 std ranges range例子细化 1 2 std ranges sized range1 3 std ranges borrowed range1 4 std ranges view
  • STM32F103 舵机控制控制程序PWM配置

    上一篇博文我讲了如何按自己想的配置PWM定时器 下来发现会不会有同学根本不想用重映像 xff0c 原本的引脚就可以 xff0c xff1a xff09 xff0c 所以在开始这篇之前 xff0c 先把TIM2定时器的设置程序发一下 xff1
  • 在win10系统中安装Linux系统

    文章目录 镜像的安装准备工作镜像的下载网址 xff1a 镜像的写入工具工具的下载 等待写入完成 xff0c 插入U盘进行linux系统的安装安装过程 镜像的安装 准备工作 1 需要一个U盘 xff0c 用来存放镜像 xff0c 不用太大 2
  • Linux系统之使用yum安装Redis数据库

    Linux系统之使用yum安装Redis数据库 一 redis介绍1 redis解释2 redis特点3 redis使用场景 二 检查系统版本1 检查系统版本2 检查内核版本 三 检查yum仓库状态四 查看系统默认提供的redis版本五 安
  • Linux系统之MobaXterm远程连接centos的GNOME桌面环境

    Linux系统之MobaXterm远程连接centos的GNOME桌面环境 一 MobaXterm介绍1 MobaXterm简介2 MobaXterm功能特点 二 centos安装GNOME桌面1 本地环境介绍2 安装GNOME桌面环境3
  • mysql配置secure_file_priv

    1 secure file priv 配置项控制LOAD DATA SELECT OUTFILE LOAD FILE 的使用权限 secure file priv 设置值为 NULL 时 xff0c 表示限制mysqld不允许导入或导出 s
  • Linux远程连接图形界面的几种方法

    1 xff0c 利用Xmanager xff0c linux启用XDMCP协议 xff08 可直接修改配置文件 xff0c 也可以采用在Xshell中运行gdmconfig或gdmsetup xff0c 选择XDMCP选项卡 xff0c 勾
  • WSL(Ubuntu)简单配置

    WSL安装后 xff0c 国内环境不能很好的支持其运行 xff0c 故需要进行简单配置 以Ubuntu 20 04 5 LTS为例 1 WSL迁移 以管理员身份运行PowerShell 查看WSL是否为关闭状态 wsl l v 导出WSL
  • Liunx文件系统基本目录介绍大全

    Liunx文件系统基本目录介绍大全 根文件系统 通常情况下 xff0c 根文件系统所占空间一般应该比较小 xff0c 因为其中的绝大部分文件都不需要 经常改动 xff0c 而且包括严格的文件和一个小的不经常改变的文件系统不容易损坏 除了可能
  • 联想笔记本win10相机打开显示灰色画斜杠相机 无法进行人脸识别 怎么办

    首先我的电脑是联想小新PRO16 2021 由于今天要参加一场笔试 xff0c 我的摄像头打开就是灰色画斜杠的相机 所以再网上找各种方法调试摄像头花了三个小时 xff0c 还好最后成功解决 下面是我的解决方法 xff1a 通过联想电脑管家
  • C++简单实现十进制和二进制、八进制、十六进制之间的转换

    十进制到二进制 八进制 十六进制的转换 十进制到二进制 八进制 十六进制的转换二进制 八进制 十六进制到十进制的转换 十进制到二进制 八进制 十六进制的转换 span class token preprocessor property in
  • linux centos7虚拟机安装mysql5.7详细教程(tar包安装)

    目前网络上大多数的安装教程采用的是rpm的方式 xff0c 此种方式是需要虚拟机联网完成的 xff0c 我介绍的是使用tar包的方式安装mysql5 7的方法 1 官网下载压缩包 链接 xff1a https dev mysql com d
  • ZCMU—1487

    1487 红桃X Time Limit 1 Sec Memory Limit 128 MB Submit Status Web Board Description 从西安到杭州的火车实在是太漫长了 xff0c 为了打发时间 xff0c H买
  • snprintf()解析

    snprintf ssid mac sizeof ssid mac 34 s 02X 02X 34 ssid macval 4 macval 5 ssid mac 61 ssid macval 4 macval 5 将ssid 转化为str
  • 图像傅里叶变换

    1 图像的傅里叶变换 傅里叶变换可以看成是时域和频域的转换 一维图像傅里叶变换公式 xff08 空间域 gt 频域 xff09 xff1a 一维傅里叶变换逆变换公式 xff08 频域 gt 空间域 xff09 xff1a M N图像的二维离
  • Anaconda & Jupyter 虚拟环境设置

    1 Conda 的下载和安装 什么是 Conda 官方定义 xff1a Package dependency and environment management for any language Python R Ruby Lua Sca
  • 【opencv-3】YUV转opencv Mat格式

    int yuv to mat unsigned char data Mat image unsigned char srcYuv 61 data int indexY indexU indexV unsigned char Y U V un