《面向煤矿井下边缘视觉感知的低代码开发平台关键技术及应用指南》_第1页
《面向煤矿井下边缘视觉感知的低代码开发平台关键技术及应用指南》_第2页
《面向煤矿井下边缘视觉感知的低代码开发平台关键技术及应用指南》_第3页
《面向煤矿井下边缘视觉感知的低代码开发平台关键技术及应用指南》_第4页
《面向煤矿井下边缘视觉感知的低代码开发平台关键技术及应用指南》_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

面向煤矿井下边缘视觉感知的低代码开发平台关键技术及应用指南

1范围

本文件提供了面向煤矿井下边缘视觉感知的低代码开发平台关键技术及应用的术语和定义、基于

约束损失的多目标神经架构搜索方法、基于感知哈希的选择性推理方法、煤矿井下边缘视觉感知的低代

码开发平台构建等关键技术的指南。

本文件适用于煤矿井下边缘视觉感知的低代码开发平台的研究、设计、技术路线,可作为煤矿井下

边缘视觉感知的低代码开发平台设计与研究的技术依据。

2规范性引用文件

本文件没有规范性引用文件。

3术语和定义

下列术语和定义适用于本文件。

3.1边缘计算(EdgeComputing)

边缘计算是为应用开发者和服务提供商在网络的边缘侧提供云服务和IT环境服务,目标是在靠近

数据输入或用户的地方提供计算、存储和网络带宽。

3.2神经网络(NeuralNetworks)

神经网络是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。

3.3卷积神经网络(ConvolutionalNeuralNetwork)

卷积神经网络是一种专门用来处理具有类似网格结构的数据的神经网络。

3.4加速稳健特征提取(SpeededUpRobustFeatures)

加速稳健特征提取是一种稳健的局部特征点检测和描述算法。

3.5奇异值分解(SingularValueDecomposition)

奇异值分解是线性代数和矩阵论中一种重要的矩阵分解法,适用于信号处理和统计学等领域。

3.6感知哈希算法(PerceptualHashAlgorithm)

3

感知哈希算法是一类哈希算法的总称,其作用在于生成每张图像的“指纹”字符串,比较不同图像

的指纹信息来判断图像的相似性。

4总体设计

4.1基本原则

(1)对标国家重大需求。以国家需求为研究命题导向,以研究成果转化落地为研究目标。

(2)紧跟学科和工程前沿。以前沿科学技术驱动智慧矿山的发展。

4.2总体思路介绍

本文件旨在构建面向煤矿井下边缘视觉感知的低代码开发平台,主要对矿井边缘视觉感知计算均

衡方法进行研究,主要面临的问题有:第一,煤矿井下边缘计算设备的网络与计算资源有限,导致井下

边缘视觉感知模型准确率与设备硬件约束难以均衡;第二,煤矿井下高温、高湿与本质安全要求高等环

境限制,导致边缘计算设备温度过高而运行不稳定。针对上述问题,提出基于约束损失的多目标性神经

架构搜索方法与基于感知哈希的选择性推理方法。具体思路如下:

(1)基于约束损失的多目标神经架构搜索研究

本文件针对井下视觉感知模型准确率与设备硬件约束不均衡问题,开展井下神经架构搜索方法研

究,提出了基于约束损失的多目标性神经架构搜索方法。具体研究内容如下:首先,为了减小多模型遗

忘造成的影响、降低超网的参数量,构建基于混合深度卷积的超网与基于约束损失的超网训练方法;其

次,为了减少在不同硬件约束下的搜索时间,将模型架构搜索与超网训练解耦,利用架构生成器直接生

成符合硬件约束的子网络,有效实现井下视觉感知模型的准确率与边缘计算设备硬件约束的均衡。

(2)基于感知哈希的选择性推理方法研究

针对井下边缘计算设备运行视觉感知模型容易温度过高而运行不稳定的问题,开展模型推理流程

优化研究,提出基于感知哈希的选择性推理方法。具体研究内容如下:首先,为了提高感知哈希的识别

准确率,设计基于加速稳健特征提取(SpeededUpRobustFeatures,SURF)与奇异值分解(SingularValue

Decomposition,SVD)的感知哈希方法;其次,为了降低边缘计算设备的无效计算资源消耗,依据输入

图像的感知哈希值,实现模型的选择性推理,有效降低边缘计算设备的计算资源消耗,防止设备温度过

高。

(3)井下低代码边缘视觉感知开发平台的实现

本文件针对煤矿从业人员难以独立开发边缘视觉感知模型的问题,结合本文件所提方法,通过对平

台的需求分析,设计并开发了数据标注、模型构建与模型训练等模块,实现了煤矿井下低代码边缘视觉

感知模型开发平台。该平台已经在河北开滦(集团)唐山煤矿上实际应用。

4.3基于约束损失的多目标神经架构搜索方法

4

面向井下边缘计算设备展开多目标神经架构搜索研究,针对井下边缘视觉感知模型的准确率与硬

件约束不均衡问题,以单路径神经架构搜索方法为基础,提出基于约束损失的多目标神经架构搜索方法,

实现边缘计算设备运行边缘视觉感知模型的硬件资源约束与准确率之间的均衡。

4.3.1基于约束损失的多目标神经架构搜索方法概述

本文件提出了基于约束损失的多目标神经架构搜索方法,提高不同硬件约束下的搜索效率,解决多

模型遗忘问题,实现边缘计算设备运行视觉感知模型的硬件资源约束与准确率之间的均衡。图1展示了

本方法的工作流程,其中主要分为超网和架构生成器两个模块。

One-hot编码

编码

随机架构随机先验

超网硬件

约束

架构生成器

架构采样

参数传递

子架构架构参数

神经网络训练

图1方法流程图

(1)超网的构建与训练模块

针对超网参数数量庞大和结构复杂的问题,基于混合深度卷积构建了超网,联合使用不同内核大小

的卷积替代传统的深度卷积,减少了超网的参数数量;针对单路径方法训练超网的多模型遗忘问题,将

超网训练考虑成约束优化问题,将历史架构作为约束优化交叉熵损失函数,使用子集选择算法,缓解了

超网训练中多模型遗忘带来的准确率降低问题。在超网训练之后,根据架构生成器生成的架构参数进行

子架构的采样,训练子架构后即可实现在设备上的部署。

(2)基于架构生成器的搜索方法

针对单路径神经架构搜索方法在不同硬件约束下的搜索效率低下问题,使用简单的卷积神经网络

构建了架构生成器,随机采样一个子架构进行One-hot编码作为随机先验,将随机先验与硬件约束一同

作为架构生成器的输入,对于不同硬件约束直接生成目标架构,提高了架构搜索的计算效率与实用性。

4.3.2超网构建策略

5

本文件构建的超网以MobiletV2的Bottleneck结构为参考构建而成,将Bottleneck结构的深度卷积

与逐点卷积作为搜索空间的基本结构,通过混合不同卷积核大小的深度卷积来构建统一块,然后将统一

块设定为可重复单元结构,堆叠多层的统一块,以此为基础构建统一超网。至此,网络搜索空间的设计

就转换为了统一块结构的设计和整体网络结构的设计。

图2所示为Bottleneck的概念图。MobileNetV2中的LinearBottleneck在最后一层采用线性激活函

数来解决ReLU激活函数对低维特征信息造成较大损失、对高维特征信息影响较小的问题。这是因为线

性激活函数可以保留更多的信息,从而有助于提高模型的表现能力。Bottleneck的第一层采用1×1卷

积对数据进行升维,升维的倍数被称为膨胀系数。在膨胀层之后,采用深度卷积进行特征提取,然后再

进行1×1逐点卷积降维。最后,Bottleneck将输入与输出进行了连接。

1×1卷积,ReLU6

K×K深度卷积,ReLU6

1×1卷积

+

图2Bottleneck概念图

深度卷积和逐点卷积是Bottleneck的主要组成部分。普通卷积中的卷积核对所有的输入通道都进行

卷积,然后不同通道的结果再相加,即每一个卷积核都可以看作是一个高度和宽度相同,通道数等于输

入通道数的卷积核。与普通卷积相比,在深度卷积中,输入的每一个通道都有一个独立的卷积核,通道

数等于深度卷积的卷积核个数。深度卷积的卷积核大小通常比普通卷积小得多,这也是它可以减小计算

量和参数数量的原因。普通卷积是对所有通道进行卷积,因此需要同时考虑空间信息和通道信息。而在

深度卷积中,卷积核对输入的每一个通道进行单独的卷积操作,从而得到对应通道的卷积结果,因此只

关注通道信息,而空间信息则在通道内部被保留。

逐点卷积可以看作是1×1的卷积,它的作用是在不改变特征图尺寸的情况下改变特征图的通道数。

这个操作可以用来降低模型的复杂度和计算量,同时还可以让模型更好地保留输入特征图的空间信息,

使得模型更加有效地利用了输入的特征。

大部分单路径神经架构搜索方法都是使用Bottleneck进行重复堆叠完成超网的设计。因为一个

6

Bottleneck只能代表一个内核大小和一个扩展速率的一个配置,所以单路径神经架构搜索方法需要在每

个层中构建各种配置的块,这导致了超网的参数数量和复杂性的指数级增加。为此,本文件在Bottleneck

的基础上进行改进,用于降低超网的参数数量,减少GPU内存消耗。

3×3大小的内核是最常被各种模型的卷积所使用的,但是研究表明,更大的内核大小可以提高模

型的准确性。然而,当内核大小大于9×9时,模型的精度又会迅速下降。在内核大小等于输入分辨率

的极端情况下,卷积神经网络就成为了一个简单的全连接网络。因此,为了获得更好的模型精度和效率,

需要大内核来捕获高分辨率模式,也需要小内核来捕获低分辨率模式。

因此,本文件在单个卷积运算中混合不同的内核大小。主要方法如图3所示,本文件对Bottleneck

模块的深度卷积进行改进,将第一个逐点卷积的输出通道划分为푒组,每组通道都有3×3,5×5,7×7

三种深度卷积与跳过连接可以选择。不同内核大小的深度卷积的组合可以捕获不同分辨率的信息。跳过

连接表示该子块的结构为空,这部分的张量跳过卷积运算,直接与下一个逐点卷积连接。使用跳过连接

则可以实现Bottleneck不同的膨胀率,即膨胀率的实际值为푒减去跳过连接的使用数量。

K×K3×35×57×7

跳过

深度深度深度深度

连接

卷积卷积卷积卷积

图3子块示意图

逐点卷积逐点卷积

通道划分

k×k子块子块子块

通道

通道

通道连接

逐点卷积逐点卷积

BN

图4统一块示意图

图4所示为由子块构建的统一块示意图,统一块由Bottleneck模块修改而来。首先,由逐点卷积对

输入张量以膨胀率푒进行升维,表示为公式푐2=푒×푐1。然后将第一逐点卷积的输出张量等分为푒部分,

每部分分别以푌1,1,푌1,2,…,푌1,푒命名。不同子块的输出通道在连接之后通过第二逐点卷积进行降维。最

后使用BN(BatchNormalization)层进行归一化。

表1所示为超网的宏观架构。超网的宏观架构由统一块重复堆叠构成。统一块设定为2、3、4、5、

7

6共5中不同的膨胀系数。不同膨胀系数通过跳过连接的使用构成,越多的跳过连接形成了越低的膨胀

系数。表中Conv3×3表示内核大小为3×3的普通卷积,MBConv3×3表示内核大小为3×3的深度卷积。

表1超网的宏观架构

膨胀系数

输入大小卷积输出通道数重复次数

(低,高,步长)

224×224×3Conv3×3321-

112×112×32MBConv3×31611

112×112×16统一块322(2,6,1)

56×56×32统一块404(2,6,1)

28×28×40统一块804(2,6,1)

14×14×80统一块964(2,6,1)

14×14×96统一块1924(2,6,1)

7×7×192统一块3201(2,6,1)

7×7×320Conv1×112801-

7×7×1280平均池化-1-

1280全连接10001-

4.3.3阴影批归一化与强制采样策略

BN的主要作用是通过对输入数据进行归一化,加速模型收敛,防止模型过拟合,控制梯度爆炸防

止梯度消失,提高模型泛化能力,并且在训练过程中对于各种类型的深度学习任务都具有很好的效果。

然而,由图6所示,一个统一块通过跳过连接的使用可以模拟不同的膨胀系数,导致BN层的规模在训

练期间变化剧烈。BN层运行统计的不稳定将会严重影响超网训练效果。为了解决这个问题,本文件使

用阴影批归一化(ShadowBatchNormalization,SBN)来稳定BN。在SBN的作用下,将被错误地缩放

的具有不同振幅的向量缩放到相同的水平,匹配来自不同选择路径的更灵活组合的变化特征统计信息,

能够稳定超网的训练。为了对应设置的2、3、4、5、6共5中不同的膨胀系数,在本文件中共设置了5

个BN,用于捕获不同膨胀系数的BN统计数据。

由于统一块的每个子块都可以任意选择不同的卷积或跳过连接,这导致了超网体系架构的冗余。例

如图5所示,在六个子块中,四个子块选择3×3内核大小,两个子块选择跳过连接。将六个子块分别

命名为푏1、푏2、푏3、푏4、푏5、푏6。在左图中푏2与푏4选择跳过连接,在右图中푏3与푏6选择跳过连接,其

余子块选择3×3内核大小的深度卷积。这在超网中被认定为两个不同的架构,然而,这两种情况实际

上是同样的子网络,这就导致了架构冗余问题,增加了统一超级网络的复杂性和难度。

8

通道划分通道划分

跳过跳过跳过跳过

3×33×33×33×33×33×33×33×3

连接连接连接连接

通道连接通道连接

图5架构冗余

为了解决这个问题,本文件针对选择跳过连接的子块做出调整,限制跳跃连接只能在索引较高的子

块中使用。例如,在选择膨胀系数为4的统一块时,仅采样如图6所示的子网络,即只有最后两个子块

能够使用条约连接。本文件将这种策略称为强制采样。强制采样有效遏制了超网的体系结构冗余,大大

降低了超网的复杂度,增加了超网的训练效率。

通道划分

跳过跳过

3×33×33×3

3×3连接连接

通道连接

图6强制采样

4.3.4基于梯度下降的网络搜索策略

基于梯度下降算法的网络架构搜索策略最早在DARTS中被提出。其在连续的网络架构搜索空间中,

通过梯度下降算法对搜索空间的架构参数进行优化,从而实现网络架构搜索策略上的优化。超网A的每

一层都有不同的块可供选择,基于梯度下降算法的网络架构搜索策略首先使用架构参数α将超网A连续

i

化。超网A的第l+1层的输入张量xl+1为第l层第i块的输出张量bl(xl)通过Softmax函数计算的加权和。

完成架构搜索空间的连续化之后,网络架构搜索的过程就转换为了优化架构参数훼。超网퐴的权重

参数푤在训练集上通过训练得到。为了找到在满足特定硬件约束的同时实现最佳性能的架构,梯度下降

算法需要找到令验证损失ℒ푣푎푙(푎,푤)最小化的最佳子网络푎。梯度下降算法的搜索过程需要架构参数与

权重参数的联合优化,它是针对特定的硬件约束的搜索过程。因此,对于不同的硬件约束,都需要重新

从头完整执行一次搜索过程,这将消耗大量的时间。

相比之下,单路径方法将超网络训练与架构搜索解耦。单路径神经架构搜索不引入架构参数,在超

网训练时仅进行权重参数的优化。超网训练时,每次仅优化每层中的一个块组成的子网络,不同子网络

之间拥有相同路径的部分共享相同的权重。

所有子网络都可以继承超网的权重,根据从超网继承的权重评估每个子网络的优劣。单路径神经架

9

构搜索对于不同的硬件约束不需要重新训练超网,但也需要多次在超网上执行搜索,这也要消耗不少的

时间。为了完善单路径神经架构搜索的上述问题,本文件构建简单的卷积神经网络用于在超网上搜索出

最佳价格a∗。本文件将该卷积神经网络成为架构生成器,在训练好后,针对不同的硬件约束,架构生成

器可以直接生成最佳架构푎∗,而不需要重新进行架构生成器的训练。

4.3.5超网训练策略

单路径神经架构搜索方法通常在超网的训练中每次仅激活一条路径,即在每一个步骤中只训练一

个架构。至于选择那一条路径,则由基于先验的均匀抽样决定,所以在搜索阶段并没有引入了新的超参

数。然而,当为单个任务训练具有部分共享权重的多个架构时,每个模型的训练可能会降低其他模型的

性能,进而导致整个超网在训练之后的性能降低,这种现象被称为多模型遗忘问题。为了解决多模型遗

忘问题,本文件将超网训练考虑成约束优化问题,强制在超网训练的过程中考虑先前步骤的架构。

表2子集选择算法

子集选择算法

Initialization:约束架构子集푀,最近体系架构子集풞,选定的要被替换的架构푎푚,迭代

次数푛.

Output:更新后的子集푀;

While푖<푛do

1.计算子集푀中架构푎푚的评分푁(푎푚,푀);

2.从C中随机选取架构푎푟;

3.计算架构푎푟的评分푁(푎푟,푀);

4.if푁(푎푟,푀)>푁(푎푚,푀)then

5.使用架构푎푟替换架构푎푚;

6.endif

end

本文件利用历史架构的性能约束当前架构的学习,可以有效解决单路径神经架构搜索方法训练超

网的多模型遗忘问题。然而,随着超网训练的进行,需要计算的约束数量呈线性增加,这使得在优化中

考虑所有历史架构的性能变得困难。为此,采样푁个历史架构作为约束子集푀,保证约束子集的多样性

以最大化代表所有的先前架构。创建最近体系架构子集풞保存最新训练的c个架构,用于子集M的更新。

表2所示为子集M的选择算法

在约束子集数量达到设定的N之前,当前训练的体系架构都添加到约束子集中。在约束子集数量达

到N之后,计算约束子集M中所有架构的评分,将选择与当前架构最相似的架构来替换使子集的得分最

大化的架构。

10

本文件建立了多样化的约束子集M,M能够代表所有先前的架构。为了在超网训练时,使用约束子

集M来优化当前架构,将损失函数进行软正则化,该损失函数能够保证超网训练时的共享参数保持在约

束子集푀约束的低误差范围内,保护了这些约束架构的性能。下表展示了使用历史架构约束下的损失函

数的超网训练过程。

表3超网训练算法

超网训练算法

Initialization:初始化超网,训练超参数,约束子集푀=∅,子集푀最大容量푁;

Output:训练后的最优超网

Whileepoch=푖<num_epochdo

1.if|푀|<푁then

2.通过对超网采样得到一个架构푎푡;

3.计算푎푡的损失;

4.更新푎푡的权重参数;

5.将架构푎푡添加到푀中;

6.else

7.通过对超网采样得到一个架构푎푡;

8.从푀中找到与푎푡最相似的架构푎푚;

9.基于算法1更新푀;

10.计算푎푡的损失;

11.更新푎푡的权重;

12.endif

End

4.3.6架构生成器的训练策略

架构生成器本质上为一个简单的卷积神经网络,它被训练用于在超网上搜索出符合硬件约束的拥

有最佳准确率的神经网络架构。如图7所示,架构生成器主要由3×3内核大小的卷积和ReLU激活函

