一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于机器视觉的井下钻杆计数方法与流程

2022-07-16 17:48:26 来源:中国专利 TAG:


1.本发明属于井下钻杆计数技术领域,具体涉及一种基于机器视觉的井下钻杆计数方法。


背景技术:

2.随着煤炭开采深度的增加,煤层的瓦斯含量也逐渐增加,即瓦斯爆炸和瓦斯突出的可能性也会被提高。为了降低瓦斯事故的发生,实际开采中需要提前对瓦斯进行抽采和排放。通常采用钻孔的方式对煤层下的瓦斯进行抽采和排放,这样不仅降低了开采空间中的瓦斯含量,还提高了瓦斯的利用率,并且符合国家绿色、环保、高效利用的资源开发理念。与此同时,钻孔深度是衡量这项工作好坏的重要指标,当钻孔深度过深时,导致瓦斯无法抽采;当钻孔深度过浅时,容易发生瓦斯泄露甚至造成瓦斯爆炸。而钻孔深度又与钻杆数量成正比关系,因此钻杆计数的准确程度在煤矿安全领域中起着至关重要的作用。
3.根据时间节点,井下钻杆计数方法可划分为传统方法和计算机视觉方法。传统方法主要是人工计数方法和传感设备计数方法2种,其中人工计数方法是将整个钻机工作录像,随后多人统计钻杆数量,从而根据钻杆数量间接地计算出钻孔深度,然而,这种方法在实际应用中存在肉眼疲劳、人员管理成本大等问题;传感设备计数方法是在钻机上安装接近开关等设备,当钻机装置移动到某一位置时,接近开关发射一次信号,再通过其他装置累加计数,这种方法较人工计数而言,自动化程度有所提高,不过经常因井下环境潮湿、灰尘多容易致使传感设备损坏,而且还会存在人为干扰传感设备正常工作的情况,因而导致计数结果不可信。计算机视觉方法主要是钻机标识物跟踪方法和人体行为识别方法,其中前者以改进camshift算法为代表,它依据上卸杆过程的周期时长差距特点,通过改进camshift算法跟踪钻机标识物、人为设定起始锚点和判断时间间隔来得到打钻周期直方图,从而实现计数目的。但这种方法受环境光线、背景简单的影响高,实际应用范围受限;人体行为识别方法依据图像中卸杆行为与非卸杆行为的差异特点,通过改进resnet网络来对行为进行识别,从而达到计数目的。但是这种方法只是利用图像中空间信息对行为进行识别,并且无法同时识别上杆和卸杆行为,从而该类钻杆计数方法还有待改进。总而言之,计算机视觉方法较传统方法具有节约人力成本、事后记录复检及人为影响小等优势,因而研究计算机视觉方法是钻杆计数的主流趋势。自2012年alexnet模型在imagenet图像识别任务中碾压第2名svm模型之后,深度视觉技术的浪潮被掀起,如深度目标检测、姿态估计、基于视频理解的行为识别等技术。目前,目标检测和姿态估计技术相较行为识别技术而言,在工业及日常生活领域中应用比较常见。这是由于行为识别技术难以在视频流中检测出某个行为的始末时间等原因造成的,而正是这些缺点限制了行为识别技术在钻杆计数领域中的应用。


技术实现要素:

