闲庭信步使用图像验证平台加速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硬件仿真处理后的结果)。

相关推荐
Flying pigs~~9 小时前
RAG智慧问答项目
数据库·人工智能·缓存·微调·知识库·rag
许彰午9 小时前
CacheSQL(二):主从复制——OpLog 环形缓冲区与故障自动恢复
java·数据库·缓存
张人玉11 小时前
机器视觉VsionPro——多目标检测高级用法动态
目标检测·计算机视觉·机器视觉·vsionpro
有为少年15 小时前
从概率估计到“LLM 训练是有损压缩”
人工智能·线性代数·机器学习·计算机视觉·矩阵
凯瑟琳.奥古斯特15 小时前
Redis是什么及核心特性
前端·css·redis·缓存
爱吃巧克力的程序媛19 小时前
计算机图形学---在OpenGL中,什么是归一化 UV 坐标?
人工智能·计算机视觉·uv
手握风云-20 小时前
Redis:不只是缓存那么简单(六)
redis·缓存
Aaron158820 小时前
RFSOC+VU13P+GPU 在6G互联网中的技术应用
大数据·人工智能·算法·fpga开发·硬件工程·信息与通信·信号处理
这张生成的图像能检测吗21 小时前
(论文速读)让机器人像人一样走路:注意力机制如何让腿足机器人征服复杂地形
人工智能·深度学习·计算机视觉·机器人控制
啥都会一点的老程,自在地镜强者21 小时前
【Agent 缓存技术核心差异化】—商业软件壁垒之前缀缓存(二)Codex和Claude code方案比对篇+过度解读
缓存·ai编程