基于FPGA与DNN的在线工业缺陷检测关于此领域随着人工智能的快速发展,深度神经网络(DNN)已广泛应用于工业缺陷检测、智能驾驶、医学研究等领域。然而,DNN模型存在复杂度高、计算资源消耗大等问题,在小功耗、低成本的边缘移动设备的实现上仍受到限制。FPGA是一种可重新配置的硬件设备,可以动态地重新编程以适应不同的应用需求。与传统通用处理器相比,FPGA具有并行处理能力强、功耗低等优势,使其广泛用于加速计算密集型任务。因此,使用FPGA(现场可编程门阵列)部署深度学习算法是当前的热门研究方向之一。 在深度学习领域,FPGA可用于加速神经网络的推理过程,通过定制的硬件设计来优化特定的神经网络运算,提高计算效率。通过将神经网络的计算任务映射到FPGA上,可以实现小功耗、低成本的高效并行计算,扩展深度学习算法在工业检测等边缘端的应用潜能。 ![]() ![]() 一些 Demos(1)基于FPGA的PCB缺陷检测系统[视频1][视频2]![]() 基于FPGA的PCB缺陷检测系统 ![]() 基于FPGA的通用目标检测系统 ![]() 系统架构 ![]() PCB缺陷检测数据集 在这个工作中,我们基于ZCU102[device]开发板实现了Yolo-v2模型,根据PCB缺陷检测任务迁移模型,并对模型进行8位量化。我们的项目是在这个[Project]的基础上进行优化的,我们的代码将在整理后逐步开源。主要步骤如下: 1.收集数据集: 为了训练和测试模型,我们获得了公开可用的 PCB 缺陷数据集[Dataset]. 该数据集涵盖了PCB板的各种类型、尺寸和缺陷场景,包括漏孔、老鼠咬伤、开路、短路、杂铜和杂项缺陷。 2.数据预处理: 在使用数据集进行训练之前,需要执行预处理操作。 这包括图像增强、调整大小、裁剪和标准化等任务,以确保数据一致性和适当的格式。 3.模型训练: 使用预处理后的数据集,我们可以开始基于YOLO-v2的深度学习模型的训练。 训练过程通常包括将数据输入模型、执行前向和后向传播,以及通过优化算法更新模型的权重和偏差。 4.FPGA编程: 完成模型训练后,我们将模型的参数和结构转换为适合在FPGA上运行的形式。 我们通过将模型量化为 8 位来优化模型。 随后,我们使用Xilinx HLS工具对模型进行仿真,并使用Vivado进行电路综合和实现。 5.FPGA算法部署: 为了可视化检测过程,我们首先将Ubuntu系统烧录到ZCU102开发板上,简化了串口、屏幕和其他外围接口的连接。 然后,我们开发一个 ARM 程序,与上一步使用 Vivado 生成的比特流一起创建一个可执行文件,存储在开发板的 SD 卡中。 SD卡还包含Ubuntu系统映像、PCB缺陷检测数据集和其他必要的文件。 6.检测系统启动: FPGA系统搭建完成后,我们根据指定的指令启动程序,将需要检测的PCB图像输入到系统中。 FPGA 系统对图像进行快速推理处理,识别现有缺陷。 通过这些步骤,我们就可以实现一个基于YOLO-v2模型的PCB缺陷检测系统,并利用FPGA的高性能计算能力,实现快速、准确的缺陷检测。 (2)基于FPGA的玻璃缺陷检测系统![]() GlassNet网络结构 ![]() 基于FPGA的GlassNet实现逻辑 ![]() 玻璃表面缺陷检测数据集 在这个工作中,我们自主设计了GlassNet模型,基于Zynq7045芯片进行了模型的FPGA实现主要步骤如下: 1.收集数据集: 为了训练和测试模型,我们从公司车间内收集了获采集了玻璃表面缺陷数据集,并且进行了像素级的标注。 2.数据预处理: 对数据集进行增强,包括旋转、上下翻转、垂直形变等手段。 3.模型设计: 设计了一种面向玻璃表面缺陷检测的语义分割轻量级CNN模型GlassNet。 4.模型训练: 使用预处理后的数据集,我们可以开始基于GlassNet的深度学习模型的训练。 5.FPGA编程: 由于芯片不同导致FPGA资源受限,与上一个工作不同,本工作我们使用Verilog代替HLS进行更细粒度、资源利用率更强的FPGA开发。 通过这些步骤,我们就可以实现一个基于GlassNet模型的玻璃表面缺陷检测系统。 (3)片上计算的高光谱相机处理器研制及ISP数字系统设计![]() 高光谱相机处理器设计 ![]() 相机处理器架构 在这个工作中,我们设计了自主知识产权的推扫式高光谱相机处理器,包括: 1.PCB设计: 设计了核心板、接口板和CMOS板的原理图、布局布线、制板和贴片。 2.高速接口: 使用GTH光口的高速收发接口向上位机传输大规模高光谱图像。 3.ISP设计: 针对高光谱图像成像步骤,在相机上部署辐射校正等专用ISP算法。 4.片上计算: 针对后续的医药成分分析等任务,开展检测算法的FPGA片上部署。 当前研究方向![]() 面向工业缺陷检测的轻量级模型设计 ![]() 极低比特神经网络量化算法(小于4位) ![]() RTL级FPGA计算加速与优化 ![]() 高光谱相机处理器研制及ISP数字系统设计 依托项目
学术成果
Note: * indicates the corresponding author. 项目组成员![]() 赵禀睿(在读) 博士四年级 ![]() 汪海(在读) 硕士二年级 ![]() 潘劲宇(已毕业) 去向:海康威视(成都) ![]() 张金洲(已毕业) 去向:国防科大科研助理 学术&活动![]() 学术竞赛 ![]() 学术会议 ![]() 校企合作 ![]() 组会讨论 如果您对此领域感兴趣并想加入我们的研究, 请联系我(neuzhaobr@163.com)或者张辉老师(zhanghuihby@126.com).谢谢! |