当前位置: 首页 > backend >正文

RV1126的RGA模块讲解

一.本章节介绍

本章节主要是介绍视觉项目的RGA模块的讲解,RGA模块是视频处理模块这个模块可以对VI视频数据进行缩放、裁剪、格式转换、图片叠加等的功能。

在这个项目里面RGA模块最重要的功能是把1920 * 1080的分辨率转换成1280 * 720的分辨率。RGA模块的配置在源文件rkmedia_module_function.cpp里面。

二.RGA模块设置的思维导图

上面思维导图是RGA设置的大体流程,RGA设置需要对RGA_ATTR_S结构体进行参数设置,设置完之后调用RK_MPI_RGA_CreateChn设置RGA模块。若成功则打印RGA Set Success,失败则打印RGA Set Failed。

三.RGA模块设置的代码截图

RGA_ATTR_S结构体里面包含了两个重要的结构体,分别是stImgIn和stImgOut。

stImgIn是视频输入的结构体,stImgOut是处理后的视频结构体。除了这两个重要的结构体外,还有公共参数需要设置。

stImgIn结构体的设置:

stImgIn.u32Width视频输入的分辨率宽度,这里使用的是1920

stImgIn.u32Height视频输入的分辨率宽度,这里使用的是1080

stImgIn.u32Width视频输入的分辨率宽度,这里使用的是1920

stImgIn.u32Height视频输入的分辨率宽度,这里使用的是1080                        

stImgIn.u32HorStride视频输入的分辨率虚宽,虚宽的数值跟分辨率宽度数值一致都是1920

stImgIn.u32VirStride视频输入的分辨率虚高,虚高的数值跟分辨率高度数值一致都是1080

stImgIn.imgType视频输入的格式这里设置的是NV12也就是IMAGE_TYPE_NV12

stImgIn.u32X设置stImgIn的X坐标

stImgIn.u32Y设置stImgIn的Y坐标

stImgOut结构体的设置:

stImgOut.u32Width视频输入的分辨率宽度,这里使用的是1280

stImgOut.u32Height视频输入的分辨率宽度,这里使用的是720

stImgOut.u32Width视频输入的分辨率宽度,这里使用的是1280

stImgOut.u32Height视频输入的分辨率宽度,这里使用的是720                       

stImgOut.u32HorStride视频输入的分辨率虚宽,虚宽的数值跟分辨率宽度数值一致都是1280

stImgOut.u32VirStride视频输入的分辨率虚高,虚高的数值跟分辨率高度数值一致都是720

stImgOut.imgType视频输入的格式这里设置的是NV12也就是IMAGE_TYPE_NV12

stImgIn.u32X设置stImgOut的X坐标

stImgIn.u32Y设置stImgOut的Y坐标

RGA公共参数
u16BufPoolCnt缓冲区计数,默认是3

u16Rotation旋转角度,这里填0,没有旋转角度

enFlip镜像控制,这里选择RGA_FLIP_H,水平镜像处理

bEnBufPool使能缓冲池

设置完上述的参数后,调用RK_MPI_RGA_CreateChn设置RGA模块,这块内容在之前的课程已经详细说过,这里不做说明

http://www.xdnf.cn/news/8918.html

相关文章:

  • 7.Java String类深度解析:从不可变魔法到性能优化实战
  • 【电机控制】基于STM32F103C8T6的四轮智能车设计——直流有刷有感PID控制(硬件篇)
  • Java基础知识回顾
  • CLion-2025 嵌入式开发调试环境详细搭建
  • Mysql 中的锁
  • 2025京麒CTF挑战赛 计算器 WriteUP
  • 2024 CKA模拟系统制作 | Step-By-Step | 5、题目搭建-查看Pod CPU资源使用量
  • 滑动窗口算法:高效处理数组与字符串子序列问题的利器
  • (九)PMSM驱动控制学习---无感控制之高阶滑膜观测器
  • 61580 RT控制
  • SCI与EI期刊分区及影响因子汇总
  • 超越UniAD!百度哈工大X-Driver:基于视觉语言模型的可解释自动驾驶
  • 多线程的基础知识以及应用
  • 校园二手交易系统
  • AI预测3D新模型百十个定位预测+胆码预测+去和尾2025年5月25日第88弹
  • 法律大模型之阿里云通义法睿
  • DataX的json配置文件,{},[]讲解
  • 华硕FL8000U加装16G+32G=48G内存条
  • 英语六级-阅读篇
  • 分布式缓存:BASE理论实践指南
  • YOLOv1到YOLOv12各版本发展2025.5.25
  • Jetpack Compose 导航 (Navigation)
  • mysql 导入导出数据
  • Cache写策略
  • 【深度学习】1. 感知器,MLP, 梯度下降,激活函数,反向传播,链式法则
  • Unity3D 彩色打印
  • 【基础工程搭建】Load Bus Error异常问题分析
  • 双深度Q网络(Double DQN)基础解析与python实例:训练稳定倒立摆
  • 2021年认证杯SPSSPRO杯数学建模A题(第二阶段)医学图像的配准全过程文档及程序
  • SpringCloud实战:Seata分布式事务整合指南