闲庭信步使用图像验证平台加速FPGA的开发:第十课——图像gamma矫正的FPGA实现

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

上个系列对gamma矫正有比较详细的讲解,而且gamma矫正实现起来也非常的简单,就是一个查表的过程。在FPGA中,查表功能的实现一般是把数据预先存储在ROM或者RAM中,然后数据需要处理的时候直接存取即可。

由于本系列暂时不会使用xilinx提供的任何IP核,所以直接使用数组,数组一般也会被综合成RAM。在src文件夹下的gamma文件夹中,新建gamma.sv的文件,整个功能非常的简单,唯一需要说明的一点就是数组的初始化,我们可以直接给数组值,就像上个系列在class中定义的一样,还有一种方式就是在initial块中使用readmemh语句来对数组进行初始化,gamma矫正相关的值都存储在gamma.dat文件中

在top文件中,例化了obtain_raw模块和gamma模块,分别获取RAW图像并对RAW图像进行gamma矫正。

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

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

可以看到在modelsim的Transcript有如下的打印信息,图像测试平台和FPGA硬件仿真的结果一致。

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

相关推荐
拿我格子衫来6 小时前
LaserWeb4:矢量图与位图如何变成 G-code
图像处理·图形渲染
Dfreedom.9 小时前
目标检测后处理核心:NMS非极大值抑制详解
图像处理·人工智能·深度学习·目标检测·目标跟踪
接着奏乐接着舞。10 小时前
【2026】73道Redis 常见面试题与参考答案
数据库·redis·后端·缓存
zzm62811 小时前
CVPR 2018 最佳论文精读:Taskonomy——计算机视觉任务之间的迁移学习
计算机视觉·迁移学习·cvpr·论文精读
cmc102813 小时前
292.三段式状态机第三段时序逻辑用state_c与_n的差异分析
fpga开发
牧羊人.33314 小时前
动手学深度学习 02 | 手写数字识别
图像处理·人工智能·深度学习·算法
AndrewHZ15 小时前
图像处理入门023 | 自适应直方图均衡化:CLAHE——把 HE 的“全局“变“局部“,治好光照不均与噪声放大
图像处理·双线性插值·自适应均衡化·clahe·对比度限制·分块处理·美颜pipeline
Zentceh17 小时前
全彩夜视 vs 黑白夜视:信息密度、AI识别准确率对比
人工智能·科技·计算机视觉·车载系统·无人机·量子计算·视频
Seraphina3618 小时前
记一次实验:利用缓存服务器规范化技术进行网页缓存欺骗
经验分享·笔记·网络安全·缓存
AI的探索之旅19 小时前
97 个 OpenCV 实例(十五):几何校正,透视变换 + ECC 对齐
人工智能·opencv·计算机视觉