CN115810005B - 基于并行计算的瓦楞纸箱缺陷检测加速方法、系统、设备及存储介质 - Google Patents
基于并行计算的瓦楞纸箱缺陷检测加速方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN115810005B CN115810005B CN202211650792.8A CN202211650792A CN115810005B CN 115810005 B CN115810005 B CN 115810005B CN 202211650792 A CN202211650792 A CN 202211650792A CN 115810005 B CN115810005 B CN 115810005B
- Authority
- CN
- China
- Prior art keywords
- image
- layer
- neural network
- model
- sub
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000007547 defect Effects 0.000 title claims abstract description 67
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000001514 detection method Methods 0.000 title claims abstract description 51
- 230000001133 acceleration Effects 0.000 title claims abstract description 35
- 238000013528 artificial neural network Methods 0.000 claims abstract description 49
- 238000010606 normalization Methods 0.000 claims abstract description 29
- 238000007781 pre-processing Methods 0.000 claims abstract description 24
- 230000006870 function Effects 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 19
- 238000013461 design Methods 0.000 claims description 16
- 238000011176 pooling Methods 0.000 claims description 16
- 238000000605 extraction Methods 0.000 claims description 14
- 238000013178 mathematical model Methods 0.000 claims description 11
- 239000011159 matrix material Substances 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 10
- 230000004913 activation Effects 0.000 claims description 9
- 230000001360 synchronised effect Effects 0.000 claims description 6
- 238000012549 training Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 230000003213 activating effect Effects 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000002950 deficient Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000000280 densification Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Abstract
本发明公开了一种基于并行计算的瓦楞纸箱缺陷检测加速方法、系统、设备及存储介质,方法包括:获取瓦楞纸箱的目标物图像,并将目标物图像调整为设定大小的子图像;对每个子图像进行预处理,并在输出图像的不同通道中重组每个子图像的像素;将预处理后的子图像输入到改进后的二值化神经网络BNN模型中提取特征图像;所述BNN模型中,只有卷积层和密集层的权重被二值化,而批量归一化层的权重仍然是实数;对提取的特征图像进行分类,具体为:将特征图像展平为设定大小的特征向量,然后,部署两个密集层以将特征向量致密为多维;最后,应用soft‑max层来生成输出分类结果,每一维特征向量对应一个分类结果。本发明能够大大提高瓦楞纸箱缺陷检测速度和精度。
Description
技术领域
本发明属于机器视觉检测技术领域,具体涉及一种基于并行计算的瓦楞纸箱缺陷检测加速方法、系统、设备及存储介质。
背景技术
现代工业发展迅速,瓦楞纸箱趋于高速化、连续化、大批量生产的趋势。但是,由于纸箱生产设备精度低、设备与图像参数不匹配或材料故障等因素,都可能出现纸箱缺陷,从而对产品质量产生负面影响。传统的纸箱缺陷是手动检测的。然而,人工检测成本高、速度慢、识别率低,难以满足包装产品批量生产的要求。随着智能化和信息化技术的发展,机器视觉在工业检测中得到了广泛的应用。与传统的人工检测方法相比,基于机器视觉的自动检测具有非接触、速度快、抗干扰等特点,可以减轻检测人员的劳动强度,提高检测效率和精度。
研究人员对基于机器视觉的纸箱缺陷检测进行了大量研究,纸箱缺陷在线检测技术取得了很大的研究进展。然而,对检测精度要求较高的脏点、雾点、飞墨、刮痕等的检测在算法中却很少考虑,容易造成此类缺陷的漏检或误检。因此,如何提高纸箱缺陷检测的检测速度和检测精度是本领域技术人员亟待解决的技术问题之一。
发明内容
本发明的主要目的在于克服现有技术的缺点与不足,提供一种基于并行计算的瓦楞纸箱缺陷检测加速方法、系统、设备及存储介质,提高了瓦楞纸箱缺陷检测的速度和精度。
为了达到上述目的,本发明采用以下技术方案:
第一方面,本发明提供了一种基于并行计算的瓦楞纸箱缺陷检测加速方法,包括下述步骤:
获取瓦楞纸箱的目标物图像,并将目标物图像调整为设定大小的子图像;
对每个子图像进行预处理,并在输出图像的不同通道中重组每个子图像的像素;
将预处理后的子图像输入到改进后的二值化神经网络BNN模型中提取特征图像;其中改进后的二值化神经网络BNN模型包括图像特征提取模块和缺陷分类模块,通过特征提取模块提取特征图像送入缺陷分类模块进行缺陷分类;所述改进后的二值化神经网络BNN模型中,只有卷积层和密集层的权重被二值化,而批量归一化层的权重仍然是实数;在卷积层中,“use_bias”参数设置为false;最大池化层用于提取特征图像的子区域中的最大值;最大池化的输出没有填充;批量归一化层用于减轻不稳定梯度的影响;
对提取的特征图像进行分类,具体为:将特征图像展平为设定大小的特征向量,然后,部署两个密集层以将特征向量致密为多维;最后,应用soft-max层来生成输出分类结果,每一维特征向量对应一个分类结果。
作为优选的技术方案,所述重组每个子图像的像素,采用下述数学模型:
f(x)=(x-127.5)/128
其中,f(x)表示重组后的子图像,x是用8位整数表示的像素,范围为0到255,常数127.5是范围边界0和255的平均值,常数128是缩放因子;在预处理之后,像素值被限制在(-1,1)内。
作为优选的技术方案,所述进后的二值化神经网络BNN模型中,二值化层用作激活函数,如下式所示:
其中x是批量归一化层的输出,是一个实数;q(x)是二值化层的1位输出,在通过三个额外的卷积层以及相应的最大池化、归一化和二值化层后,完成特征图像的提取。
作为优选的技术方案,所述进后的二值化神经网络BNN模型中,交叉熵损失函数用于测量预测类与相应标记类之间的差异,数学模型表示如下:
其中M表示类别数,ym是预测类别,c是标记类别,标签为m的图像表示为Xm;模型的训练过程旨在通过调整权重参数来最小化损失函数。
作为优选的技术方案,所述改进后的二值化神经网络BNN模型是在CPU和FPGA上进行训练,具体为:
在FPGA设计中,卷积运算是一组矩阵乘法,将矩阵乘法计算后的中间结果存储在随机存取存储器RAM中,RAM访问时间为2个时钟周期;卷积层滤波器大小为3x3;在每次矩阵乘法之前,需要重复多次次将图像数据访问RAM,使用有限状态机FSM来帮助实现BNN模型中的不同卷积层;FSM是一种能够保证函数逻辑顺序的计算模型,通常应用于同步设计中;
改进后的二值化神经网络BNN模型在CPU上训练好后,然后在包含嵌入ARM处理器的FPGA上进行推理,图像预处理、卷积层一和最后一个激活层在ARM中实现;卷积层一的输出使用Xillibus IP内核通过AXI总线发送到FPGA,在FPGA处理之后,密集层二的输出然后被传输回ARM用于激活层;
在推理过程中,所有层权重都存储在只读存储器ROM中,这是嵌入式系统中使用的一种非易失性存储器,ROM中存储的数据在编程后无法修改,这使得存储经过训练的神经网络权重/参数变得完美;在FPGA设计中,首先需要准备指定ROM初始内容的存储器初始化文件,初始文件的扩展名为.mif。
作为优选的技术方案,在分类的过程中,由于预处理过程中,将输入的图片进行了下采样以减小图像的规模,因此在网络模型末尾需要对图像进行上采样,将尺寸恢复为初始大小图像,即对N=F(A1)进行上采样得到N%,数学模型表示为:
Zi表示来自BNN激活输出的第i个实数;是第i个类别的概率;最终输出是5个实数,代表缺陷类型的概率,即无缺陷、滚入刻度、补丁、夹杂物和划痕。
作为优选的技术方案,所述目标物图像是通过工业相机拍摄的。
第二方面,本发明提供了一种基于并行计算的瓦楞纸箱缺陷检测加速系统,应用于所述的基于并行计算的瓦楞纸箱缺陷检测加速方法,包括图像获取模块、预处理模块、特征提取模块和图像分类模块;
所述图像获取模块,用于获取瓦楞纸箱的目标物图像,并将目标物图像调整为设定大小的子图像;
所述预处理模块,用于对每个子图像进行预处理,并在输出图像的不同通道中重组每个子图像的像素;
所述特征提取模块,用于将预处理后的子图像输入到改进后的二值化神经网络BNN模型中提取特征图像;所述改进后的二值化神经网络BNN模型中,只有卷积层和密集层的权重被二值化,而批量归一化层的权重仍然是实数;在卷积层中,“use_bias”参数设置为false;最大池化层用于提取特征图像的子区域中的最大值;最大池化的输出没有填充;批量归一化层用于减轻不稳定梯度的影响;
所述图像分类模块,用于对提取的特征图像进行分类,具体为:将特征图像展平为设定大小的特征向量,然后,部署两个密集层以将特征向量致密为多维;最后,应用soft-max层来生成输出分类结果,每一维特征向量对应一个分类结果。
第三方面,本发明提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序指令,所述计算机程序指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如所述的基于并行计算的瓦楞纸箱缺陷检测加速方法。
第四方面,本发明提供了一种计算机可读存储介质,存储有程序,所述程序被处理器执行时,实现所述的基于并行计算的瓦楞纸箱缺陷检测加速方法。
本发明与现有技术相比,具有如下优点和有益效果:
与现有技术相比,本发明将预处理后的子图像输入到改进后的二值化神经网络BNN模型中提取特征图像;所述改进后的二值化神经网络BNN模型中,只有卷积层和密集层的权重被二值化,而批量归一化层的权重仍然是实数;在卷积层中,“use_bias”参数设置为false;最大池化层用于提取特征图像的子区域中的最大值;最大池化的输出没有填充;批量归一化层用于减轻不稳定梯度的影响;通过本发明的BNN模型可以快速准确的对瓦楞纸箱缺陷进行检测,提高检测精度。
本发明中进后的二值化神经网络BNN模型在CPU上训练好后,然后在包含嵌入ARM处理器的FPGA上进行推理,图像预处理、卷积层一和最后一个激活层在ARM中实现;卷积层一的输出使用Xillibus IP内核通过AXI总线发送到FPGA,在FPGA处理之后,密集层二的输出然后被传输回ARM用于激活层。通过应用FPGA加速,BNN模型可以在5秒内处理单个灰度图像。考虑到AM对象的生产速度,结果可以保证制造过程中的实时质量检查。此外,基于FPGA的设计可以通过在更强大的FPGA中生成更多BNN模块来轻松扩展。对于处理速度要求更高的其他应用,也很有前景。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例基于并行计算的瓦楞纸箱缺陷检测加速方法的流程图;
图2为本发明实施例进后的二值化神经网络BNN模型架构图;
图3为本发明实施例FPGA加速架构内部示意图;
图4为本发明实施例进后的二值化神经网络BNN卷积层二描述数据类型示意图。
图5为本发明实施例基于并行计算的瓦楞纸箱缺陷检测加速系统的方框图。
图6为本发明实施例电子设备的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
请参阅图1,本实施例基于并行计算的瓦楞纸箱缺陷检测加速方法,包括下述步骤:
S1、获取瓦楞纸箱的目标物图像,并将目标物图像调整为设定大小的子图像;
示例性的,将得到大小为nch×h×w的目标物图像I进行重新调整为nch×h/2×w/2的子图像,其中nch为信道,h为高度,w为宽度。
进一步的,所述目标物图像是利用工业相机拍摄的,工业相机可以安装在机器流水线上代替人眼来做测量和判断,通过数字图像摄取目标转换成图像信号,传送给专用的图像处理系统,图像系统对这些信号进行各种运算来抽取目标的特征,进而根据判别的结果来控制现场的设备动作。
S2、对每个子图像进行预处理,并在输出图像的不同通道中重组每个子图像的像素;
进一步的,对每个子图像进行预处理得到预处理后的图像A0,所述重组每个子图像的像素,采用下述数学模型:
f(x)=(x-127.5)/128
其中,f(x)表示重组后的子图像,x是用8位整数表示的像素,范围为0到255,常数127.5是范围边界0和255的平均值,常数128是缩放因子;在预处理之后,像素值被限制在(-1,1)内。
S3、将预处理后的子图像输入到改进后的二值化神经网络BNN模型中提取特征图像;
进一步的,对于预处理后的图像A1,数学模型表示为:
N=F(A1)
上述表达式中,N为噪声预测值,F(·)为一个深度神经网络BNN模型。本实施例采用了BNN模型,它的效率和准确性很高。然而,考虑到由于设计的能效和嵌入式特性,本实施例将在FPGA上实现它,将BNN模型权重参数二值化,使用二值化权重值,可以用XNOR位运算代替乘法,这极大地加快了FPGA中的推理时间。
其中,改进后的二值化神经网络BNN模型包括图像特征提取模块和缺陷分类模块,通过特征提取模块提取特征图像送入缺陷分类模块进行缺陷分类。
更进一步的,请参阅图2,在所述改进后的二值化神经网络BNN模型中,在卷积层中,“use_bias”参数设置为false;最大池化层用于提取特征图的子区域中的最大值;本实施例中,最大池化层大小为a×a,步幅设置为b,最大池化的输出没有填充;批量归一化层用于减轻不稳定梯度的影响,它通过缩放和移位操作对输入值进行标准化和规范化;在批量标准化层中,动量设置为α,epsilon为β,scale为false;epsilon是一个添加到方差中的小浮点数,以避免除以零;二值化层用作激活函数,如下式所示:
其中x是批量归一化层的输出,它是一个实数。q(x)是二值化层的1位输出。在通过三个额外的卷积层以及相应的最大池化、归一化和二值化层后,可以成功地提取特征图像。
S4、对提取的特征图像进行分类;
本实施例中,分类模块采用a1×b1×c1的特征图并将它们展平为的特征向量;然后,部署两个密集层以将/>特征向量致密为5维。最后,应用如下等式中的soft-max层来生成输出。在本实施例的二值化神经网络BNN模型设计中,M是类的数量(缺陷类型的数量加上一种无缺陷类型);Zi表示来自BNN激活输出的第i个实数;/>是第i个类别的概率。最终输出是5个实数,代表缺陷类型的概率,即无缺陷、滚入刻度、补丁、夹杂物和划痕。其数学模型可以就表示为:
更进一步的,在所述二值化神经网络BNN模型中,交叉熵损失函数用于测量预测类与相应标记类之间的差异,其数学模型可以表示如下:
其中M表示类别数,ym是预测类别,c是标记类别。标签为m的图像表示为Xm。我们模型的训练过程旨在通过调整权重参数来最小化损失函数。
所述改进后的二值化神经网络BNN模型是在CPU和FPGA上进行训练,具体为:
在FPGA设计中,卷积运算可以看作是一组矩阵乘法。这些中间结果存储在随机存取存储器(RAM)中。RAM访问时间通常为2个时钟周期。本发明的卷积层滤波器大小为3×3。在每次矩阵乘法之前,它需要重复9次将图像数据访问RAM,我们使用有限状态机(FSM)来帮助实现BNN模型中的不同卷积层。FSM是一种能够保证函数逻辑顺序的计算模型,通常应用于同步设计中;
改进后的二值化神经网络BNN模型在CPU上训练好后,然后在包含嵌入ARM处理器的FPGA上进行推理,图像预处理、卷积层一和最后一个激活层在ARM中实现;卷积层一的输出使用Xillibus IP内核通过AXI总线发送到FPGA,在FPGA处理之后,密集层二的输出然后被传输回ARM用于激活层。
在推理过程中,所有层权重都存储在只读存储器(ROM)中,这是嵌入式系统中使用的一种非易失性存储器。ROM中存储的数据在编程后无法修改。这使得存储经过训练的神经网络权重/参数变得完美。在FPGA设计中,本发明首先需要准备指定ROM初始内容的存储器初始化文件(扩展名为.mif)。
可以理解的是,在改进后的二值化神经网络BNN模型在CPU上训练好后,就可以用于推理了。为了拥有一个独立且完整的系统,本实施例将推理过程呈现为嵌入式设计。BNN模型在片上系统(SoC)中实现,即Terasic SoC套件开发板,该开发板包含嵌入ARM处理器的FPGA,以及内存等其他组件、连接器、传感器和显示器。FPGA器件是Intel Cyclone V。FPGA中嵌入的硬核处理器是双核ARM Cortex-A9 MPCore处理器,FPGA加速架构请参阅图3。图像预处理、卷积层1和最后一个激活层在ARM中实现。由于这些层涉及实数运算,因此更容易在ARM中实现,而不是在FPGA自定义逻辑中实现。卷积层一的输出使用Xillibus IP内核通过AXI总线发送到FPGA。在FPGA处理之后,密集层二的输出然后被传输回ARM用于激活层。
进一步的,请参阅图4,在改进后的二值化神经网络BNN模型中,只有卷积层和密集层的权重被二值化,而批量归一化层的参数仍然是实数。图4显示了详细信息。虽然图中只展示了整个BNN模型的一部分,但很明显,这些值在通过归一化层后立即变为实数,这表明归一化层的权重是实数。通常,实数在计算机中表示为浮点数。为了避免FPGA中的任何浮点运算,这些运算需要资源和时间消耗,使用定点符号。定点数表示是实数数据类型,用于在小数点后具有固定位数的数字。定点数据类型的值本质上是一个整数,由该类型确定的特定因子缩放。在本实施例中,比例因子是1024,这意味着需要10位来表示原始实数的小数部分。根据批量归一化参数的最大值,使用18位来表示原始实数的整数部分。结果,实数在FPGA内部存储为28位定点数。
更进一步的,本实施例中通过工业相机拍摄瓦楞纸箱图片来制作数据集:对于数据集中的每个图像,我们提取了一个无缺陷的子区域,将其调整为200×200并将其标记为“无缺陷”。此外,根据缺陷标注,对于每种缺陷类型中的每张图像,提取了子区域,将它们调整为200×200大小,并用相同的缺陷类型标记它们。这确保了经过训练的神经网络也可以用于定位缺陷。修改后的数据集以7:3的比例分为训练集和测试集。对于数据集中的每10张随机图像,将7张图像分配给训练集,将另外3张分配给测试集。
本发明将预处理后的子图像输入到改进后的二值化神经网络BNN模型中提取特征图像;所述改进后的二值化神经网络BNN模型中,只有卷积层和密集层的权重被二值化,而批量归一化层的权重仍然是实数;在卷积层中,“use_bias”参数设置为false;最大池化层用于提取特征图像的子区域中的最大值;最大池化的输出没有填充;批量归一化层用于减轻不稳定梯度的影响;通过本发明的BNN模型可以快速准确的对瓦楞纸箱缺陷进行检测,提高检测精度。
需要说明的是,对于前述的各方法实施例,为了简便描述,将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。
基于与上述实施例中的基于并行计算的瓦楞纸箱缺陷检测加速方法相同的思想,本发明还提供了基于并行计算的瓦楞纸箱缺陷检测加速系统,该系统可用于执行上述基于并行计算的瓦楞纸箱缺陷检测加速方法。为了便于说明,基于并行计算的瓦楞纸箱缺陷检测加速系统实施例的结构示意图中,仅仅示出了与本发明实施例相关的部分,本领域技术人员可以理解,图示结构并不构成对装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
请参阅图5,在本申请的另一个实施例中,提供了一种基于并行计算的瓦楞纸箱缺陷检测加速系统100,该系统包括图像获取模块101、预处理模块102、特征提取模块103和图像分类模块104;
所述图像获取模块101,用于获取瓦楞纸箱的目标物图像,并将目标物图像调整为设定大小的子图像;
所述预处理模块102,用于对每个子图像进行预处理,并在输出图像的不同通道中重组每个子图像的像素;
所述特征提取模块103,用于将预处理后的子图像输入到改进后的二值化神经网络BNN模型中提取特征图像;所述改进后的二值化神经网络BNN模型中,只有卷积层和密集层的权重被二值化,而批量归一化层的权重仍然是实数;在卷积层中,“use_bias”参数设置为false;最大池化层用于提取特征图像的子区域中的最大值;最大池化的输出没有填充;批量归一化层用于减轻不稳定梯度的影响;
所述图像分类模块104,用于对提取的特征图像进行分类,具体为:将特征图像展平为设定大小的特征向量,然后,部署两个密集层以将特征向量致密为多维;最后,应用soft-max层来生成输出分类结果,每一维特征向量对应一个分类结果。
需要说明的是,本发明的基于并行计算的瓦楞纸箱缺陷检测加速系统与本发明的基于并行计算的瓦楞纸箱缺陷检测加速方法一一对应,在上述基于并行计算的瓦楞纸箱缺陷检测加速方法的实施例阐述的技术特征及其有益效果均适用于基于并行计算的瓦楞纸箱缺陷检测加速方法的实施例中,具体内容可参见本发明方法实施例中的叙述,此处不再赘述,特此声明。
此外,上述实施例的基于并行计算的瓦楞纸箱缺陷检测加速系统的实施方式中,各程序模块的逻辑划分仅是举例说明,实际应用中可以根据需要,例如出于相应硬件的配置要求或者软件的实现的便利考虑,将上述功能分配由不同的程序模块完成,即将所述基于并行计算的瓦楞纸箱缺陷检测加速系统的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分功能。
请参阅图6,在一个实施例中,提供了一种实现基于并行计算的瓦楞纸箱缺陷检测加速方法的电子设备,所述电子设备200可以包括第一处理器201、第一存储器202和总线,还可以包括存储在所述第一存储器202中并可在所述第一处理器201上运行的计算机程序,如基于并行计算的瓦楞纸箱缺陷检测加速程序203。
其中,所述第一存储器202至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述第一存储器202在一些实施例中可以是电子设备200的内部存储单元,例如该电子设备200的移动硬盘。所述第一存储器202在另一些实施例中也可以是电子设备200的外部存储设备,例如电子设备200上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(SecureDigital,SD)卡、闪存卡(Flash Card)等。进一步地,所述第一存储器202还可以既包括电子设备200的内部存储单元也包括外部存储设备。所述第一存储器202不仅可以用于存储安装于电子设备200的应用软件及各类数据,例如基于并行计算的瓦楞纸箱缺陷检测加速程序203的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述第一处理器201在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述第一处理器201是所述电子设备的控制核心(Control Unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述第一存储器202内的程序或者模块,以及调用存储在所述第一存储器202内的数据,以执行电子设备200的各种功能和处理数据。
图6仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图6示出的结构并不构成对所述电子设备200的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
所述电子设备200中的所述第一存储器202存储的基于并行计算的瓦楞纸箱缺陷检测加速程序203是多个指令的组合,在所述第一处理器201中运行时,可以实现:
获取瓦楞纸箱的目标物图像,并将目标物图像调整为设定大小的子图像;
对每个子图像进行预处理,并在输出图像的不同通道中重组每个子图像的像素;
将预处理后的子图像输入到改进后的二值化神经网络BNN模型中提取特征图像;所述改进后的二值化神经网络BNN模型中,只有卷积层和密集层的权重被二值化,而批量归一化层的权重仍然是实数;在卷积层中,“use_bias”参数设置为false;最大池化层用于提取特征图像的子区域中的最大值;最大池化的输出没有填充;批量归一化层用于减轻不稳定梯度的影响;
对提取的特征图像进行分类,具体为:将特征图像展平为设定大小的特征向量,然后,部署两个密集层以将特征向量致密为多维;最后,应用soft-max层来生成输出分类结果,每一维特征向量对应一个分类结果。
进一步地,所述电子设备200集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个非易失性计算机可读取存储介质中。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (8)
1.基于并行计算的瓦楞纸箱缺陷检测加速方法,其特征在于,包括下述步骤:
获取瓦楞纸箱的目标物图像,并将目标物图像调整为设定大小的子图像;
对每个子图像进行预处理,并在输出图像的不同通道中重组每个子图像的像素;
将预处理后的子图像输入到改进后的二值化神经网络BNN模型中提取特征图像;其中改进后的二值化神经网络BNN模型包括特征提取模块和缺陷分类模块,通过特征提取模块提取特征图像送入缺陷分类模块进行缺陷分类;所述改进后的二值化神经网络BNN模型中,只有卷积层和密集层的权重被二值化,而批量归一化层的权重仍然是实数;在卷积层中,“use_bias”参数设置为false;最大池化层用于提取特征图像的子区域中的最大值;最大池化层的输出没有填充;批量归一化层用于减轻不稳定梯度的影响;
所述改进后的二值化神经网络BNN模型中,交叉熵损失函数用于测量预测类与相应标记类之间的差异,数学模型表示如下:
其中M表示类别数,ym是预测类别,c是标记类别,标签为m的图像表示为Xm;模型的训练过程旨在通过调整权重参数来最小化损失函数;
所述改进后的二值化神经网络BNN模型是在CPU和FPGA上进行训练,具体为:
在FPGA设计中,卷积运算是一组矩阵乘法,将矩阵乘法计算后的中间结果存储在随机存取存储器RAM中,RAM访问时间为2个时钟周期;卷积层滤波器大小为3x3;在每次矩阵乘法之前,需要重复多次将图像数据访问RAM,使用有限状态机FSM来帮助实现BNN模型中的不同卷积层;FSM是一种能够保证函数逻辑顺序的计算模型,通常应用于同步设计中;
改进后的二值化神经网络BNN模型在CPU上训练好后,然后在包含嵌入ARM处理器的FPGA上进行推理,图像预处理、卷积层一和最后一个激活层在ARM中实现;卷积层一的输出使用Xillibus IP内核通过AXI总线发送到FPGA,在FPGA处理之后,密集层二的输出然后被传输回ARM用于激活层;
在推理过程中,所有层权重都存储在只读存储器ROM中,这是嵌入式系统中使用的一种非易失性存储器,ROM中存储的数据在编程后无法修改,这使得存储经过训练的神经网络权重/参数变得完美;在FPGA设计中,首先需要准备指定ROM初始内容的存储器初始化文件,初始文件的扩展名为.mif;
对提取的特征图像进行分类,具体为:将特征图像展平为设定大小的特征向量,然后,部署两个密集层以将特征向量致密为多维;最后,应用soft-max层来生成输出分类结果,每一维特征向量对应一个分类结果。
2.根据权利要求1所述基于并行计算的瓦楞纸箱缺陷检测加速方法,其特征在于,所述重组每个子图像的像素,采用下述数学模型:
f(x)=(x-127.5)/128
其中,f(x)表示重组后的子图像,x是用8位整数表示的像素,范围为0到255,常数127.5是范围边界0和255的平均值,常数128是缩放因子;在预处理之后,像素值被限制在(-1,1)内。
3.根据权利要求1所述基于并行计算的瓦楞纸箱缺陷检测加速方法,其特征在于,所述改进后的二值化神经网络BNN模型中,二值化层用作激活函数,如下式所示:
其中x是批量归一化层的输出,是一个实数;q(x)是二值化层的1位输出,在通过三个额外的卷积层以及相应的最大池化、归一化和二值化层后,完成特征图像的提取。
4.根据权利要求1所述基于并行计算的瓦楞纸箱缺陷检测加速方法,其特征在于,在分类的过程中,由于预处理过程中,将输入的图片进行了下采样以减小图像的规模,因此在网络模型末尾需要对图像进行上采样,将尺寸恢复为初始大小图像,即对N=F(A1)进行上采样得到N%,数学模型表示为:
N表示噪声预测值;A1表示预处理后的图像;F(·)为一个深度神经网络BNN模型,Zi表示来自BNN激活输出的第i个实数;δ(zi)是第i个类别的概率;最终输出是5个实数,代表缺陷类型的概率,即无缺陷、滚入刻度、补丁、夹杂物和划痕。
5.根据权利要求1所述基于并行计算的瓦楞纸箱缺陷检测加速方法,其特征在于,所述目标物图像是通过工业相机拍摄的。
6.基于并行计算的瓦楞纸箱缺陷检测加速系统,其特征在于,应用于权利要求1-5中任一项所述的基于并行计算的瓦楞纸箱缺陷检测加速方法,包括图像获取模块、预处理模块、特征提取模块和图像分类模块;
所述图像获取模块,用于获取瓦楞纸箱的目标物图像,并将目标物图像调整为设定大小的子图像;
所述预处理模块,用于对每个子图像进行预处理,并在输出图像的不同通道中重组每个子图像的像素;
所述特征提取模块,用于将预处理后的子图像输入到改进后的二值化神经网络BNN模型中提取特征图像;所述改进后的二值化神经网络BNN模型中,只有卷积层和密集层的权重被二值化,而批量归一化层的权重仍然是实数;在卷积层中,“use_bias”参数设置为false;最大池化层用于提取特征图像的子区域中的最大值;最大池化层的输出没有填充;批量归一化层用于减轻不稳定梯度的影响;
所述改进后的二值化神经网络BNN模型中,交叉熵损失函数用于测量预测类与相应标记类之间的差异,数学模型表示如下:
其中M表示类别数,ym是预测类别,c是标记类别,标签为m的图像表示为Xm;模型的训练过程旨在通过调整权重参数来最小化损失函数;
所述改进后的二值化神经网络BNN模型是在CPU和FPGA上进行训练,具体为:
在FPGA设计中,卷积运算是一组矩阵乘法,将矩阵乘法计算后的中间结果存储在随机存取存储器RAM中,RAM访问时间为2个时钟周期;卷积层滤波器大小为3x3;在每次矩阵乘法之前,需要重复多次将图像数据访问RAM,使用有限状态机FSM来帮助实现BNN模型中的不同卷积层;FSM是一种能够保证函数逻辑顺序的计算模型,通常应用于同步设计中;
改进后的二值化神经网络BNN模型在CPU上训练好后,然后在包含嵌入ARM处理器的FPGA上进行推理,图像预处理、卷积层一和最后一个激活层在ARM中实现;卷积层一的输出使用Xillibus IP内核通过AXI总线发送到FPGA,在FPGA处理之后,密集层二的输出然后被传输回ARM用于激活层;
在推理过程中,所有层权重都存储在只读存储器ROM中,这是嵌入式系统中使用的一种非易失性存储器,ROM中存储的数据在编程后无法修改,这使得存储经过训练的神经网络权重/参数变得完美;在FPGA设计中,首先需要准备指定ROM初始内容的存储器初始化文件,初始文件的扩展名为.mif;
所述图像分类模块,用于对提取的特征图像进行分类,具体为:将特征图像展平为设定大小的特征向量,然后,部署两个密集层以将特征向量致密为多维;最后,应用soft-max层来生成输出分类结果,每一维特征向量对应一个分类结果。
7.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序指令,所述计算机程序指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1-5中任意一项所述的基于并行计算的瓦楞纸箱缺陷检测加速方法。
8.一种计算机可读存储介质,存储有程序,其特征在于,所述程序被处理器执行时,实现权利要求1-5任一项所述的基于并行计算的瓦楞纸箱缺陷检测加速方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211650792.8A CN115810005B (zh) | 2022-12-21 | 2022-12-21 | 基于并行计算的瓦楞纸箱缺陷检测加速方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211650792.8A CN115810005B (zh) | 2022-12-21 | 2022-12-21 | 基于并行计算的瓦楞纸箱缺陷检测加速方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115810005A CN115810005A (zh) | 2023-03-17 |
CN115810005B true CN115810005B (zh) | 2024-04-02 |
Family
ID=85486418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211650792.8A Active CN115810005B (zh) | 2022-12-21 | 2022-12-21 | 基于并行计算的瓦楞纸箱缺陷检测加速方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115810005B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116168024B (zh) * | 2023-04-23 | 2023-07-14 | 苏州大凯纸业有限公司 | 基于计算机视觉的瓦楞纸生产质量实时检测方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108154504A (zh) * | 2017-12-25 | 2018-06-12 | 浙江工业大学 | 一种基于卷积神经网络的钢板表面缺陷的检测方法 |
CN110490849A (zh) * | 2019-08-06 | 2019-11-22 | 桂林电子科技大学 | 基于深度卷积神经网络的钢板表面缺陷分类方法及装置 |
CN113935988A (zh) * | 2021-11-18 | 2022-01-14 | 湖北中烟工业有限责任公司 | 基于机器视觉的箱体表面缺陷检测识别方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110930347B (zh) * | 2018-09-04 | 2022-12-27 | 京东方科技集团股份有限公司 | 卷积神经网络的训练方法、焊点缺陷的检测方法及装置 |
-
2022
- 2022-12-21 CN CN202211650792.8A patent/CN115810005B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108154504A (zh) * | 2017-12-25 | 2018-06-12 | 浙江工业大学 | 一种基于卷积神经网络的钢板表面缺陷的检测方法 |
CN110490849A (zh) * | 2019-08-06 | 2019-11-22 | 桂林电子科技大学 | 基于深度卷积神经网络的钢板表面缺陷分类方法及装置 |
CN113935988A (zh) * | 2021-11-18 | 2022-01-14 | 湖北中烟工业有限责任公司 | 基于机器视觉的箱体表面缺陷检测识别方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115810005A (zh) | 2023-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113887459B (zh) | 一种基于改进Unet++的露天矿区采场变化区域检测方法 | |
CN107851327A (zh) | 粗细搜索方法及图像处理装置 | |
CN110490849A (zh) | 基于深度卷积神经网络的钢板表面缺陷分类方法及装置 | |
CN112102281B (zh) | 基于改进Faster Rcnn的货车制动缸故障检测方法 | |
CN115810005B (zh) | 基于并行计算的瓦楞纸箱缺陷检测加速方法、系统、设备及存储介质 | |
CN111340796A (zh) | 一种缺陷检测方法、装置、电子设备及存储介质 | |
CN109816634B (zh) | 检测方法、模型训练方法、装置及设备 | |
CN115937182A (zh) | 一种多视角机械缺陷视觉检测方法 | |
CN111401421A (zh) | 基于深度学习的图像类别判定方法、电子设备以及介质 | |
Makkar et al. | Analysis and detection of fruit defect using neural network | |
CN114764770A (zh) | 晶圆检测方法、装置、设备及存储介质 | |
CN116309612A (zh) | 基于频率解耦监督的半导体硅晶圆检测方法、装置及介质 | |
CN115049831A (zh) | 一种瓶颈缩边模型、神经元网络及其构建方法 | |
WO2023234930A1 (en) | Self-supervised anomaly detection framework for visual quality inspection in manufactruing | |
CN114913345A (zh) | 基于fpga的sift算法的简化图像特征提取方法 | |
CN110751189B (zh) | 一种基于感知对比度和特征选择的椭圆检测方法 | |
CN111009004B (zh) | 一种加速图像匹配的硬件优化方法 | |
CN115861736B (zh) | 基于知识蒸馏的高速瓦楞纸箱印刷缺陷检测方法、系统及存储介质 | |
CN106557772A (zh) | 用于提取局部特征子的方法、装置及图像处理方法 | |
Zheng et al. | Recognition of expiry data on food packages based on improved DBNet | |
CN115861736A (zh) | 基于知识蒸馏的高速瓦楞纸箱印刷缺陷检测方法、系统及存储介质 | |
Askari et al. | Parallel gpu implementation of hough transform for circles | |
Cheng et al. | Capacitance pin defect detection based on deep learning | |
Bian et al. | Swin transformer UNet for very high resolution image dehazing | |
Munisankar et al. | Defect detection in printed board circuit using image processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |