当前位置: 首页 > news >正文

闲庭信步使用图像验证平台加速FPGA的开发:第十三课——图像浮雕效果的FPGA实现

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

图像的浮雕效果,就是把所要呈现的图像突起于石头表面,根据凹凸的程度不同从而形成三维的立体感。算法产生浮雕效果原理与之类似,即通过勾画图像的轮廓,并且降低周围的像素值,从而产生一张具有立体感的浮雕效果图片。我们可以通过相邻元素相减的方法得到轮廓与边缘的差,从而获得凹凸的立体感觉。

图像实现浮雕效果的公式就是求出前后两个像素点的差值,然后再加上一个阈值,既|img(i,j)-img(i,j-1)|+threshold

,如果区域比较平坦,值都在threshold附近,而图像变化比较大,结果就好远离threshold,从而形成浮雕的效果。

所以图像浮雕效果的FPGA实现不需要行缓存,只需要对图像数据进行一拍的延时即可。

在\src\emboss文件夹下新建emboss.sv文件,基本功能如下,图像数据延时一个时钟周期,为了避免负数,通过判断前后数据的大小进行减法运算,最后根据sum的值来确定输入的值。

在top文件中,例化了rgb2ycbcr模块和emboss模块,分别获取图像的亮度数据并使用亮度数据进行浮雕效果的实现。

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

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

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

打开img文件夹,也可以看到图像测试平台和FPGA硬件仿真的结果是一致的。

当然通过设置样式产生pattern产生正负的浮雕效果,如下所示。

其实我们发现,图像浮雕的效果并不是很明显,其实实现图像的浮雕效果还有其它的方法,比如使用多行数据,这就要用到了行缓存,大家如果感兴趣可以自行设计。

http://www.lryc.cn/news/587442.html

相关文章:

  • 【Mysql作业】
  • 16.使用ResNet网络进行Fashion-Mnist分类
  • [GWCTF 2019]我有一个数据库
  • 在 Ubuntu 下安装 MySQL 数据库
  • 谷歌推出Vertex AI Memory Bank:为AI智能体带来持久记忆,支持连续对话
  • 【echarts踩坑记录】为什么第二个Y轴最大值不整洁
  • 华为HarmonyOS 5.0深度解析:跨设备算力池技术白皮书(2025全场景智慧中枢)
  • JavaScript加强篇——第八章 高效渲染与正则表达式
  • vue防内存泄漏和性能优化浅解
  • PHP语法高级篇(二):文件处理
  • 小架构step系列13:测试用例的加载
  • python的平安驾校管理系统
  • C# 接口(接口可以继承接口)
  • MySQL SQL语句精要:DDL、DML与DCL的深度探究
  • 大模型-量化技术
  • mmap映射文件
  • mapstruct与lombok冲突原因及解决方案
  • Java面试基础:面向对象(2)
  • 利用 MySQL 进行数据清洗
  • System.getenv()拿不到你配置的环境变量
  • 流程控制:从基础结构到跨语言实践与优化
  • IP 地址与网络基础全面解析
  • AI驱动的软件工程(中):文档驱动的编码与执行
  • 【前端知识】移动端APP原生应用与H5交互底层逻辑
  • C#接口进阶:继承与多态实战解析
  • 高压空气冲击炮cad【3张】三维图+设计说明书
  • AutoDL挂载阿里云OSS
  • 01.深入理解 Python 中的 if __name__ == “__main__“
  • 自动润滑系统:从 “盲目养护“ 到智能精注的工业运维革命
  • MD5算法深度剖析与可视化解析