基于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数字系统设计


依托项目

  • 基板玻璃软硬件协同在线智能检测设备研制.(湖南大学-中国移动揭榜挂帅项目,2024.1~至今)

  • 高端医药光谱成像及智能检测分析仪器研制.(国家自然科学基金重大仪器项目,2021.1~至今)

  • 基于区块链的工业机器视觉AI协同平台研发与产业化.(湖南省科技厅重点项目,2022.1~2023.12)

  • 基于FPGA的复杂场景3C产品缺陷智能检测系统.(教育部产学研基金项目,2021.1~2021.12)


学术成果

  1. Zhao B, Wang Y, Zhang H*, et al. 4-bit CNN quantization method with compact LUT-Based Multiplier implementation on FPGA[J]. IEEE Transactions on Instrumentation and Measurement, vol. 72, pp. 1-10, 2023.

  2. Zhao B, Zhang H*, Wang Y, et al. Unleashing the Potential of On-Chip AI-Powered Hyperspectral Hardware Computing—A Tutorial[J]. IEEE Transactions on Circuits and Systems II: Express Briefs, vol. 71, no. 3, pp. 1733-1737, 2023.

  3. Zhang J, Zhang H*, Zhao B, et al. FPGA implementation of neural network accelerator for PCB defect detection[C]//Third International Symposium on Computer Engineering and Intelligent Communications (ISCEIC 2022). SPIE, 2023, 12462: 630-637.

  4. Zhao B, Wang Y, Zhang H*, et al. KAM-Net: Kilobyte-Scale Ultra-Lightweight Attention-based Network for Glass Defect Detection with Algorithm/Hardware Co-design[J]. IEEE Transactions on Industrial Informatics.(Under Review)

  5. 王耀南,赵禀睿,张辉等. 卷积神经网络软硬件协同加速的异构SoC实现方法[P]. 湖南省:CN113240101B,2022-07-05.

  6. 王耀南,潘劲宇,张辉等. 一种基于医药高光谱检测网络的阈值感知低位量化方法[P]. 湖南省:CN115700806A,2023-02-07.

  7. 王耀南,潘劲宇,张辉等.一种基于FPGA的全流水线医药高光谱图像神经网络分类方法[P].湖南省:CN116662593B,2023-10-27.

  8. 王耀南,赵禀睿,张辉等.一种用于神经网络模型量化的混合舍入方法[P].2023,实审中.

  9. 张辉,汪海,王耀南等.基于明暗场融合的基板玻璃缺陷图像自动对焦方法及系统[P].2024,长沙中心预审中.

  10. 王耀南,赵禀睿,张辉等.光谱图像检测模型、检测方法和片上计算的相机处理器[P].2024,长沙中心预审中.


Note: * indicates the corresponding author.

项目组成员

赵禀睿(在读)

博士四年级

汪海(在读)

硕士二年级

潘劲宇(已毕业)

去向:海康威视(成都)

张金洲(已毕业)

去向:国防科大科研助理

学术&活动

学术竞赛

学术会议

校企合作

组会讨论

如果您对此领域感兴趣并想加入我们的研究, 请联系我(neuzhaobr@163.com)或者张辉老师(zhanghuihby@126.com).谢谢!