闲庭信步使用图像验证平台加速FPGA的开发:第二十七课——图像腐蚀的FPGA实现

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

图像腐蚀和膨胀属于图像形态学的范畴,原理在上个系列有讲解,我们直接在FPGA上实现。

由于前面设计后了参数化的data_cache3模块,所以图像的腐蚀操作在FPGA上实现非常的简单,我们在\src\erosion文件夹下新建erosion.sv文件,rtl代码实现如下。首先例化data_cache3模块,用来获取3x3区域的图像数据。

根据不同的腐蚀算子,实现了四种图片的腐蚀。腐蚀算法就是对算子对于的数据直接去与即可

在顶层的top模块中,例化了rgb2ycbcr,binary,erosion模块,对二值化的单bit数据进行腐蚀

在tb_image_sim文件中的三个initial块如下所示,主要完成图像数据的读写和比对等。

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

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

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

相关推荐
王哈哈^_^1 小时前
YOLOv11视觉检测实战:安全距离测算全解析
人工智能·数码相机·算法·yolo·计算机视觉·目标跟踪·视觉检测
AI technophile2 小时前
OpenCV计算机视觉实战(29)——OpenCV DNN模块
opencv·计算机视觉·dnn
深度学习lover2 小时前
<数据集>yolo航拍交通目标识别数据集<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·航拍交通目标识别
Js_cold2 小时前
Verilog任务task
开发语言·fpga开发·verilog
王哈哈^_^3 小时前
【数据集+完整源码】水稻病害数据集,yolov8水稻病害检测数据集 6715 张,目标检测水稻识别算法实战训推教程
人工智能·算法·yolo·目标检测·计算机视觉·视觉检测·毕业设计
brave and determined4 小时前
可编程逻辑器件学习(day3):FPGA设计方法、开发流程与基于FPGA的SOC设计详解
嵌入式硬件·fpga开发·soc·仿真·电路·时序·可编程逻辑器件
却道天凉_好个秋5 小时前
OpenCV(十六):椭圆的绘制
opencv·计算机视觉
xixixi777775 小时前
水印攻击中(鲁棒性攻击、表达攻击、解释攻击)的区别,详细解释清楚
图像处理·人工智能·计算机视觉·数字水印
Lee_yayayayaya7 小时前
锁相环技术及FPGA实现
fpga开发
从零开始的奋豆8 小时前
计算机视觉(一):相机标定
计算机视觉