数组成。由于根据简单的硬件约束生成复杂的架构参数过于困难,架构生成器容易产生过拟合问题。为

此,本文件从搜索空间中随机采样一个神经架构作为先验数据,与硬件约束一同作为架构生成器的输入。

使用随机先验,体系结构生成器将从最佳体系结构参数之前的随机先验中学习残差,使训练体系结构生

成器更加稳定和准确。

11

硬件约束随机先验

3×3卷积,ReLU3×3卷积,ReLU

3×3卷积,ReLU3×3卷积,ReLU

+3×3卷积,ReLU

3×3卷积,ReLU

3×3卷积

5层+架构参数

ReLU

3×3卷积,ReLU

图7架构生成器架构图

架构生成器퐺基于超网进行训练,利用超网的权重参数푤∗,生成硬件约束퐶下的最佳体系架构参数

훼,令体系架构参数훼的损失值Cost(훼)<퐶。

架构生成器的训练算法如下表所示。

表4架构生成器训练算法

架构生成器训练算法

Initialization:训练后的超网,预先定义的硬件约束范围[퐶퐿,퐶퐻],验证数据集;随即先验

迭代次数푛;

Output:训练后的架构生成器

While푖<푛do

1.从验证集获取输入数据푋与理论输出푦;

2.在硬件约束范围[퐶퐿,퐶퐻]内随机获取硬件约束C;

3.架构生成器根据随机先验与硬件约束C生成架构参数훼;

4.根据架构参数函数计算훼的损失函数值Cost(α);

5.使用架构参数훼与输入数据푋在超网中计算出实际输出푦′;

6.计算总损失函数;

7.计算梯度,更新架构生成器

End

4.4基于感知哈希的选择性推理方法

12

针对井下边缘计算设备容易因为温度过高而运行不稳定的问题,提出基于感知哈希的选择性推理

方法,实现井下边缘计算设备运行视觉感知模型的温度与计算效率的均衡。

4.4.1加速稳健特征提取算法

SIFT(Scale-InvariantFeatureTransform)是一种在计算机视觉领域中常用的特征提取算法,该算法

的主要优点是具有尺度不变性、旋转不变性和光照不变性,能够对具有不同尺度和角度的图像进行特征

提取,并且对于光照变化也有一定的鲁棒性。但同时,SIFT算法也有着计算复杂度较高,特征维度较

大等问题,很难在实时系统中应用。加速稳健特征提取(SpeededUpRobustFeatures,SURF)算法是

SIFT算法的加速版本。SURF算法主要通过使用图像积分和盒子滤波器来加速SIFT算法中的高斯差分

金字塔的构建和高斯核卷积的计算,从而提高了算法的效率。SURF算法在不显著减少特征鲁棒性的情

况下,将SIFT算法的速度提高了接近3倍,成为实时系统首选的图像局部特征提取算法。

SURF算子主要基于Hessian矩阵来获得局部极值点。SURF算子和SIFT算子一样,通过构建图像

金字塔计算不同尺度下的图像极值点来保证尺度不变性。不同的是,SURF不需要对图像进行抽样或插

值等缩放操作来构建尺度空间,而是通过改变盒子滤波器的大小来构建尺度空间,这增强了其并行计算

的能力。SURF的特征点确定步骤与SIFT类似,通过公式确定极值点,然后将其与其相邻尺度图像的

9×2+8个点进行比较,如果为极值,则将该点加入特征点集。图8所示为特征点比较的示意图。

为了提高特征点定位的精度,SURF算法采用了基于像素灰度值的双二次插值方法,对已经检测到

的特征点进行亚像素级别的精确定位。具体地,对于每个特征点的位置(x,y)和尺度σ,在其周围的邻域

内进行插值计算,得到亚像素级别的位置偏移量(dx,dy)和尺度偏移量(dσ)。

维度

图8SURF极值比较示意图

SURF算法的特征点描述子为64维。不同于SIFT算法使用直方图统计,SURF算法采用Haar小

波进行运算。描述子的确定分为两个部分:主方向的确定和64维描述子的计算。主方向的确定采用滑

13

动窗口法,其中尺度휎表示特征点的大小,以6휎为半径,4휎为Haar小波窗口长度,滑动步长为휋/36,

计算푥和푦方向的Haar小波响应向量,然后将两个方向的向量合成,拥有最长响应向量的方向即为主方

向。

SURF描述子的计算过程如下:选取特征点周围边长为20σ的空间,并将其分为4×4=16个子空间。

在每个子空间中随机抽取25个样本点。选取窗口长度为2σ的Haar小波,在每个子空间中计算样本点

的x和y方向的Haar小波响应dx和dy。

对于16个子空间便可得到16×4=64维描述子,如图9所示。

dx

dx

|dx|

dydy

|dy|

图9SURF描述子示意图

4.4.2基于SURF-SVD的感知哈希算法

图像预处理基于SURF的特征点提取生成二值图像

