基于Zynq/MPsoc的图像处理入门课程

本课程是狼哥基于多年图像处理经验,提取出来的一个系统性的入门框架,该课程主要适合想要熟悉Zynq系列PS和PL交互以及图像处理入门的小伙伴,课程设置的比较系统,目标是让大家伙熟悉图像开发的流程和通用技能。整个课程主要分成6大部分,每个部分都针对一个主题:第一部分为matlab部分,有些小伙伴觉得这个比较奇怪,为啥FPGA还要matlab,其实这部分是非常必要的,首先matlab不仅可以用来做算法验证,也可以利用它来产生仿真图片,将图片导入到verilog进行仿真,来对图像算法进行验证;第二部分是仿真部分,这是FPGA开发必经的一步,这里会介绍如何使用matlab产生的txt图像数据进行仿真,以及将仿真数据存储成txt文件,方便使用matlab显示仿真后的图像,同时也会介绍如何在BD里仿真,重点是BD中联合zynq核,DDR和PL逻辑共同仿真;第三部分为PS与PL进行交互的方法,侧重于小批量控制握手数据的交互;第四部分为PS与PL进行大数据交互的方法,主要涉及PS DDR的读写,介绍常用的控制方法;第五部分介绍图像处理中会涉及的一些通用技术,为后续图像处理做铺垫;第六部分介绍MIPI输入,用于接收相机数据,以及HDMI输出,用于显示处理结果,同时给出读取txt图像仿真,经过均值滤波,存储txt图像数据,使用matlab进行显示,以及基于板级验证mipi->滤波->拼接->hdmi显示的例子。整个课程将图像处理需要用到的通用的基本技术串联起来。让大家可以花费比别人短得多的时间掌握一些必须的技巧,课程的额详细内容如下:
1.matlab部分
●图像生成16进制txt文件
●图像生成16进制bin文件
●读取16进制txt文件显示图像
●读取16进制bin文件显示图像
2.仿真部分
●仿真的必要性
●大小工程仿真方法
●仿真工具选取
●读取txt图像文件仿真
●把仿真结果存成txt文件
●bd里不写测试文件仿真
●bd里联合zynq核仿真
3.ps和pl控制交互部分
●bd里手动/自动连线
●Zynq/Mpsoc核参数设置
●sdk中如何导入官方例子
●axi gpio设置及控制方法
●axi bram设置及控制方法
●自定义axi lite slave控制设备
4.ps和pl数据交互部分
●ps与pl数据通道及基本设置
●axi dma架构,数据流及参数设置
●axi dma配置流程,代码讲解及运行
●axi vdma架构,数据流及参数设置
●axi vdma配置流程,代码讲解及运行
●datamover架构,数据流及参数设置
●datamover控制方法,代码讲解及运行
●自定义axi full master逻辑
5.基础IP和逻辑部分
●fifo作用和参数详解
●生成n*n数据块代码讲解
●如何保证滤波后图像大小不变
●整形/浮点乘法器IP介绍
●如何浮点数定点化
●整形/浮点除法器IP介绍
●如何除法转乘法,优化LUT使用
6.图像应用部分
●均值滤波原理和作用
●均值滤波实现
●txt图像 均值滤波 txt图像显示
●mipi IP核使用
●如何确定mipi核是否收到数据
●监测mipi核输出图像的分辨率和帧率
●mipi图像数据存储
●读取DDR图像数据—>hdmi图像输出
●四图拼接
●mipi 原图抽样 均值滤波 二值化 原值减均值 hdmi输出

请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
本书是使用Zynq MPSoC开发人员的实用指南,同样也是希望熟悉器件及其相关设计方法的技术人员的有效参考。 Zynq MPSoC(多处理器片上系统)是Xilinx公司推出的第二代SoC系列产品,集成了复杂的处理系统,包括ARM Cortex-A53应用程序处理器和ARM Cortex-R5实时处理器,以及FPGA可编程逻辑。 来自苏格兰斯特拉斯克莱德大学(University of Strathclyde)的Louise Crockett团队基于这一平台的软件和硬件结构,撰写了Exploring Zynq MPSoC: With PYNQ and Machine Learning Applications,综合且全面地介绍了软件堆栈、多处理器处理系统以及可编程硬件阵列等问题。 程序员可以学会如何使用简单的软件界面和框架来快速实现他们的机器学习算法,系统设计师可以利用它来获取系统的最高性能。 内容导读 器件的架构 与Zynq7000相比,Zynq MPSoC 进一步整合了处理器系统可选择的处理器数量和性能,最多可配备四个ARM Cortex-A53处理器内核和两个ARM Cortex-R5实时处理器内核。此外,该架构进一步拓展了可编程逻辑门阵列的DSP切片和分布式存储器的规模。在开发当今新兴的AI应用程序时,全新的MPSoC架构将实现繁琐的算术计算和数据移动的过程变得十分轻松有趣。 设计工具和方法 SoC系统将包括硬件设计和软件设计两个方面。硬件设计会映射到SoC设备上的FPGA逻辑资源,而软件则运行在一个或多个系统内部署的处理器上。在此设计流程,硬件和软件开发可以在很大程度上独立进行,然后整合。工程师使用他们选择的工具生成硬件系统的元素,并使用Xilinx Vivado开发环境实现系统集成和实现目标设备。软件开发人员可以使用Xilinx软件开发工具包(SDK)进行开发。这是传统的软硬件协同设计方法。 Xilinx的SDx开发环境则是一种更高级的开发方式。在Xilinx SDx工具可以完全使用软件代码对整个系统进行描述,然后对各种计算进行资源分配(在用户指导下)。这使得面向软件的软硬件协同设计已经发生了相当大的转变。本书的第4章更详细地讨论了关于SDx设计方法。 更先进的应用实现 本书还讨论了Zynq上许多应用程序的实现,包括FINN-R开源框架的有效性神经网络的实现、基于Python的Zynq设备框架和机器学习应用程序。我们可以预见到一些基于Zynq的更为优秀的产品,包括高级驾驶员辅助系统(ADAS),计算机视觉,“大数据”分析等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值