闲庭信步使用图像验证平台加速FPGA的开发:第九课——图像插值的FPGA实现

(本系列只需要modelsim即可完成数字图像的处理,每个工程都搭建了全自动化的仿真环境,只需要双击 文件就可以完成整个的仿真,大大降低了初学者的门槛!!!! 如需要该系列的工程文件请关注知识星球: 成工fpga, 关注即送200GB学习资料,链接已置顶!)

图像的插值在上个系列有非常详细的讲解,本篇只要实现图像插值的FPGA实现。

其实有了上篇设计的data_cache模块,图像插值的实现就非常的简单了,我们直接上代码。

在src的interpolation文件夹下,新建interpolation.sv文件,首先例化data_cache模块,输入RAW图像及其控制信号,输出奇偶指示位,3x3的缓存数据和控制信号。

由于我们使用的插值算法很简单,拿到缓存数据后,先进行插值相关的计算。

根据RAW图像的格式和奇偶指示位。完成G通道数据的计算,这个除法直接用移位实现。

同理计算出G通道的数据。

B通道的数据也是同理。

数据完成缓存后,插值算法只需要一个时钟周期就可以完成,所以把场同步,行同步,数据有效信号延时一拍即可。

所以成工说,有了data_cache模块,插值算法的FPGA实现就非常的简单了。

在顶层top文件中,例化obtain_raw模块获取RAW数据,例化interpolation模块对RAW数据进行插值。

在tb_image_sim文件中的第二个initial块中,将图像测试平台和FPGA硬件仿真的结果保存。

最后双击sim文件夹下的top_tb.bat文件,完成系统的自动化仿真。

打开img文件夹,看到图像测试平台和FPGA硬件仿真的结果是一致的(no_seq*是图像测试平台处理后的图片,seq*是FPGA硬件仿真处理后的结果)。

相关推荐
Clipp_Huang3 小时前
光学跟踪系统标定
人工智能·计算机视觉·重构·机器视觉
weixin_468466853 小时前
目标检测精度上限与影响因素分析
图像处理·人工智能·目标检测·计算机视觉·图像分类·coco·检测精度
szxinmai主板定制专家5 小时前
Zynq MPSoC半导体高精度运动控制方案|FPGA硬件插补实现亚微米级伺服实时控制
人工智能·嵌入式硬件·fpga开发·zynq·运动控制·ethercat
sali-tec5 小时前
C# 基于OpenCv的视觉工作流-章102-车牌识别
图像处理·人工智能·opencv·计算机视觉
范什么特西15 小时前
回答知识总结04(redis)
数据库·redis·缓存
yanaiding17 小时前
C# WPF 独立开发看图工具 PixSight 经验介绍(二)—— 水印模块开发实录
图像处理·c#·wpf·个人开发
陈嘿萌18 小时前
ECCV 2026 | 南开&OPPO开源 ExpoMotion:首个大规模动态多曝光融合数据集
人工智能·计算机视觉·图像融合·南开大学·新数据集·expomotion·多曝光融合
math_hongfan20 小时前
鸿蒙离线数据缓存高级架构:弱网预加载/离线数据优先级/同步冲突解决/上线后数据合并策略
学习·缓存·华为·架构·harmonyos·鸿蒙
硅谷秋水21 小时前
人工智能医疗健康机器人研究综述与分析
人工智能·深度学习·计算机视觉·语言模型·机器人
xingyuzhisuan1 天前
星宇智算 AI 视频工作台・图生视频(首尾帧)・Vidu:双模型可控动态过渡生成应用
人工智能·计算机视觉·音视频