4.本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种基于机器
视觉的井下钻杆计数方法,其能够实现准确的基于机器视觉的井下钻杆计数,节约人力成本,能够事后记录复检,人为影响小,能够推动基于机器视觉的行为识别技术在钻杆计数领域中的应用。
5.为解决上述技术问题,本发明采用的技术方案是:一种基于机器视觉的井下钻杆计数方法,其特征在于,该方法包括以下步骤:
6.步骤一、计算机读入摄像头采集的井下打钻视频流;
7.步骤二、计算机在井下打钻视频流中的每帧图像上提取作业人员的骨架;
8.步骤三、计算机识别每帧图像的作业人员的骨架姿态;
9.步骤四、计算机判断步骤三中识别到的作业人员的骨架姿态是否为作业姿态,当是作业姿态时,计算机识别连续多帧图像中的行为,进行上/卸杆行为识别,并进行钻杆计数;当不是作业姿态时,返回步骤一,继续下一帧图像的骨架姿态识别。
10.上述的一种基于机器视觉的井下钻杆计数方法,步骤二中所述计算机在井下打钻视频流中的每帧图像上提取作业人员的骨架时,基于开源多人体姿态估计框架alphapose设计井下作业人员骨架提取模型,具体过程为:
11.步骤201、采用yolov3检测器检测出作业人员在图像中的位置,即人员检测框,左上坐标为(x
min
,y
min
),右下坐标为(x
max
,y
max
);
12.步骤202、将识别的作业人员在图像中的位置从图像中裁剪并送入alphapose的sppe算法中,预测出人体骨架;所述人体骨架包括18个骨骼点,分别为鼻、左眼、右眼、左耳、右耳、左肩、右肩、左肘、右肘、左腕、右腕、左胯、右胯、左膝、右膝、左踝、右踝和颈,用字母表示为:{(x0,y0,s0),(x1,y1,s1),(x2,y2,s2),
……
(x
17
,y
17
,s
17
)},其中,(xi,yi)表示骨骼点在图像中的坐标,si表示骨骼点的得分,i的取值为0~17的自然数。
13.上述的一种基于机器视觉的井下钻杆计数方法,步骤三中所述计算机识别每帧图像的作业人员的骨架姿态时,在人体骨架中选取10个关节部位的夹角来表示姿态特征,所述10个关节部位的夹角包括:左颈角、右颈、左肩角、右肩角、左肘角、右肘角、左跨角、右跨角、左膝角和右膝角,各关节部位夹角采用矢量图计算余弦夹角,所述作业人员的骨架姿态的特征向量为a1=(
ɑ1,
ɑ2,
ɑ3,
ɑ4,
ɑ5,
ɑ6,,
ɑ7,
ɑ8,
ɑ9,
ɑ
10
),特征矩阵为a=(a1,a2,a3,
……
,an),其中,n表示训练的批量大小。
14.上述的一种基于机器视觉的井下钻杆计数方法,步骤四中所述计算机判断步骤三中识别到的作业人员的骨架姿态是否为作业姿态时,先对步骤三中的特征矩阵a进行标准化处理,再送入svm算法中识别作业姿态。
15.上述的一种基于机器视觉的井下钻杆计数方法,步骤四中所述计算机识别连续多帧图像中的行为,进行上/卸杆行为识别,并进行钻杆计数时,基于cnn和rcnn网络构建井下作业行为识别模型,所述井下作业行为识别模型包括cnn层、rcnn层、全连接层和分类层,所述cnn层采用rensnet50网络,所述cnn层负责提取行为空间特征;所述rcnn层采用2层lstm网络,所述rcnn层负责提取行为的时序特征;所述分类层采用softmax函数,所述分类层负责识别行为的类别。
16.上述的一种基于机器视觉的井下钻杆计数方法,步骤四中所述计算机识别连续多帧图像中的行为,进行上/卸杆行为识别,并进行钻杆计数时,采用井下作业行为识别模型进行,具体过程为:
17.步骤401、所述cnn层将每帧图像中的空间信息编码为1

300的特征向量;
18.步骤402、所述rcnn层将连续16帧的1

300维特征向量继续编码,并输出1

256维的特征向量;
19.步骤403、经过所述全连接层,输出1

3维向量;
20.步骤404、所述分类层使用softmax函数计算类概率,并选取类概率最大的值作为识别结果,所述识别结果包括上杆行为和卸杆行为;
21.步骤405、进行钻杆计数。
22.上述的一种基于机器视觉的井下钻杆计数方法,所述全连接层为2个。
23.本发明与现有技术相比具有以下优点:
24.1、本发明通过人体骨架姿态判断是否有作业行为发生,从而在视频流中检测出可能发生行为的位置;通过识别上/卸杆行为的数量,从而来判断打钻数目,方法步骤简单,且能够有效解决现有技术中视觉钻杆计数方法中上杆和卸杆行为难以区分的问题,实现准确的基于机器视觉的井下钻杆计数。
25.2、本发明针对现有技术中cnn-lstm模型在视频流中无法定位行为的问题,以及现有技术中视觉钻杆计数方法中上杆和卸杆行为难以区分的问题,基于svm分类器设计井下作业姿态识别模型,并基于cnn和rcnn网络设计井下作业行为识别模型,能够实现准确的基于机器视觉的井下钻杆计数,能够推动基于机器视觉的行为识别技术在钻杆计数领域中的应用。
26.3、本发明基于机器视觉进行井下钻杆计数,能够节约人力成本,且具有事后记录复检、人为影响小等优势。
27.下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
28.图1为本发明的方法流程框图;
29.图2为本发明左颈角的矢量图;
30.图3为本发明井下作业人员骨架提取模型的原理图;
31.图4为本发明井下作业姿态识别模型图;
32.图5为本发明井下作业行为识别模型的原理图;
33.图6a为本发明井下人员识别效果图;
34.图6b为本发明井下人员姿态估计效果图;
35.图7为本发明钻杆计数实际应用示例图。
具体实施方式
36.如图1所示,本发明的基于机器视觉的井下钻杆计数方法,包括以下步骤:
37.步骤一、计算机读入摄像头采集的井下打钻视频流;
38.步骤二、计算机在井下打钻视频流中的每帧图像上提取作业人员的骨架;
39.本实施例中,步骤二中所述计算机在井下打钻视频流中的每帧图像上提取作业人员的骨架时,基于开源多人体姿态估计框架alphapose设计井下作业人员骨架提取模型,具体过程为:
40.步骤201、采用yolov3检测器检测出作业人员在图像中的位置,即人员检测框,左上坐标为(x
min
,y
min
),右下坐标为(x
max
,y
max
);
41.步骤202、根据步骤201中的人员检测框将识别的作业人员在图像中的位置从图像中裁剪出来,处理成尺寸大小为320