汉明距离计算感知哈希值SVD变换块处理

图10算法基本流程

图10表示基于SURF-SVD的服装图像感知哈希算法的流程图,具体步骤如下:

(1)图像预处理。使用双线性插值将输入图像I的大小调整为푞×푞的标准大小,以确保生成的哈

希值具有固定长度。如果输入图像是彩色图像,则调整大小的图像被转换为灰度图像。

(2)特征点提取。利用3.2.1节内容,使用SURF算法提取预处理后图像的关键点。

(3)生成二值图像。由输入图像I构建大小为q×q的二值图像퐽。设퐽(푖,푗)表示为图像푗空间位置(푖,푗)

处的像素值。若图像I的空间位置(푖,푗)为SURF提取的关键点,则将퐽(푖,푗)设置为1,否则设置为0。

(4)块处理。哈希值的长度取决于图像中不重叠的块的数量。在小块上执行SVD比在完整图像上

执行要容易得多。然而,选择一个小块会增加哈希大小,反之亦然。因此,二值图像퐽被划分为大小为

46×46的非重叠块,由于在边界上获得任何关键点的可能性较小,因此忽略了边缘像素。

(5)SVD变换。从每个块的最大奇异值之间的关系生成散列值,其中퐵(푡)是第푡个块的最大奇异

值,avg是来自图像中所有块的所有最大奇异值的平均值。对每个块的哈希值进行组织和排列,生成最

14

终的哈希序列。

(6)计算两幅图像哈希码之间的汉明距离,由汉明距离得到两幅图片的相似度两个图像散列之间

的归一化HD与图像的相似性成正比。预定义的阈值θ用于对相似和不同的图像进行分类。如果HD小于

θ,则这两个图像被认为是相似的图像,否则它们被认为是不同的。

4.4.3选择性推理方法

视觉感知模型在煤矿井下的应用非常广泛,可以用于目标检测、图像分类等多个任务,其中常见的

任务包括人员检测、皮带异物分类、车辆检测、火焰检测等。经过实地调研,本文件发现煤矿井下的环

境中,对目标的分类和检测有着实时性的要求,但是对检测的频率要求不高。图11所示为在井下风门

处的人员与车辆通过率示意图。

人员

车辆

空闲

30%

48.6%

21.4%

图11井下风门处人员与车辆通过率

如图所示,在井下风门处的人与车辆通过时间占仅为51%,大量的时间中没有任务目标的出现。然

而,在大量无任务目标出现的时间中,视觉感知模型依旧需要进行分类或检测,这将消耗大量无用的计

算资源。为了防止无用的资源消耗,实现井下边缘计算设备资源与性能的均衡,本文件根据前文提出的

基于SURF-SVD的感知哈希算法,提出基于感知哈希的选择性推理方法。如表5所示,基于感知哈希

的选择性推理方法的流程首先需要提前设定好基准图像与阈值。其次,使用前文提出的基于SURF-SVD

的感知哈希方法计算基准图像与输入图像的感知哈希值,根据哈希值计算它们的汉明距离。最后,将汉

明距离与阈值휃进行对比。若是汉明距离小于阈值,则判断输入图像出现了需要分类或是检测的目标。

表5基于感知哈希的选择性推理算法

基于感知哈希的选择性推理方法

Initialization:训练后的视觉感知模型A;阈值휃;基准图像的感知哈希值α;输入图像a

Output:模型推理结果

While输入图像a不为空do

1.对输入图像a进行预处理;

15

2.计算输入图像a的感知哈希值ß;

3.计算α与ß的汉明距离HD;

4.ifHD<阈值휃then

5.模型A对输入图像a进行推理,输出推理结果;

6.endif

end

4.5煤矿井下边缘视觉感知低代码开发平台

本文件提出的矿井边缘视觉感知计算均衡方法不仅可以在模型架构设计阶段搜索出适配任务的模

型,还能够在模型运行阶段优化模型运行流程,从而实现视觉感知模型在边缘计算设备上的计算均衡。

本文件设计并实现了无需代码便能构建并训练井下边缘视觉感知模型的煤矿井下低代码边缘视觉感知

模型开发平台。该平台实现了数据集标注、模型的构建和训练等功能,为煤矿专业人员提供一站式服务。

下文将给出煤矿井下低代码边缘视觉感知模型开发平台的实现过程。

4.5.1平台需求分析

煤矿井下有着环境复杂的特点,有着多样的、独特的任务,例如井下皮带异物检测任务、井下钻井

计数任务等。针对煤矿井下环境复杂的特点和深度学习应用场景的多样性,需要一款简单易用、可自定

义的边缘视觉感知模型开发平台,以帮助非计算机背景的采矿工程师快速构建所需的模型。煤矿井下低

代码边缘视觉感知模型开发平台需要根据用户提交的数据集以及硬件约束,为具体的井下边缘视觉感

知任务提供适配的模型开发支持。

