闲庭信步使用图像验证平台加速FPGA的开发:第二十四课——图像直方图和RGB图像叠加的FPGA实现
(本系列只需要modelsim即可完成数字图像的处理,每个工程都搭建了全自动化的仿真环境,只需要双击top_tb.bat文件就可以完成整个的仿真,大大降低了初学者的门槛!!!!如需要该系列的工程文件请关注知识星球:成工fpga,https://t.zsxq.com/DMeqH,关注即送200GB学习资料,链接已置顶!)
上篇我们实现了图像的直方图和灰度图像的叠加,本篇我们来实现一下图像的直方图和RGB彩色图像的叠加。其实有了上篇的图像直方图和灰度图像的叠加的FPGA实现,那图像的直方图叠加到RGB图像也就简单多了,只需要将直方图分别叠加到RGB的各个通道即可。
在\src\hist文件夹下新建plot_hist.sv文件用来替换单通道的plot_chnl_hist文件,代码如下,思路和plot_chnl_hist完全一致,而且可以指定直方图的颜色。
在top文件中例化了rgb2ycbcr,hist_statistics,hist_norm,hist_mem,plot_hist等模块,如下所示。
在tb_image_sim文件中的第二个initial块中,将图像测试平台和FPGA硬件仿真的结果保存并比对,需要注意一点,要完成两帧图像的处理,通过wait((frame_cnt == 1) & frame_done)来实现。
双击sim文件夹下的top_tb.bat文件,完成系统的自动化仿真。
可以看到在modelsim的Transcript有如下的打印信息,图像测试平台和FPGA硬件仿真的结果一致。
打开img文件夹,也可以看到图像测试平台和FPGA硬件仿真的结果是一致的(no_seq*是图像测试平台处理后的图片,seq*是FPGA硬件仿真处理后的结果)。