256像素的图像,并送入alphapose的sppe算法中,预测出人体骨架;所述人体骨架包括18个骨骼点,分别为鼻、左眼、右眼、左耳、右耳、左肩、右肩、左肘、右肘、左腕、右腕、左胯、右胯、左膝、右膝、左踝、右踝和颈,用字母表示为:{(x0,y0,s0),(x1,y1,s1),(x2,y2,s2),
……
(x
17
,y
17
,s
17
)},其中,(xi,yi)表示骨骼点在图像中的坐标,si表示骨骼点的得分,i的取值为0~17的自然数。
42.本实施例中,井下作业人员骨架提取模型的原理如图3所示,图5中,输入尺寸中,n表示数据批量大小,3表示rgb三个通道,前一个416表示图像高度,后一个416表示图像宽度。
43.步骤三、计算机识别每帧图像的作业人员的骨架姿态;
44.本实施例中,步骤三中所述计算机识别每帧图像的作业人员的骨架姿态时,基于svm分类器设计井下作业姿态识别模型,其原理如图4所示;在人体骨架中选取10个关节部位的夹角来表示姿态特征,所述10个关节部位的夹角包括:左颈角(5-17-11)、右颈(6-17-12)、左肩角(17-5-7)、右肩角(17-6-8)、左肘角(5-7-9)、右肘角(6-8-10)、左跨角(17-11-13)、右跨角(17-12-14)、左膝角(11-13-15)和右膝角(12-14-16),各关节部位夹角采用矢量图计算余弦夹角得到,所述作业人员的骨架姿态的特征向量为a1=(
ɑ1,
ɑ2,
ɑ3,
ɑ4,
ɑ5,
ɑ6,,
ɑ7,
ɑ8,
ɑ9,
ɑ
10
),多个骨架姿态表示为特征矩阵为a=(a1,a2,a3,
……
,an),其中,n表示训练的批量大小。
45.例如,左颈角(5-17-11)的矢量图如图2所示。所述井下作业姿态识别模型提取出的人体骨架包含不同的姿态,其中作业姿态(上杆和卸杆姿态)是作业行为(上杆和卸杆行为)的组成部分,因此还需要设计井下作业行为识别模型。人体骨架所要表达的姿态信息可以使用不同的关节部位夹角来表示,因此本发明在人体骨架中选取10个关节部位的夹角来表示姿态特征。图4中,输入尺寸中,n表示人数,3表示关键点维数(横坐标、竖座标、置信度),18表示单人关键点个数。
46.步骤四、计算机判断步骤三中识别到的作业人员的骨架姿态是否为作业姿态,当是作业姿态时,计算机识别连续多帧图像中的行为,进行上/卸杆行为识别,并进行钻杆计数;当不是作业姿态时,返回步骤一,继续下一帧图像的骨架姿态识别。
47.本实施例中,步骤四中所述计算机判断步骤三中识别到的作业人员的骨架姿态是否为作业姿态时,先对步骤三中的特征矩阵a进行标准化处理,再送入svm算法(支持向量机算法)中识别作业姿态。
48.具体实施时,对特征矩阵a进行标准化处理,采用的数据标准化公式为:其中,x'为标准化结果,x为a
p
,p的取值为1~n的自然数,n表示训练的批量大小;μ为特征矩阵a中每一列的均值,σ为标准差;
49.本实施例中,步骤四中所述计算机识别连续多帧图像中的行为,进行上/卸杆行为识别,并进行钻杆计数时,基于cnn和rcnn网络构建井下作业行为识别模型,所述井下作业行为识别模型包括cnn层、rcnn层、全连接层和分类层,所述cnn层采用rensnet50网络,所述
cnn层负责提取行为空间特征;所述rcnn层采用2层lstm网络,所述rcnn层负责提取行为的时序特征;所述分类层采用softmax函数,所述分类层负责识别行为的类别。
50.本实施例中,步骤四中所述计算机识别连续多帧图像中的行为,进行上/卸杆行为识别,并进行钻杆计数时,采用井下作业行为识别模型进行,具体过程为:
51.步骤401、所述cnn层将每帧图像中的空间信息编码为1

