13.多通道视频流缓存以及显示架构

1 简介

  多通道视频流缓存以及显示架构是一个在数字图像处理中很基础也很重要的一个架构。在图像拼接以及高分辨率图像显示方面应用范围较为广泛。本文将介绍一个四通道的图像显示。可以四个图像信息输入以及拼接到一个显示屏里面。使用的开发板为A7

2 框架图

  架构图如下图所示,其中DMA框架参考12.自定义多帧缓存架构,视频流进入DMA通过AXI总线与仲裁模块来到mig IP核并写入DDR,同时DMA还通过AXI总线读取ddr数据并存储到内置fifo中,供VGA_OUT模块读取并显示。VGA_OUT内部有VGA时许并在扫描到指定区间的时候读取特定的DMA内置fifo数据显示来达到多路视频拼接的功能。
在这里插入图片描述

3 vivado框架图

  这里先提供一个vivado版本的系统框架图
在这里插入图片描述
  其中img_gen负责在FPGA内部产生1080P的黑白条纹,然后给到四个像素裁剪模块,裁剪出不同部分给到ddr_buf,然后有vga_out模块读取,最终转化成hdmi给到显示屏显示。
  其中ddr_buf集成了四个axi_dma以及一个仲裁加mig IP核。其中仲裁加mig IP核如下图:
在这里插入图片描述
  单个axi_dma如下图:
在这里插入图片描述
  其中axi_full_ctrl负责读写地址的控制以及读写数据的缓存,axi_full集成了axi_full协议。

3 显示效果

  最终使用A7开发板与HDMI显示屏显示效果如下,可以看到有四个区域显示了不同的黑白条纹。由于本次裁剪出的像素是800*480。因此对于1080P显示有些没有视频输入的部分,这部分我们统一处理为白色。

四通道视频流显示

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/816500.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

康耐视visionpro-CogBlobTool工具操作详细说明

CogBlobTool功能说明: 通过设置灰度值提取感兴趣区域,并分析所提取区域的面积、长宽等参数。 Cog BlobTool操作说明: .打开工具栏,双击或点击鼠标拖拽添加CogBlobTool工具 ②.添加输入图像:单击鼠标右键“链接到”或以连线拖拽的方式选择相应输入源 ③.极性: “白底黑点…

内网渗透-Earthworm的简单使用(内网穿透工具)

Earthworm的简单介绍(一) 文章目录 EarthWorm下载地址1. 普通网络 1.1 跳板机存在公网IP 1.1.1 网络环境1.1.2 使用方法1.1.3 流量走向 1.2 跳板机不存在公网IP,可出网 1.2.1 网络环境1.2.2 使用方法1.2.3 流量走向 2. 二级网络 2.1 一级跳…

前端浏览器跨标签通信方式分享

跨标签通信也有很多实际的应用场景,比如: 共享登录状态:当用户在一个标签页中登录后,其他打开的标签页需要及时获取到登录状态,以保持一致的用户体验。在这种情况下,可以使用浏览器的localStorage或sessio…

Mybatis中SqlSession接口中的selectList方法

