首页 > 技术 > 内容

FPGA纯verilog代码实现图像缩放

时间:2026-01-25  作者:Diven  阅读:0

1、设计思路和架构

本设计将常用的双线性插值和邻域插值算法融合为一个代码中,通过输入参数选择某算法;代码使用纯verilog实现,没有任何ip,可在Xilinx、Intel、国产FPGA间任意移植;代码以RAM和fifo为核心进行数据缓存和插值实现,设计架构如下:视频输入时序要求如下:输入像素数据在dInValid和nextDin同时为高时方可改变;

视频输出时序要求如下:输出像素数据在dOutValid 和nextdOut同时为高时才能输出;

2、纯verilog代码搭建,不带任何ip

代码使用纯verilog实现,没有任何ip,可在Xilinx、Intel、国产FPGA间任意移植;

图像缩放的实现方式很多,最简单的莫过于Xilinx的HLS方式实现,用opencv的库,以c++语言几行代码即可完成,网上也有其图像缩放例程代码,但大多使用了IP,导致在其FPGA器件上移植变得困难,通用性不好;相比之下,本设计代码就具有通用性;

代码架构如图;其中顶层接口部分如下:

3、双线性插值和邻域插值算法

本设计将常用的双线性插值和邻域插值算法融合为一个代码中,通过输入参数选择某算法;

具体选择参数如下:

input wire i_scaler_type //0-- >bilinear;1-- >neighbor

通过输入i_scaler_type 的值即可选择;

输入0选择双线性插值算法;

输入1选择邻域插值算法;

4、vivado和matlab联合仿真及结果

第一步:网上下载一张1280X720的图片,并用matlab将图片转换为RGB格式的txt文档;

第二步:在vivado下设计tstbench,将RGB格式的txt文档作为视频输入源给到图像缩放模块,并将缩放后的图像数据写入输出txt文档;

第二步:用matlab将输出txt文档转换为图片,并于原图一并输出显示以做比较;

根据以上方法得到以下仿真结果:

双线性插值算法原图1280X720缩小到800x600如下:邻域插值算法原图1280X720缩小到800x600如下:双线性插值算法原图1280X720放大到1920x1080如下:邻域插值算法原图1280X720放大到1920x1080如下:

5、工程代码1:720P原始摄像头采集显示

三套工程的设计架构都一样,如下:开发板:Xilinx Kintex7开发板

开发环境:Vivado2019.1;

输入:OV5640摄像头,分辨率1280x720p;

输出:HDMI,1080P分辨率下的720P有效区域显示;

工程作用:采集原始的720P图像,以便和后面的缩小效果作比较;

工程BD如下:其中FDMA控制器配置如下:工程代码架构如下:工程的资源消耗和功耗如下:

6、工程代码2:720P缩小到800x600P显示

开发板:Xilinx Kintex7开发板;

开发环境:Vivado2019.1;

输入:OV5640摄像头,分辨率1280x720p;

输出:HDMI,1080P分辨率下的800x600有效区域显示;

工程作用:1280x720原图缩小到800x600,并和原图作比较;

工程设计框架、BD、工程代码架构和工程1一样,FDMA配置如下:

7、工程代码3:720P缩放大1920x1080P显示

开发板:Xilinx Kintex7开发板;

开发环境:Vivado2019.1;

输入:OV5640摄像头,分辨率1280x720p;

输出:HDMI,1080P分辨率下的1920x1080有效区域显示;

工程作用:1280x720原图放大到1920x1080,并和原图作比较;

工程设计框架、BD、工程代码架构和工程1一样,FDMA配置如下:

8、上板调试验证并演示

板子连接如下:工程1:原图1280x720输出效果如下:工程2:原图1280x720缩小到800x600输出效果如下:工程3:原图1280x720放大到1920x1080输出效果如下:

猜您喜欢


电容式传感器在现代科技中使用。测量物体的电容变化。此技术在各个领域都有应用。本文将深入分析电容式传感器的工作原理、优缺点以及应用场景。工作原理电容式传感器工作原...
2025-03-21 00:01:38
现代电子设备中,贴片电容和电阻是重要的基本元件。在电路中的作用非常重要,直接影响着电路的正常工作和性能。准确测量贴片电容和电阻的好坏,对于确保电子设备的稳定性和...
2025-04-14 10:30:36
编码器是将信息从格式转换为另格式的设备或程序,应用于数字信号处理、通信和控制系统中。根据不同的应用需求,编码器可以分为几种主要类型。按输出信号类型分类,编码器可...
2019-04-16 00:00:00
现代电子设备中,连接器的选择非常重要。CONN_10.16X2.5MM_SM作为一种常见的连接器型号,以其独特的设计和优良的性能,广泛应用于各种电子产品中。本文...
2025-03-09 09:56:35
现代电子设备中,连接器扮演着非常重要的角色。它们不仅影响设备的性能,还直接关系到设备的可靠性与稳定性。本文将重点介绍“CONN_39.62X8.3MM_TM”这...
2025-02-27 05:36:12
现代电子电路中,检流电阻和采样电阻是两个重要的组成部分。在电流测量和信号处理方面有着着重要作用,帮助工程师准确地监测和控制电路的性能。本文将深入探讨检流电阻和采...
2025-04-19 05:30:03
光敏电阻作为重要的光电传感元件,应用于各种智能设备和自动化系统中。美磊(Mag.Layers)作为行业内知名的光敏电阻品牌,高品质的产品质量和技术创新赢得了众多...
2023-03-24 21:28:20
现代电子设备中,连接器是非常重要的配件。TERMINAL_11.3X11.1MM作为特定规格的连接器,因其独特的尺寸和设计应用于各类电子产品中。本文将详细探讨T...
2025-04-25 21:01:40
在选择防坠落设备时,了解其关键参数非常重要。承载能力是一个重要指标,通常以公斤或磅为单位,确保设备能够承受预期的重量。设备的材质直接影响其耐用性和安全性,常见的...
2012-09-14 00:00:00