300的特征向量;
52.步骤402、所述rcnn层将连续16帧的1

300维特征向量继续编码,并输出1

256维的特征向量;
53.步骤403、经过所述全连接层,输出1

3维向量;
54.步骤404、所述分类层使用softmax函数计算类概率,并选取类概率最大的值作为识别结果,所述识别结果包括上杆行为和卸杆行为;
55.步骤405、进行钻杆计数。识别1个上杆,上杆数量加1;识别1个卸杆,卸杆数量加1。钻杆数量其实就是上/卸杆的数量。
56.本实施例中,所述全连接层为2个。所述井下作业行为识别模型的原理图如图5所示。
57.具体实施时,当识别到上杆行为时,作业行为识别的时间间隔设置为40s;当识别到卸杆行为时,作业行为识别的时间间隔设置为8s。
58.具体实施时,所述井下作业行为识别模型在识别某段行为时,设置采样间隔为2,连续采样16帧图片,并统一裁剪尺寸为224x224大小的图像,之后送入井下作业行为识别模型进行识别。
59.为了验证本发明能够产生的技术效果,进行了试验验证。
60.(1)井下人员骨架提取效果验证
61.先利用yolov3算法检测井下人员在图像中的的位置,然后使用sppe模型对该位置中的人员进行姿态估计,即获取到人员骨架。具体效果如图6a和图6b所示。图6a中包含2个作业人员的检测框,图6b中包含2个作业人员的骨架信息。
62.(2)井下作业姿态识别效果验证
63.骨架验证集共333个样本,其中作业姿态123个,非作业姿态210个。井下作业姿态识别模型在其上性能如表1所示。
64.表1井下作业姿态识别模型性能表
[0065][0066]
(3)井下作业行为识别效果验证
[0067]
行为识别验证集共143个样本,验证时每段行为视频中随机抽取3段连续视频帧,即共429个样本。其中,上杆行为134个,卸杆行为234个,其他行为61个。井下作业行为识别模型在其上性能如表2所示。
[0068]
表2井下作业行为识别模型性能
[0069]
[0070][0071]
(4)本发明钻杆计数实际应用效果验证
[0072]
本发明钻杆计数实际应用效果验证如图7所示。实验基于64位windows 10位操作系统进行,硬件配置为:处理器intel(r)xeon(r)e5-1680 v4,内存32g,显卡nvidia titan xp 12g;软件环境为:图形处理加速器cuda10.1和cudnn7.6.5,编程语言python3.8,深度学习框架pytorch1.7.1。在上述环境下训练完成cnn-lstm模型后,先通过cos-svm在打钻视频流中识别作业姿势,每识别出1个作业姿势,就从该位置隔帧保存16帧图像。再将图像序列送入cnn-lstm模型中对行为进行分类,每识别1个上/卸杆行为,则上/卸杆数量 1。
[0073]
经过以上验证可以看出,本发明能够实现准确的基于机器视觉的井下钻杆计数,节约人力成本,能够事后记录复检,人为影响小。
[0074]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0075]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0076]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0077]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0078]
前述对本发明的具体示例性实施方案的描述是为了说明和例证的目的。这些描述并非想将本发明限定为所公开的精确形式,并且很显然,根据上述教导,可以进行很多改变和变化。对示例性实施例进行选择和描述的目的在于解释本发明的特定原理及其实际应用,从而使得本领域的技术人员能够实现并利用本发明的各种不同的示例性实施方案以及各种不同的选择和改变。本发明的范围意在由权利要求书及其等同形式所限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献