基于FPGA的简单图像处理程序,可实现两个功能

时间:2025-06-13  作者:Diven  阅读:0

参考资料:xilinx大学计划

基于FPGA的简单图像处理程序,可实现两个功能

实验平台:ZYBO开发板

本次实验要做的是一个基于FPGA的简单图像处理程序, 共实现两个功能:

1.输出一个灰度图像的直方图。

2.将一个曝光不足的图像进行处理,使其对比度更大。

一、Vivado HLS 部分

首先我们用Vivado HLS来编写FPGA图像处理所用的IP核。

1.绘制直方图

1.首先编写相应的C/C++语言程序,加入到Vivado HLS工程中,再编写相应的testbench代码进行编译测试。

代码很简单大家看一下就明白了。

注意到右侧Directive窗口中的优化部分,分别表示doHist的输出接口使用AXI4-lite传输协议,inStream图像输入接口采用AXI4协议,输入数组histo存入bram中,loop_init循环进行展开。

2.点击Run C Simulation进行对C/C++源文件进行编译测试。

输出的部分直方图文本文件

3.将testbench输出的直方图文本与MATLAB中的直方图文件进行对比验证算法无误后,点击Run C/RTL Cosimulation来进行协同验证。

4.验证通过后点击Export RTL生成ip核。

如上步骤所示,绘制直方图的IP核已经生成成功。

2.调节对比度

步骤如上所示,接口部分也同样使用AXI4协议,效果如下。

处理前

处理后

二、Vivado 综合部分

1.将IP核部署到FPGA

打开Vivado界面,并建立工程,随后创建Block Design。

在Block Design界面首先需要添加zynq7 processing system,点击ADD IP查找ZYNQ添加IP核。该IP核是系统所提供的连接ARM与FPGA的IP核,详情见: https://www.xilinx.com/products/intellectual-property/processing_system7.。.

随后点击Run Block Automation进行自动配置。

将之前HLS所生成的两个IP核导入工程中,同样的步骤将doHist、doHistStrech和AXI DMA添加到diagram中。

双击AXI DMA进行对IP核的配置,配置情况如图所示。

可以使用Run Connection Automation 来自动连接。完成后的效果图如下,缺少的ip核可以按照下图来添加。

完成后点击Validate Design进行验证。

随后就可以生成bitstream,下载到FPGA。

2.使用逻辑分析仪进行Debug

三、利用ARM来测试FPGA的加速效果

1.下载完成后点击File-》Export-》Export Hardware,弹出对话框

勾选include bitstream然后点击OK。

2.点击File-》Launch SDK启动SDK

3.SDK开发环境如下,主要用于对ARM的开发,在之前生成ip核的时候会生成对应的驱动函数。

4.实验结果如下图所示

猜您喜欢

2008-07-14 00:00:00

直插瓷片电容是应用于电子电路中的被动元件,其主要功能是储存电能并释放电能。由陶瓷材料制成,具有优良的电气性能和稳定性。直插瓷片电容通常采用插脚设计,方便直接插入...
2008-01-15 00:00:00

现代电子设备中,连接器的选择对于整体性能和稳定性非常重要。TERMINAL_71.32X12.2MM_TM是一种高性能连接器,广泛应用于各类电子产品中。本文将深...
2025-03-03 20:44:07

本次实验的任务是构建一个3-8译码器,且将译码结果通过小脚丫的LED灯显示。听上去并不难,而且我能想象到,一定会有不少同学会立刻开始画一个8行的真值表,然后通过...
2023-06-20 16:10:00

在市场上,异性套筒种类繁多,各具特点,适合不同的使用需求。材质上,异性套筒通常有不锈钢、铝合金和塑料等多种选择,不同材质影响耐用性和重量。不锈钢套筒坚固耐用,适...
2020-06-30 00:00:00

热工刀是常用于高温加工的工具,其规格和尺寸因不同用途而异。热工刀的刀片长度通常在100毫米到300毫米之间,宽度则在20毫米到50毫米之间。刀柄的长度一般为15...
2008-08-24 00:00:00

防浪涌电阻作为关键元件,能够有效保护电路免受瞬态高电压冲击的损害。susumu作为知名的电子元器件制造品牌,其防浪涌电阻因性能优异、稳定可靠而受到业界青睐。本文...
2015-04-28 20:33:13

1022贴片电阻的阻值是1000欧姆,也就是1kΩ。 「102」代表有效数字10,而最后的「2」代表10的2次方,即100。将两者相乘,10 x 100 = 1...
2024-11-26 11:29:32

高阻计是用于测量高电阻值的仪器,其参数直接影响测量的准确性和可靠性。量程是关键参数,通常高阻计具有多个量程选择,以适应不同电阻值的测量需求。输入阻抗是另一个重要...
2018-07-04 00:00:00

现代电子设备中,封装技术是很重要的一环。SOIC(SmallOutlineIntegratedCircuit)作为常见的表面贴装封装形式,广泛应用于各种电子产品...
2025-02-21 11:04:02