1、SqlSession SqlSession是Mybatis持久层框架提供的接口,该接口中包含了大量的CRUD操作方法(既增删改查方法)。 2、selectList方法 selectList方法是用于查询的方法,该方法具有多态性,如图所示(打开myb…

C语言简单的数据结构:单链表的有关算法题(2)

题目: 4. 单链表相关经典算法OJ题3:合并两个有序链表5. 循环链表经典应⽤-环形链表的约瑟夫问题6. 单链表相关经典算法OJ题5:分割链表 接着我们介绍后面的三道题,虽然代码变多了但我们的思路更加通顺了 4. 单链表相关经典算法OJ题…

2024年MathorCup数学应用挑战赛C题思路分析(妈妈杯)

2024年第十四届MathorCup数学应用挑战赛C题解析 文章目录 题目概览第一问:货量预测第二问:运输线路变化的预测第三问:单目标优化第四问:排班计划的优化 MATLAB代码框架货量预测人员排班 2024年的MathorCup数学应用挑战赛再次为我…

基于物理原理的p-GaN HEMT动态导通电阻SPICE建模

来源:Physics-Based SPICE Modeling of Dynamic ON-State Resistance of p-GaN HEMTs(TPEL 23年) 摘要 这封快报介绍了一种新型基于物理学原理的SPICE建模方法,专门针对氮化镓基p型门极高电子迁移率晶体管(p-GaN HEM…

【学习笔记十五】批次管理和容量管理

一、批次管理 1.配置 SAP EWM 特定参数 激活仓库的批次管理 2.ERP端物料需要启用批次管理 3.EWM物料需要启用批次管理 一般是ERP启用批次管理,相关的配置也会传输到EWM系统 4.建立批次主数据 5.创建采购订单并创建内向交货单,维护批次 6.维护产品主数…

【VS2019】x64 Native Tools Command Prompt for Vs 2019使用conda命令进入环境

【VS2019】x64 Native Tools Command Prompt for Vs 2019使用conda命令进入环境 安装完VS2019后,打开终端x64 Native Tools Command Prompt for Vs 2019,直接运行conda会出现‘conda’ 不是内部或外部命令,也不是可运行的程序 原因分析&am…

Lua脚本使用手册(Redis篇)

Lua脚本 **简介:**Lua是一种功能强大的,高效,轻量级,可嵌入的脚本语言。它是动态类型语言,通过使用基于寄存器的虚拟机解释字节码运行,并具有增量垃圾收集的自动内存管理,是配置,脚…

MySQL详细使用

1.安装 官网下载地址:MySQL :: Download MySQL Community Server (Archived Versions) 2.配置 添加环境变量 验证是否添加成功 cmd管理员身份打开,输入mysql(如下为成功) 初始化MySQL 以管理员身份运行cmd 输入 mysqld --ini…

【已开源】​基于stm32f103的爬墙小车

​基于stm32f103的遥控器无线控制爬墙小车,实现功能为可平衡在竖直墙面上,并进行移动和转向,具有超声波防撞功能。 直接上: 演示视频如:哔哩哔哩】 https://b23.tv/BzVTymO 项目说明: 在这个项目中&…

数模 线性规划模型理论与实践

线性规划模型理论与实践 1.1 线性规划问题 在人们的生产实践中,经常会遇到如何利用现有资源来安排生产,以取得最大经济效益的问题。此类问题构成了运筹学的一个重要分支一数学规划,而线性规划(Linear Programming 简记LP)则是数学规划的一个…

架构师系列-搜索引擎ElasticSearch(五)- 索引设计

索引创建后,要非常谨慎,创建不好后面会出现各种问题。 索引设计的重要性 索引创建后,索引分片只能通过_split和_shrink 接口对其进行成倍的增加和缩减。 ES的数据是通过_routing分配到各个分片上的,所以本质上不推荐区改变索引的…

AI克隆语音(基于GPT-SoVITS)

概述 使用GPT-SoVITS训练声音模型,实现文本转语音功能。可以模拟出语气,语速。如果数据质量足够高,可以达到非常相似的结果。相比于So-VITS-SVC需要的显卡配置更低,数据集更小(我的笔记本NVIDIA GeForce RTX 4050 Lap…

智能水务系统:构建高效节水的城市水网

随着城市化进程的加速和人民生活水平的提高,对水务管理的需求也越来越高。传统的水务管理方式已经无法满足现代社会的需求,而智能水务系统的出现为水务管理带来了新的变革。本文将从项目背景、需求分析、建设目标、建设内容、技术方案、安全设计等方面&a…

网络篇06 | 应用层 自定义协议

网络篇06 | 应用层 自定义协议 01 固定协议设计(简化版)1)总体设计2)值设计 02 可变协议设计(进阶版)1)固定头(Fixed Header)2)可变头(Variable H…

UBuntu18.04通过ODBC连接MySQL远程数据库

今天在做一个Qt视频播放器的小项目然后想要在ubuntu18.04运行这个项目,需要在Qt中连接远程的MySQL数据库,所以用到了ODBC。我在连接时遇到了一些问题,加之网上的教程各说纷纭,所以我花了很多时间去解决,所以决定做做笔…

数据资产与数据要素的重要性及数据资产入表的实践指南

## 引言在当今快速发展的数字化时代,数据资产已经成为企业最宝贵的资源之一。数据资产不仅对企业的运营决策有着至关重要的影响,而且在企业的财务健康和市场竞争力方面扮演着核心角色。数据要素,作为构成数据资产的基本单元,其管理…

【opencv】示例-stiching_detailed.cpp 使用OpenCV进行图像拼接的整体流程

#include <iostream> // 引入输入输出流库 #include <fstream> // 引入文件流库&#xff0c;用于文件输入输出 #include <string> // 引入字符串库 #include "opencv2/opencv_modules.hpp" // 引入OpenCV模块 #include <opencv2/core/utility.h…