基于神经架构搜索和感知哈希的井下视觉感知的计算均衡方法的研究成果,使用大数据云服务平

台,搭建了煤矿井下边缘智能低代码开发平台。

平台的可靠性、可维护性、易用性、安全性和可扩展性等方面的需求,是确保平台稳定、可靠、易

用、安全和具有扩展性的重要保障。在开发煤矿井下低代码边缘视觉感知模型开发平台时,这些方面的

需求同样也非常重要。例如,可靠性要求平台能够在井下恶劣的环境下保持稳定运行,可维护性要求平

台能够方便地进行维护和更新,易用性要求平台界面简洁明了、操作方便快捷,安全性要求平台能够保

护用户数据和隐私安全,可扩展性要求平台能够适应未来业务需求的扩展。因此,在设计煤矿井下低代

码边缘视觉感知模型开发平台时,必须考虑这些方面的需求,使得平台在长期的使用和发展过程中,能

够持续满足用户的需求和期望。

(1)平台的安全性需求:煤矿井下低代码边缘视觉感知模型开发平台需要具备一定的安全性和隐

私保护能力,以保障煤矿井下数据和信息的安全性和隐私性,需要确保数据在平台运行过程中不被恶意

截取、篡改和窃取。为了保证平台的安全可靠运行,本文件开发的平台采用云服务托管的方式,将数据

16

存储在云服务器上,客户端无法对数据进行直接操作,在物理隔离层面阻断恶意行为。同时实现了身份

验证和认证功能,验证和识别用户的身份,以确保只有合法用户才能访问储存在平台服务器中的数据。

(2)平台的可靠性需求:煤矿井下低代码边缘视觉感知模型开发平台通常会在架构搜索和模型训

练时使用大量的计算资源,并处理大量的终端设备接入或卸载的频繁请求,导致平台软硬件资源需求增

大。因此云服务平台需要保持稳定的运行,以处理复杂的场景并确保平台安全可靠。在平台处理错误信

息时,该平台能够及时保存平台状态、错误类型等数据,并在平台故障发生时快速响应,以便进行平台

回滚或恢复运行状态。

(3)平台的易用性需求:煤矿井下低代码边缘视觉感知模型开发平台必须面向非计算机背景的采

矿工程师,因此在平台设计阶段就需要考虑用户体验和易用性,确保平台界面和操作简单易懂,使用户

能够快速上手使用平台。此外,平台应该提供及时有效的开发手册,以指导和引领工作人员正确操作平

台,提高平台的可用性和用户满意度。

(4)平台的可扩展性和可维护性需求:尽管煤矿井下低代码边缘视觉感知模型开发平台的展示界

面看起来简单易用,但实际上它的后台设计和开发非常复杂。为确保平台的可维护性和降低日常维护成

本,从而提高工作效率,需要采取相应的措施。

4.5.2平台设计

(1)平台软硬件开发环境

(a)(b)(c)

RaspberryPiNVIDIAJetsonAlteraCyclone

(d)(e)(F)

CoralDevBoardBeagleBone-Blackarduino-nano

图12现有边缘计算设备展示

在硬件方面,本平台需要一台强大的服务器进行视觉感知模型的搜索和训练,因此选择搭载了

2080ti英伟达显卡的服务器,该服务器具备高效稳定的计算能力和存储空间,能够满足实际需求。边缘

计算设备是本平台中不可或缺的一部分。边缘计算设备通常指那些能够进行数据处理和计算任务的小

17

型设备,可以放置在接近数据来源的地方,从而减少数据传输的延迟和带宽消耗。如图12所示,常见

的边缘计算设备有多种,包括RaspberryPi、NVIDIAJetsonNano、CoralDevBoard等。其中,JetsonNano

是一款小巧便携、低功耗的嵌入式计算机,内置NVIDIAMaxwell架构的GPU,可以提供强大的图形处

理能力。此外,JetsonNano还支持多种接口,包括HDMI、USB、Ethernet等,可以方便地与外部设备

进行连接。同时,JetsonNano还提供丰富的开发资源和社区支持,可以更加高效地完成开发和部署工

作。因此,本文件在NVIDIAJetsonNano开发板的基础上,针对煤矿井下的实际环境在保持核心模块

功能的基础上对其进行底板的改进,减少大规模使用的成本支出。本文件使用如图13(a)所示为面向

煤矿井下边缘视觉感知的低代码开发平台硬件部分,图13(b)所示为改进的底板和JetsonNano核心

模块,图13(c)所示为煤矿井下本质安全外壳。

(b)设备底板

与JetsonNano核心模块

()边缘感知设备(c)本质安全外壳

a

图13平台使用硬件展示

面向煤矿井下边缘视觉感知的低代码开发平台主要在PyTorch上进行软件开发。PyTorch是一种基

于Python的开源机器学习框架,提供了灵活的张量计算和动态计算图的支持,可以方便地进行模型构

建、训练和部署。在开发过程中,使用了Flask框架进行Web的搭建。Flask框架是一种轻量级的Web

应用框架,基于Python语言,提供了简单易用的API,可以快速搭建出符合需求的Web应用。它有简

单易学、灵活性高、扩展性好等优点。在本平台中,使用Flask框架来搭建Web应用,方便用户进行数

据上传、模型部署等操作。Flask框架的核心思想是“Micro”,即微型框架。它提供了核心的基础功能,

如路由、请求和响应处理、会话管理、模板引擎等,同时也支持扩展,用户可以根据自己的需求引入各

种不同的扩展,如数据库访问、身份验证、表单处理等等。本文件使用MySQL作为存储信息的数据库。

MySQL是一种开源的关系型数据库管理系统,具有高可靠性、高性能、可扩展性强等优点。MySQL支

持多种操作系统,可以在不同的平台上运行,而且它具有灵活的扩展性和丰富的功能,可以满足各种不

18

同的需求。在本平台中,使用MySQL来存储用户上传的数据、模型信息等数据,以便后续的查询和管

理。综上所述,面向煤矿井下边缘视觉感知的低代码开发平台主要使用PyTorch进行软件开发,并使用

Flask框架进行Web的搭建。Flask框架具有简单易学、灵活性高、扩展性好等优点。同时,选择MySQL

作为存储信息的数据库,因为它具有高可靠性、高性能、可扩展性强等优点。

(2)平台架构设计

图14展示了本文件开发的煤矿井下边缘智能低代码开发平台的平台架构设计,它由三个部分组成,

分别是数据管理与标注、模型构建与模型部署模块。

数据管理与标注

数据标注

煤矿工人皮带异物据

安全帽监测钻杆计数

数据传输

模型构建

架构搜索超网训练

模型架构

模型训练公共模型硬件约束

模型部署

行人行车检测人体区域入侵检测操作员离岗检测矿车压道检测

图14平台架构图

如上图所示,煤矿井下低代码边缘视觉感知模型开发平台的各个模块的主要功能如下:

(1)数据管理与标注模块:数据管理是煤矿井下低代码边缘视觉感知模型开发平台的重要组成部

分,其主要功能是负责管理用户数据。具体来说,该模块实现了数据集的上传和保存功能,为整个平台

的工作提供了第一序列的支持。数据管理模块的高效性和可靠性也保证了平台的稳定性和可扩展性。数

据管理模块使用MySQL数据库实现,通过使用MySQL数据库存储用户上传的数据集和相关信息,实

现数据的可靠存储和管理。数据标注功能负责用户数据集的标注。数据标注模块一般包括数据集的展示、

数据标注、数据保存等功能。数据标注模块是一个非常重要的模块,对于训练和部署模型来说至关重要。

19

标注数据的质量直接影响到模型的准确率和稳定性,因此需要用户仔细标注每一个数据,保证标注结果

的质量和准确性。

(2)模型构建模块:模型构建模块负责模型的搜索和训练。通过用户标志好的数据集和输入的硬

件参数使用神经架构搜索出适合的模型。最后将训练好的模型提交给用户。该模块使用Python、PyTorch

实现。

(3)模型部署模块:模型部署模块复杂模型的部署。该模块使用提出的基于感知哈希的选择性推

理方法将模型部署于图13所示的硬件设备中,便于边缘视觉感知模型的实际应用。

4.5.3平台实现

(a)损失函数部分

(b)超网搜索

图15部分关键代码

本文件将前文所提的基于约束损失的多目标神经架构搜索方法集合到平台中,用户可以使用本平

台根据具体的任务需求生成所需的神经网络架构,从而获得更高效的模型性能。使用该平台,用户可以

通过选择不同是任务数据集和调整不同的搜索参数,生成适合自己任务的神经网络架构。图15展示了

历史架构子集约束下的损失函数计算与超网的搜索部分关键代码。

该程序致力于井下边缘智能的数据标注、模型训练及管理、软硬件一体化的实现。首先,用户进入

主页面之后需要先进行登录或者注册。点击对应的按钮、输入相应信息完成用户的登录或注册,之后即

可使用平台的全部功能。平台创建模块运行界面截图如图16所示。在创建模型界面中,输入要创建的

模型信息,然后点击创建按钮,即可进行模型的创建。平台内置前文提出的神经功能架构搜索方法,通

过在我的模型界面中选择模型类型为架构搜索并输入硬件约束以及目标数据集即可搜索出符合要求的

20

神经架构。同时,平台中还内置了一些如YOLOV5等常见的公开目标检测模型,以符合用户的不同需

求。

选择公开模型

或神经架构搜索

设置模型名称若选择神经架构搜

索则输入硬件约束

选择搜索与数据集

图16创建模型模块界面

图17所示为模型训练功能界面。模型训练模块使用特定的训练集,对特定的模型进行训练。在该

界面选择之前创建好的模型、数据集以及训练超参数即可进行训练。训练成功后可在我的模型界面进行

模型下载。训练过程界面如图18

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论