CN115797964A - 一种行为识别方法、装置、设备和存储介质 - Google Patents
一种行为识别方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN115797964A CN115797964A CN202111052226.2A CN202111052226A CN115797964A CN 115797964 A CN115797964 A CN 115797964A CN 202111052226 A CN202111052226 A CN 202111052226A CN 115797964 A CN115797964 A CN 115797964A
- Authority
- CN
- China
- Prior art keywords
- target object
- target
- frame image
- behavior
- current frame
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 82
- 238000003860 storage Methods 0.000 title claims abstract description 23
- 230000006399 behavior Effects 0.000 claims abstract description 437
- 238000001514 detection method Methods 0.000 claims abstract description 113
- 238000000605 extraction Methods 0.000 claims description 9
- 238000013135 deep learning Methods 0.000 claims description 7
- 210000003414 extremity Anatomy 0.000 description 39
- 238000010586 diagram Methods 0.000 description 36
- 230000008569 process Effects 0.000 description 22
- 238000012545 processing Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 20
- 230000009471 action Effects 0.000 description 9
- 230000003542 behavioural effect Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 6
- 241000282414 Homo sapiens Species 0.000 description 6
- 230000008447 perception Effects 0.000 description 6
- 230000000717 retained effect Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 210000003128 head Anatomy 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 241001310793 Podium Species 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008034 disappearance Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 210000002414 leg Anatomy 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000001217 buttock Anatomy 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 210000001747 pupil Anatomy 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Human Computer Interaction (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例公开了一种行为识别方法、装置、设备和存储介质,涉及计算机视觉领域,包括:获取摄像头拍摄的视频数据,视频数据包含多帧图像;利用行为检测模型识别当前帧图像内的各目标对象,以得到目标对象的目标位置和行为识别结果;基于目标位置为当前帧图像内的目标对象分配目标ID,连续帧图像中同一目标对象具有相同的目标ID;根据当前帧图像中目标对象的目标ID,获取目标对象在连续帧图像中的行为识别结果,并根据目标对象在连续帧图像中的行为识别结果,得到目标对象在当前帧图像中的最终行为识别结果,连续帧图像包含当前帧图像。采用上述方法可以解决教学录播场景下,难以对学生行为进行准确高效识别的技术问题。
Description
技术领域
本申请实施例涉及计算机视觉领域,尤其涉及一种行为识别方法、装置、设备和存储介质。
背景技术
随着社会的进步与发展,人民的生活水平不断提高,教育逐渐成为了当前社会的重要议题。教育公平是构建和谐社会的基础,而优质教学资源的共享则是实现教育公平的重要手段。在此背景下,教学录播系统应运而生,并被赋予了录制和传播优质教学资源的重任。其中,教学录播系统能够把在教学现场摄录的教学视频、音频以及教学过程中使用的电子设备的图像信号进行整合同步录制,生成标准化的流媒体文件,用来对外直播、存储、后期编辑、点播,以达到共享教学资源的目的。
教学录播系统在录制教学视频的过程中,一般以教室为场地进行录制,并在录制的过程中需要关注老师与学生之间的课堂互动,例如,当学生站起来回答问题时,需要教学录播系统主动给予学生特写镜头,此时,需要教学录播系统具备在教学场景下基于视频的行为识别技术,以识别出学生站起来答题的行为,并给予学生特写镜头,以实现对学生的跟踪。目前传统的行为识别技术主要有:双流法,动量检测法,骨架法,3D时空建模法等。但是,双流法实现过程中,计算耗时较大,难以在前端实时部署;动量检测法会忽略目标(如教学录播场景下的学生等)属性信息,容易误检;骨架法需要对教室中每个学生的骨架进行分类,较为耗时,且对骨架关键点进行标注的任务繁重,成本较高;3D时空建模法是基于3D卷积的行为识别技术,然而现有网络处理器(Neural-network Processing Unit NPU)往往不支持3D卷积的推理,使得3D时空建模法不容易在前端部署。综上,在教学录播场景下,如何对学生行为进行准确高效的识别,成为了亟需解决的技术问题。
发明内容
本申请实施例提供了一种行为识别方法、装置、设备和存储介质,用于解决教学录播场景下,难以对学生行为进行准确高效识别的技术问题。
第一方面,本申请实施例提供了一种行为识别方法,所述方法包括:
获取摄像头拍摄的视频数据,所述视频数据包含多帧图像;
利用行为检测模型识别当前帧图像内的各目标对象,以得到所述目标对象的目标位置和行为识别结果;
基于所述目标位置为所述当前帧图像内的所述目标对象分配目标ID,连续帧图像中同一所述目标对象具有相同的目标ID;
根据所述当前帧图像中所述目标对象的目标ID,获取所述目标对象在连续帧图像中的行为识别结果,并根据所述目标对象在所述连续帧图像中的行为识别结果,得到所述目标对象在所述当前帧图像中的最终行为识别结果,所述连续帧图像包含所述当前帧图像。
第二方面,本申请实施例提供了一种行为识别装置,所述装置包括:
视频获取模块,用于获取摄像头拍摄的视频数据,所述视频数据包含多帧图像;
识别模块,用于利用行为检测模型识别当前帧图像内的各目标对象,以得到所述目标对象的目标位置和行为识别结果;
ID分配模块,用于基于所述目标位置为所述当前帧图像内的所述目标对象分配目标ID,连续帧图像中同一所述目标对象具有相同的目标ID;
结果获取模块,用于根据所述当前帧图像中所述目标对象的目标ID,获取所述目标对象在连续帧图像中的行为识别结果,并根据所述目标对象在所述连续帧图像中的行为识别结果,得到所述目标对象在所述当前帧图像中的最终行为识别结果,所述连续帧图像包含所述当前帧图像。
第三方面,本申请实施例提供了一种行为识别设备,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的行为识别方法。
第四方面,本申请实施例提供了一种存储计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的行为识别方法。
上述行为识别方法、装置、设备和存储介质,通过获取摄像头拍摄的包含多帧图像的视频数据,并利用行为检测模型识别当前帧图像内的各目标对象,以得到目标对象的目标位置和行为识别结果,之后,基于各目标对象的目标位置为当前帧图像内的目标对象分配目标ID,根据当前帧图像中目标对象的目标ID获取该目标对象在连续帧图像中的行为识别结果,并根据该目标对象在连续帧图像中的行为识别结果,得到目标对象在当前帧图像中的最终行为识别结果的技术手段,解决了教学录播场景下难以对学生行为进行准确高效的识别的技术问题。利用行为检测模型识别图像中目标对象的目标位置以及行为检测结果,提升了对学生行为进行识别的精度与速度,并且在得到每个目标对象的目标位置后,为图像中的每个目标对象分配目标ID,并且,同一目标对象在连续帧图像中具有相同的目标ID,以便于在连续图像帧中获取同一目标对象的行为识别结果,并结合连续帧图像中的行为识别结果确认目标对象在当前帧图像中的最终行为识别结果,考虑到了同一行为在连续帧图像中的连续性,避免只通过当前帧图像来确认目标对象的行为识别结果带来的误识别情况,提高了行为识别的准确性。并且,该行为识别方法实现过程较为简单,便于前端实时部署。
附图说明
图1为本申请一个实施例提供的一种行为识别方法的流程图。
图2为本申请一个实施例提供的一种行为识别方法的流程图。
图3为本申请一个实施例提供的一种行为注意力模块的结构示意图。
图4为本申请一个实施例提供的一种行为注意力模块的结构示意图。
图5为本申请一个实施例提供的一种行为注意力模块的结构示意图。
图6为本申请一个实施例提供的一种PSC-N Module的结构示意图。
图7为本申请一个实施例提供的一种PSC-N Module的结构示意图。
图8为本申请一个实施例提供的一种特征识别模块的结构示意图。
图9为本申请一个实施例提供的一种行为检测模型的结构示意图。
图10为本申请一个实施例提供的一种行为检测模型的结构示意图。
图11为本申请一个实施例提供的一种目标ID分配示意图。
图12为本申请一个实施例提供的一种禁止区域示意图。
图13为本申请一个实施例提供的一种许可区域示意图。
图14为本申请一个实施例提供的一种双端队列的结构示意图。
图15为本申请一个实施例提供的一种行为识别装置的结构示意图。
图16为本申请一个实施例提供的一种行为识别设备的结构示意图。
具体实施方式
以下描述和附图充分地示出本申请的具体实施方案,以使本领域的技术人员能够实践它们。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施方案的部分和特征可以被包括在或替换其他实施方案的部分和特征。本申请的实施方案的范围包括权利要求书的整个范围,以及权利要求书的所有可获得的等同物。在本文中,各实施方案可以被单独地或总地用术语“发明”来表示,这仅仅是为了方便,并且如果事实上公开了超过一个的发明,不是要自动地限制该应用的范围为任何单个发明或发明构思。本文中,诸如第一和第二等之类的关系术语仅仅用于将一个实体或者操作与另一个实体或操作区分开来,而不要求或者暗示这些实体或操作之间存在任何实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素。本文中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的结构、产品等而言,由于其与实施例公开的部分相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本申请实施例中提供的行为识别方法可以由行为识别设备执行,该行为识别设备可以通过软件和/或硬件的方式实现,该行为识别设备可以是两个或多个物理实体构成,也可以由一个物理实体构成。例如,行为识别设备可以是计算机、平板、智能手机以及服务器等能够直接对数据进行处理的设备。
示例性的,行为识别设备部署在教学录播系统中,以在教学录播场景下,通过行为识别设备实现行为识别方法,或者是,将教学录播系统部署的计算机或其他具有数据处理功能的设备作为行为识别设备,并添加行为识别功能,以实现行为识别方法,此时,无需在教学录播系统中部署新的行为识别设备。
示例性的,将行为识别设备部署在教学录播系统后,行为识别设备可以与教学录播系统内的其他设备(如摄像头等)协同工作,以实现教学录播,其中,行为识别设备与其他设备之间的通信方式实施例不作限定。
图1为本申请一个实施例提供的一种行为识别方法的流程图,如图1所示,行为识别方法包括:
步骤101、获取摄像头拍摄的视频数据,视频数据包含多帧图像。
一个实施例中,摄像头可以对特定区域进行拍摄,以得到视频数据。在教学录播场景下,特定区域是指进行现场教学的教室,即摄像头用于对教室进行拍摄。此时,摄像头拍摄的视频数据体现了教室中的现场教学画面。可选的,摄像头的数量可以为至少一个,当摄像头为多个时,多个摄像头位于教室的不同位置,以从不同角度对现场教学画面进行拍摄。可选的,获取摄像头拍摄的视频数据可以是获取各摄像头拍摄的视频数据,并对各摄像头拍摄的视频数据进行后续处理,或者是,由人工选择获取一摄像头拍摄的视频数据,并对该视频数据进行后续处理。需说明,实施例中,对于摄像头如何拍摄视频数据以及行为识别设备如何获取视频数据不作限定。例如,开始进行教学录制时,摄像头开始拍摄现场教学画面,并将拍摄的现场教学画面通过有线或无线的方式发送到行为识别设备中。再如,摄像头和行为识别设备通过教学录播系统中部署的服务器进行通信,此时,行为识别设备通过服务器控制摄像头进行拍摄并获取拍摄到的视频数据。
一个实施例中,视频数据包含多帧图像,各帧图像按照采集时间顺序排列。其中,视频数据所包含图像的具体帧数不作限定。可理解,视频数据本质上是连续的图像序列,视频数据由多帧连续的图像组成,根据视觉暂留原理,人眼无法辨别单帧图像的静态画面,当多帧连续图像快速播放时,人眼看到的是平滑连续的视觉效果。
步骤102、利用行为检测模型识别当前帧图像内的各目标对象,以得到目标对象的目标位置和行为识别结果。
一个实施例中,采用行为检测模型对每帧图像中的目标对象进行识别,以得到每帧图像中各目标对象的目标位置和行为识别结果。其中,目标对象是指进行定位和动作识别的对象,应用场景不同时,行为检测模型可以识别的目标对象类型不同。一个实施例中,目标对象为人类,即行为检测模型可以对视频数据中的人类进行识别。可选的,教学录播场景下,目标对象为学生,此时,在拍摄视频数据时,可对教室内学生所在区域进行拍摄,以得到包含目标对象的视频数据。需要说明的是,教学录播场景下,会存在老师走进学生所在区域的情况,此时,视频数据中还包括老师,老师与学生均属于人类,因此,行为检测模型也会将老师作为目标对象进行识别,并输出对应的识别结果。可理解,教学时,老师在讲台区域停留时间较长,在学生区域停留时间较短,因此,即使视频数据中包含的老师被行为检测模型识别,也不会影响教学录播的最终效果。
可理解,一帧图像经过行为检测模型后,行为检测模型会输出该图像中包含的目标对象的目标位置和行为识别结果。可选的,若当前帧图像中不存在目标对象,则行为检测模型不会输出对应的目标位置和行为识别结果,此时,可以认为行为检测模型输出结果为空。一个实施例中,行为检测模型进行识别时,依次对各帧图像进行识别,此时,将行为检测模型当前识别的图像记为当前帧图像,并在后续得到当前帧图像内目标对象的最终行为识别结果。
其中,行为检测模型为预先构建且完成训练的一个神经网络模型,本步骤为行为检测模型的应用过程。行为检测模型的模型结构和模型参数可以根据实际情况设置。将当前帧图像输入至行为检测模型后,行为检测模型可以在当前帧图像中标识出识别到的目标对象以及其对应的目标位置和行为识别结果。目标位置是指目标对象在对应图像中的位置,一个实施例中,行为检测模型通过矩形框在图像中标识出识别到的目标对象,此时,识别到的目标对象位于矩形框内,相应的,目标位置是指矩形框所在矩形区域在图像的位置,目标位置可以通过坐标的形式进行表示,例如,以图像中某一像素点(如左上角的像素点)为坐标系原点建立直角坐标系,并通过矩形区域在坐标系上的坐标得到对应目标对象的目标位置。行为识别结果是指对目标对象的行为进行识别后得到结果。示例性的,预先设定可被识别的行为,为了便于描述,将预先设定的行为记为预设行为,预设行为为多个。行为检测模型识别目标对象时,在预设行为中找到目标对象当前可能发出的行为,并得到行为识别结果。其中,不同应用场景下,预设行为的内容可以不同,例如,教学录播场景下,预设行为包括起立、坐下、举手等,此时,行为检测模型基于预设行为识别目标对象发出的行为也可理解对目标对象发出的行为进行分类,以确定发出的行为所属的类别,每个预设行为可以认为是一个类别。可选的,行为检测模型识别行为时,可以是确定目标对象当前发出的行为属于各预设行为的置信度,置信度越高,说明目标对象发出的行为属于预设行为的概率越大,反之亦然。之后,行为检测模型将置信度最高的预设行为作为目标对象的行为识别结果,并输出相应的置信度。或者是,行为检测模型将置信度最高的多个预设行为作为目标对象的行为识别结果,并输出相应的置信度。一个实施例中,以行为检测模型将置信度最高的预设行为作为目标对象的行为识别结果为例进行描述。
一个实施例中,行为检测模型识别目标对象的目标位置和行为识别结果时,首先提取图像中目标对象的第一特征,示例性的,第一特征包括肢体关联特征以及空间关联特征,肢体关联特征表示目标对象的目标肢体间之间的关联特征,其中,目标肢体是预先设定且需要行为检测模型进行识别的肢体,如手臂、肩膀、臀部、腿部等,目标肢体之间的关联特征可包括目标肢体之间相对位置等内容,通过肢体关联特征可推测出目标对象发出的行为。空间关联特征表示目标对象的目标肢体与空间物体之间的关联特征,其中,空间物体是与目标对象存在空间关系的物体,并且,空间关系可根据应用场景确定,一般而言,将目标对象附近应存在的物体作为与目标对象存在空间关系的物体,例如,教学录播场景下,学生一般坐在椅子上且使用桌子,因此,椅子和桌子位于学生附近,且可以认为是与学生存在空间关系的物体。空间关联特征可包括目标肢体与空间物体之间相对位置等内容,例如,教学录播场景下,目标对象为学生时,空间关联特征包括学生的手臂与桌子之间的关联特征或臀部与椅子之间的关联特征等,通过空间关联特征可以推测出目标对象发出的行为以及目标对象的目标位置。得到目标对象的第一特征后,行为检测模型对第一特征进行深度学习,挖掘出内容更加丰富的第二特征。之后,行为检测模型对第二特征进行识别,即识别第二特征的特征内容,得到第二特征的特征识别结果,其中,特征识别结果可描述出第二特征所包含的特征内容,最后行为检测模型解析特征识别结果以得到目标对象的目标位置和行为识别结果。
一般而言,对于教学录播场景而言,摄像头拍摄学生时,会对拍摄区域内的全部学生进行拍摄,此时,视频数据包含多个目标对象(即包含拍摄区域内的全部学生)。将当前帧图像输入至行为检测模型后,行为检测模型会对当前帧图像内的每个目标对象进行识别,以得到各目标对象的目标位置和行为识别结果。可理解,当一个目标对象重复出现在多帧图像时,该目标对象在各帧图像中均存在对应的目标位置和行为识别结果。
步骤103、基于目标位置为当前帧图像内的目标对象分配目标ID,连续帧图像中同一目标对象具有相同的目标ID。
目标ID是为目标对象分配的一个唯一标识,每个目标对象对应一个目标ID,通过目标ID能够区分目标对象。实施例中不对目标ID的具体表示方式进行限定。示例性的,当前帧图像中出现的每个目标对象均分配有对应的目标ID,以在分配完目标ID后,通过目标ID即可对两个目标对象进行区分。
一个实施例中,根据当前帧图像中目标对象的目标位置(即目标对象在对应图像中的位置)为该目标对象分配目标ID。可选的,同一目标对象可能出现在连续的多帧图像中,因此,一个实施例中,在连续帧图像中为同一个目标对象分配相同的目标ID,其中,连续帧图像是指连续的多帧图像,对于当前帧图像而言,其对应的连续帧图像中的最后一帧图像为当前帧图像。可理解,目标对象发出一行为时,其在连续帧图像中的行为应该是连贯的,相应的,其在连续帧图像中的目标位置应该是比较接近的,因此,可以根据连续帧图像中目标对象的目标位置为同一目标对象分配相同的目标ID,以便后续结合连续帧图像更准确的识别目标对象的行为,避免混淆目标对象。并且,一帧图像中,不同目标对象具有不同的目标位置,因此,可以根据目标位置区分不同的目标对象,进而为不同的目标对象分配不同的目标ID。
在一实施例中,根据前一帧图像中各目标对象的目标位置和当前帧图像中各目标对象的目标位置为当前帧图像中的各目标对象分配目标ID。可选的,根据当前帧图像中一个目标对象所在的目标位置,确认前一帧图像中该目标位置是否存在目标对象,若是,则获取前一帧图像中该目标位置中目标对象的目标ID,并将目标ID赋予当前帧图像中该目标位置的目标对象。若否,确定目标对象是新出现的对象,并为目标对象分配一个新的ID。对于第一帧图像而言,其中出现的每个目标对象均被分配一个新的ID。目标对象分配目标ID的规则可以根据实际情况设定。还可选的,利用计算IOU值(Intersection over Union)的方式,确定连续帧图像中是否存在同一目标对象,并为同一目标对象分配相同的ID。其中,IOU值是指两个区域重叠的部分除以两个区域的集合部分得出的结果。示例性的,获取当前帧图像中目标对象的目标位置,之后,根据该目标位置以及前一帧图像中各目标对象的目标位置计算IOU值,此时,当前帧图像中的目标位置与前一帧图像中每个目标位置之间均存在一个IOU值。可理解,IOU值越高,说明两个目标对象属于同一目标对象的可能性越高。据此,在各IOU值中选择最大的IOU值,并判断最大的IOU值是否大于一预先设定的阈值,若大于预先设定的阈值,则可以认为最大IOU值在前一帧图像中对应的目标位置所包含的目标对象与最大IOU值在当前帧图像中对应目标位置所包含的目标对象为同一目标对象,因此,获取目标对象在前一帧图像中的目标ID并作为该目标对象在当前帧图像中的目标ID。若小于预先设定的阈值,则可以认为最大IOU值在当前帧图像中对应目标位置所包含的目标对象为新出现的目标对象,并为其分配新的目标ID。此时,当连续两帧图像中同一目标对象的目标位置发生抖动或轻微变化时,通过IOU值仍能准确识别出连续两帧图像中的同一目标对象。
一个实施例中,若前一帧图像中某个目标对象在当前帧图像中未被识别到,则认为该目标对象暂时消失了一帧,更新目标对象消失的帧数,比较消失的帧数与预先设置的目标帧数,若消失的帧数达到了目标帧数,则说明目标对象已经消失一段时间,因此,可以认为目标对象当前已经消失在视频数据中,此时,在当前帧图像中不添加该目标对象和对应的ID,若消失的帧数未达到目标帧数,则说明目标对象消失时间很短,可能是因为漏识别等因素导致的消失,此时,根据该目标对象在前一帧图像中的目标位置,将当前帧图像中该目标位置识别为该目标对象所在的位置,并为该目标对象赋予目标ID,之后,处理后续的帧图像时,继续确定该目标对象是否消失,并在消失时更新消失的帧数,若当前帧图像的后续帧图像中,再次识别到该目标对象,则可以认为可能由于某些原因在当前帧图像中漏掉了该目标对象,因此,将目标对象消失的帧数清零,并在后续帧图像中保留该目标对象以及目标ID。这样可以保证连续帧图像中的目标对象被准确的识别出来,并赋予正确的目标ID,以避免漏识别的情况,即使在某一帧图像中漏识别目标对象,也会在该帧图像中保留目标对象,避免漏识别对该帧图像中目标对象的最终行为识别结果的影响,并且,确定目标对象已经消失后,不再保留目标对象,可以进一步保证识别结果的准确性,避免某个消失的目标对象长时间的保留在各帧图像中。
步骤104、根据当前帧图像中目标对象的目标ID,获取目标对象在连续帧图像中的行为识别结果,并根据目标对象在连续帧图像中的行为识别结果,得到目标对象在当前帧图像中的最终行为识别结果,连续帧图像包含当前帧图像。
示例性的,由于目标ID是每个目标对象的唯一标识,因此,根据当前帧图像中的目标ID便可获取到目标对象在连续帧图像中每一帧图像的行为识别结果,其中,连续帧图像包含当前帧图像,一个实施例中,连续帧图像由当前帧图像以及当前帧图像之前设定数量的帧图像组成,且连续帧图像的帧数可根据实际需要进行设置。由于视频数据中相邻帧图像的时间间隔很小,使得目标对象在连续帧图像中的动作差异较小,即目标对象在连续帧图像中具有相同的行为识别结果的概率较高,因此,根据目标对象在连续帧图像中的行为识别结果可以确定目标对象在当前帧图像的最终行为识别结果。在一个实施例中,根据目标对象在连续帧图像中的行为识别结果确定目标对象在当前帧图像的最终行为识别结果的方式可以是:统计连续帧图像中其他帧图像(除当前帧图像外)内该目标对象的行为识别结果中,与当前帧图像的行为识别结果相同的行为识别结果,进而得到当前帧图像中行为识别结果在连续帧图像中的出现次数,当出现次数超过预先设定的次数阈值时,可以认为当前帧图像的行为识别结果正确,并将该行为识别结果作为当前帧图像的最终行为识别结果。可选的,如果出现次数未超过预先设定的次数阈值,可以认为目标对象的动作发生了改变,此时,将预先设置的默认行为识别结果作为当前帧图像的最终行为识别结果。其中,默认行为识别结果可以根据应用场景设置,例如,教学录播场景下,默认行为识别结果为坐下(sitdown),若当前帧图像的行为识别结果在连续帧图像中出现的次数小于次数阈值,则将坐下作为当前帧图像的最终行为识别结果。
可理解,视频数据的前几帧(小于连续帧图像的数量)图像而言,只获取前几帧图像的目标位置、行为识别结果和目标ID,由于未达到连续帧图像的帧数,因此,不会输出前几帧图像的最终行为识别结果,即从用户角度而言,视频数据的前几帧图像不存在最终行为识别结果。
可选的,得到目标对象的最终行为识别结果后,便可以根据最终行为识别结果进行后续控制,如根据最终行为识别结果确定目标对象起立时,控制摄像头对目标对象进行跟踪拍摄。
上述,通过获取摄像头拍摄的包含多帧图像的视频数据,并利用行为检测模型识别当前帧图像内的各目标对象,以得到目标对象的目标位置和行为识别结果,之后,基于各目标对象的目标位置为当前帧图像内的目标对象分配目标ID,根据当前帧图像中目标对象的目标ID获取该目标对象在连续帧图像中的行为识别结果,并根据目标对象在连续帧图像中的行为识别结果得到目标对象在当前帧图像中的最终行为识别结果的技术手段,解决了教学录播场景下难以对学生行为进行准确的识别的技术问题。利用行为检测模型识别出图像中的目标对象的目标位置以及行为检测结果,提升了对学生行为进行识别的精度与速度,并且在得到每个目标对象的目标位置后,为图像中的每个目标对象分配目标ID,并且,同一目标对象在连续帧图像中具有相同的目标ID,以便于在连续图像帧中获取同一目标对象的行为识别结果,并结合连续帧图像中的行为识别结果确认目标对象在当前帧图像中的最终行为识别结果,避免只通过当前帧图像来确认目标对象的行为识别结果带来的误识别情况,提高了行为识别的准确性。并且,该行为识别方法实现过程较为简单,便于前端实时部署。
图2为本申请一个实施例提供的一种行为识别方法的流程图,该行为识别方法是在上述实施例的基础上进行具体化。如图2所示,行为识别方法包括:
步骤201、获取摄像头拍摄的视频数据,视频数据包含多帧图像。
步骤202、利用行为检测模型识别当前帧图像内的各目标对象,以得到目标对象的目标位置和行为识别结果。
一个实施例中,行为检测模型包含行为注意力模块、局部空间卷积模块、特征识别模块和对象检测模块。相应的,步骤202包括步骤2021-步骤2024:
步骤2021、利用行为注意力模块提取当前帧图像中各目标对象的第一特征,该第一特征包括肢体关联特征以及空间关联特征,肢体关联特征用于体现目标对象中各目标肢体间的关联特征,空间关联特征用于体现目标肢体与空间物体间的关联特征,空间物体为与目标对象存在空间关系的物体。
其中,行为注意力模块是行为检测模型的核心模块,行为注意力模块用于提取图像中各目标对象的第一特征,第一特征包括肢体关联特征以及空间关联特征,示例性的,肢体关联特征体现了目标对象中各目标肢体间的关联特征,目标肢体为预先设定的肢体,行为注意力模块可以识别图像中的目标肢体,以得到目标肢体间的关联特征。一般而言,目标对象发出行为时,目标肢体间的相对位置会发生一定的改变,例如指定目标对象的手臂、肩膀、腿部以及臀部等为目标肢体,当目标对象举手时手臂与肩膀间的相对位置与目标对象未举手时手臂与肩膀间的相对位置不同,此时,行为注意力模型识别目标对象时,便可以得到表示手臂和肩膀以及两者间相对位置的肢体关联特征,进而通过肢体关联特征辅助进行行为识别。示例性的,空间关联特征用于体现目标肢体与空间物体之间的关联特征。其中,空间物体为与目标对象存在空间关系的物体。并且,空间关系可根据应用场景确定,一般而言,将目标对象附近应存在的物体作为与目标对象存在空间关系的物体。可理解,当目标对象发出某个行为时,其目标肢体与空间物体之间的相对位置会发生变化,比如,目标肢体为臀部,空间物体为椅子,目标对象站立或坐下时,其臀部与椅子之间的位置关系不同,此时,行为注意力模块识别目标对象时,便可以得到表示臀部和椅子以及两者间相对位置关系的肢体关联特征,以通过空间关联特征辅助进行行为识别和目标位置确定。
行为注意力模块的结构可以根据实际设定。一个实施例中,行为注意力模块包括内容感知注意力子模块和至少一个卷积子模块,卷积子模块用于对输入的数据进行特征提取,内容感知注意力子模块用于基于提取的特征得到与肢体关联特征有关的特征以及与空间关联特征有关的特征,或,行为注意力模块包括空间注意力子模块和至少一个卷积子模块,卷积子模块用于对输入的数据进行特征提取,空间注意力子模块用于基于提取的特征得到与空间关联特征有关的特征以及与肢体关联特征有关的特征,或,行为注意力模块包括内容感知注意力子模块、空间注意力子模块和至少一个卷积子模块,卷积子模块用于对输入的数据进行特征提取,内容感知注意力子模块用于基于提取的特征得到与肢体关联特征有关的特征,空间注意力子模块用于基于提取的特征得到与空间关联特征有关的特征。
其中,卷积子模块用于对输入的数据(如当前帧图像或者是基于当前帧图像得到的特征图)进行卷积,以从数据中提取需要的特征,并配合行为注意力中的其他子模块得到第一特征。卷积子模块可表示为CBL-N子模块,CBL由Convolution(用于卷积)+Batchnorm(用于使每一层神经网络的输入保持相同分布的)+LeakyReLu(表示带泄露修正线性单元函数)组成,即卷积子模块包括卷积层、Batchnorm层和LeakyReLu层。N表示卷积子模块输出的通道数。N的值可以根据实际情况选择。此外,卷积子模块中涉及的参数除了通道数外,还包括卷积核的尺寸Kernel Size、步长Stride以及填充像素Pad,各参数的具体值可以根据实际情况设定。行为注意力模块中使用的卷积子模块的数量以及卷积子模块间的连接关系可根据实际情况设定。
内容感知注意力子模块(Contextual Attention Module,CAM)主要学习与图像中各目标对象的肢体关联特征有关的内容,一些情况下,其也可以学习与空间关联特征有关的内容。内容感知注意力子模块的网络结构可以根据实际情况设定,一个实施例中,内容感知注意力子模块由残差块和Sigmoid函数组成,即在残差块后接有Sigmoid函数。其中,残差块可表示为ResBlock-N,ResBlock表示残差块,其具体结构可以根据实际情况设定,N表示残差块输出的通道数,可选的,ResBlock-N和CBL-N中的N的数值相同,ResBlock-N中涉及的参数除了通道数外,还包括卷积核的尺寸Kernel Size、步长Stride以及填充像素Pad,各参数的具体值可以根据实际情况设定。
空间注意力子模块(Spatial Attention Module,SAM)主要学习与图像中各目标对象的空间关联特征有关的内容,一些情况下,其也可以学习与肢体关联特征有关的内容。空间注意力子模块的网络结构可以根据实际情况设定,一个实施例中,空间注意力子模块由CBL-N和Sigmoid函数组成,即在CBL-N后接有Sigmoid函数。其中,空间注意力子模块中使用的CBL-N和卷积子模块中使用的CBL-N可以具有相同的结构。
示例性的,行为注意力模块包括卷积子模块、内容感知注意力子模块和空间注意力子模块时,卷积子模块用于对输入至自身的数据进行卷积,以实现特征提取,之后,内容感知注意力子模块可以基于卷积子模块提取的特征,提取与肢体关联特征有关的内容(即特征),空间注意力子模块可以基于卷积子模块提取的特征,提取与空间关联特征有关的内容(即特征),举例而言,图3为本申请一个实施例提供的一种行为注意力模块的结构示意图,参考图3,行为注意力模块(Action Contextual Spatial Attention Module,ACSAM)包括两个卷积子模块(图3中示为CBL-N)、一个内容感知注意力子模块和一个空间注意力子模块。其中,CBL-N后面连接的三个数字分别表示卷积核的尺寸Kernel Size、步长Stride以及填充像素Pad,如CBL-N,3,2,1表示卷积核尺寸为3(即卷积核的长度和宽度都为3,卷积核为正方形),步长为2和填充像素为1。CBL-N,K,1,3表示卷积核尺寸为K(具体值可根据实际情况设定),步长为1和填充像素为3。ResBlock-N后面连接的三个数字分别表示卷积核的尺寸Kernel Size、步长Stride以及填充像素Pad,如ResBlock-N,3,1,1表示卷积核尺寸为3,步长为1和填充像素为1。图3中,ResBlock-N,3,1,1以及Sigmoid函数构成了内容感知注意力子模块,CBL-N,3,1,1以及Sigmoid函数构成了空间注意力子模块。一个实施例中,为了提升感受野,提高多模态行为特征融合效能,将CBL-N,K,1,3中的K设置为5或7。可理解,图3中,通过ACSAM-N表示行为注意力模块,其中,N表示ACSAM输出第一特征的通道数,ACSAM-N、CBL-N和ResBlock-N中的N可以具有相同的值。需说明,图3所示的行为注意力模块的具体工作过程实施例不作限定。
在此基础上,为了进一步压缩行为注意力模块的大小,可以对行为注意力模块的结构进行简化,简化的方式可以是在行为注意力模块中只设置卷积子模块和内容感知注意力子模块,即内容感知注意力子模块也具有学习空间关联特征的能力,以通过卷积子模块和内容感知注意力子模块提取图像中各目标对象的第一特征。示例性的,图4为本申请一个实施例提供的一种行为注意力模块的结构示意图,图4中的行为注意力模块包括两个卷积子模块(分别是CBL-N,3,2,1和CBL-N,K,1,3)和内容感知注意力子模块(SAM)。其中,SAM的结构与图3中SAM的结构相同,在此不另做描述的,此时,SAM可以基于卷积子模块提取的特征得到与肢体关联特征有关的特征以及与空间关联特征有关的特征。或者,简化的方式可以是在行为注意力模块只设置卷积子模块和空间注意力子模块,通过卷积子模块和空间注意力子模块提取图像中各目标对象的第一特征,即空间注意力子模块也具有学习肢体关联特征的能力。示例性的,图5为本申请一个实施例提供的一种行为注意力模块的结构示意图,图5中的行为注意力模块包括两个卷积子模块(分别是CBL-N,3,2,1和CBL-N,k,1,3)和空间注意力子模块(CAM)。其中,CAM的结果与图3中CAM的结构相同,再次不另做描述的,此时,CAM可以基于卷积子模块提取的特征得到与空间关联特征有关的特征以及与肢体关联特征有关的特征。可理解,图4和图5所示的行为注意力子模块的结构简单,处理速度更快,其处理结果可以满足用户的要求,图3所示的行为注意力模块的结构相对复杂,处理精确度更高,实际应用中,用户可结合实际需求选择行为注意力模块的结构,同时,用户可以结合实际需求修改行为注意力模块中各子模块的数量、连接关系和参数等。
在一个实施例中,将当前帧图像输入到行为注意力模块后,行为注意力模块便可提取图像中各目标对象的第一特征。
可理解,在行为检测模型中行为注意力模块的数量可根据实际需要进行设置,并且,行为注意力模块的数量越多,行为检测模型越大,得到第一特征的处理时间越长。可选的,当行为注意力模块为多个时,多个行为注意力模块可采用串联的方式,且不同行为注意力模块可以具有不同的模型参数。
步骤2022、利用局部空间卷积模块对第一特征进行深度学习,以输出多个通道数不同的第二特征。
示例性的,局部空间卷积模块用于对第一特征进行深度学习。其中,深度学习是指学习第一特征的内在规律和表示层次,从而挖掘出所包含的特征内容更加丰富的第二特征。实施例中,基于第一特征得到多个第二特征,且各第二特征的通道数不同,其中,各第二特征的通道数可以实际情况设定。
一个实施例中,局部空间卷积模块由多个Partial Spatial Convolution Module(PSC Module)组成,并且,每个PSC Module均可通过PSC-N Module表示,N表示PSC Module输出的通道数,每个PSC-N Module用于进行深度学习,并输出一个第二特征。一个实施例中,PSC Module的结构可根据实际以情况设定,如PSC Module由CSP模块(Cross StagePartial Module)改进得到,其中,CSP通过将梯度的变化从头到尾地集成到特征图(实施例中对应第一特征)中,可以在减少了计算量的同时保证准确率。与CSP模块不同的是,PSCModule中支路的第一个网络层用1x1卷积层代替,从而有利于在NPU中缩短识别时间,其中,NPU中可部署行为检测模型。可理解,1x1卷积层的卷积核的参数量有限,使用1x1卷积层的PSC Module对行为检测模型计算复杂度的影响很小。举例而言,图6为本申请一个实施例提供的一种PSC-N Module的结构示意图,图7为本申请一个实施例提供的一种PSC-N Module的结构示意图。图6和图7示出了不同结构的PSC-N Module,在图6和图7中,Concate表示拼接层,CBL-N表示由Convolution+Batchnorm+LeakyReLu组成的输出通道数为N的卷积子模块,其中,CBL-N后面连接三个数字分别表示卷积核尺寸Kernel Size、步长Stride以及填充像素Pad。图6和图7中CBL-N/2表示输出通道数为N或2。可理解,PSC-N Module的结构、使用的参数可参考图6和图7,实施例不另做描述。一个实施例中,每个PSC-N Module后均接有Maxpooling,其中,Maxpooling表示最大值池化层,以对PSC-N Module的输出进行最大值池化。
可选的,多个PSC-N Module采用串联的方式,且各PSC-N Module按照输出通道数由小到大的顺序依次连接。可理解,PSC-N Module的数量越多,行为识别结果的精确度越高,但精确度的提升幅度会越来越小,提升效果不明显,但是在前端部署时,增加PSC-NModule的数量会使得运行时间显著增加,导致在对行为识别的过程中推理速度降低,延迟过高,实时性差,不利于前端部署。因此,在一实施例中,设置三个PSC-N Module,且PSC-NModule中的N分别为64、128和256。一个实施例中,PSC-256Module的输出直接作为第二特征,对于PSC-64Module和PSC-128Module而言,将CBL-N/2,1,1,0(图6和图7中虚线框示出)输出的特征作为第二特征。可选的,PSC-N Module的通道数越大,该子模块深度学习时所检测的目标对象的尺寸越大,此时,三个PSC-N Module输出的第二特征分别对应于小尺寸的目标对象、中尺寸的目标对象和大尺寸的目标对象。可理解,小、中、大尺寸的目标对象进行划分时所依据的尺寸可根据实际情况设定。
步骤2023、利用特征识别模块识别第二特征,并输出特征识别结果,每个第二特征对应一个特征识别结果。
特征识别模块用于识别第二特征,并输出特征识别结果,每个第二特征对应一个特征识别结果。其中,特征识别结果是指对第二特征进行识别后得到第二特征所表示内容的结果。在一实施例中,特征识别模块对第二特征进行识别后,得到不同尺寸目标对象所对应的特征识别结果,例如,将大尺寸、中尺寸和小尺寸的目标对象的第二特征输入特征识别模块后,可分别得到大尺寸、中尺寸和小尺寸对应的特征识别结果。
一个实施例中,特征识别模块处理各第二特征时,可以通过特征识别模块中的concate进行不同尺寸目标对象的特征的联合,以丰富处理的特征的数量。特征识别模块的具体结构可以根据实际情况设定,举例而言,图8为本申请一个实施例提供的一种特征识别模块的结构示意图。参考图8,特征识别模块由5个CBL-N(N分别为512、255、512、256、128)、2个CBLU-N、2个Concate和3个Conv组成,其中,CBL-N与前述CBL-N的含义相同,在此不做赘述,CBLU-N表示由CBL+Upsample组成的输出通道数为N的结构,其中,Upsample表示上采样,上采样的具体规则实施不作限定。Conv表示卷积,其卷积层的具体结构和参数实施例不作限定。参考图8,第二特征为三个时,通道数最大的第二特征输入至第一行第一个CBL-512,3,1,1,输出通道数次大的第二特征输入至中间行的Concate,以与上一层处理的特征进行联合,输出通道数最低的第二特征输入至最下行的Concate,以与上一层处理的特征进行联合,三个Conv分别输出各第二特征对应的特征识别结果,且由上至下分别为大尺寸、中尺寸和小尺寸目标对象对应的特征识别结果。
步骤2024、由对象检测模块根据特征识别结果检测出各目标对象的目标位置和行为识别结果,每个特征识别结果对应一个对象检测模块,每个对象检测模块所检测的目标对象的尺寸不同。
对象检测模块用于根据特征识别结果检测出各目标对象的目标位置和行为识别结果。可选的,对象检测模块包含三个分支,三个分支分别用于识别大尺寸、中尺寸和小尺寸的目标对象。示例性的,在教学录播场景下,以学生为目标对象时,学生覆盖的年龄范围比较大,如高中生、中学生和小学生分别覆盖了不同的年龄范围。并且不同年龄范围下学生的身高会存在差异,比如,高中生的身高普遍高于初中生和小学生的身高。因此,实施例中,以身高为标准,将高身高学生作为大尺寸的目标对象、中身高学生作为中尺寸的目标对象、低身高学生作为小尺寸的目标对象,以得到三种类型,且由对象检测模块中不同的分支对不同类型的学生进行识别,以增加对象检测模块的检测范围,进而增强行为识别模型的应用范围。
对象检测模块中三个分支可采用相同的结构,在一实施例中,对象检测模块中每个分支均采用YOLO检测头。将特征识别结果输入至对象检测模块中,YOLO检测头可以根据特征识别结果在当前帧图像中绘制包含目标对象的检测框,该检测框通常为矩形框,图像中检测框所在矩形区域的位置记为目标位置,并在检测框边缘标识出行为识别结果,即识别出目标对象发出的行为所属的分类(即预先设定的行为),以及属于该分类的置信度。其中,目标对象的尺寸越大,对象检测模块处理后图像中该目标对象的检测框越大。可理解,对象检测模块除了YOLO检测头,还可以采用其他可对特征识别结果进行识别的网络或结构,实施例对此不作限定。
在一实施例中,图9为本申请一个实施例提供的一种行为检测模型的结构示意图,参考图9,行为检测模型包括两个行为注意力模块,且两个行为注意力模块的通道数分别为32和64,图9中两个行为注意力模块分别记为ACSAM-32和ACSAM-64,各行为注意力模块的结构相同,且可采用图3-图5中任一所述的结构。局部空间卷积模块包括三个PSC-N Module,且通道数分别为64、128和256,对应于图9中PSC-64Module、PSC-128Module和PSC-256Module,各PSC-N Module的结构相同,且可以采用图6-图7中任一所述的结构,当采用图6的结构时,PSC-64Module和PSC-128Module中的CBL-N/2,1,1,0(图6和图7用虚线框示出)输出第二特征,PSC-256Module的输出作为第二特征。行为检测模型中特征识别模块的结构与图8中所示的结构相同,在此不做赘述。对象检测模块采用YOLO检测头,且三个YOLO检测头由上至下分别输出大尺寸、中尺寸和小尺寸目标对象的目标位置和行为识别结果。
一个实施例中,为了进一步提升行为检测模型。部署后的推理速度,可以采用轻量化的行为检测模型。其中,图10为本申请一个实施例提供的一种行为检测模型的结构示意图,图10示出了一种轻量化的行为检测模型,该行为检测模块可以替换图9所示的行为检测模型。即图10是对图9中的特征识别模块进行精简,剔除了特征识别模块中的CBL-512,3,1,1,并对其他的CBL-N的参数进行调整,有效地减小行为检测模型的参数规模,从而能够满足前端实时部署的需求。需要说明的是,行为识别结果的类型(即行为的分类)比较少的情况下,行为检测模型中并不需要设置过多的通道数,即使特征识别模块中的通道数较低,行为检测模型同样能够对准确得到目标对象的目标位置和行为识别结果,并且降低通道数能够提升行为检测模型的识别速度。在图10中,m的数值设置为1,2,4中的任意一个,n的数值设置为1,2中的任意一个。若m=2,n=1,则CBL-128m即为CBL-256,CBLU-32n即为CBLU-32,可理解,m,n的值可根据行为识别设备的硬件资源进行设置。
在步骤202得到目标对象的目标位置和行为识别结果后,执行后续步骤。
步骤203、基于各目标对象的目标位置为当前帧图像内的目标对象分配目标ID,连续帧图像中同一目标对象具有相同的目标ID。
在一实施例中,步骤203可具体包括步骤2031-步骤2032:
步骤2031、根据目标位置,计算当前帧图像中目标对象与前一帧图像中各目标对象间的IOU值,前一帧图像中每个目标对象具有一个目标ID。
前一帧图像中的每个目标对象已经被分配了相应的目标ID。示例性的,在当前帧图像中选择一个目标对象,并计算该目标对象与前一帧图像中各目标对象的IOU值,此时,当前帧图像中的目标对象与前一帧图像中的每个目标对象之间对应一个IOU值。在一实施例中,IOU值可根据当前帧图像中目标对象的目标位置与前一帧图像中目标对象的目标位置确定,即计算目标位置对应区域的交集与并集的比值得到IOU值。可选的,对于第一帧图像而言,其中各目标对象的目标ID可以直接分配,而无需参考前一帧图像,也无需计算IOU值。
步骤2032、根据IOU值,确定当前帧图像中目标对象的目标ID。
IOU值可体现当前帧图像中目标对象和前一帧图像中目标对象之间的相似程度,其中,IOU值越大,对应的两个目标对象越相似。此时,根据相似程度,可在前一帧图像中选择与当前帧图像中目标对象最相似的目标对象,并根据所选择的目标对象的目标ID确定当前帧图像中目标对象的目标ID。在一实施例中,步骤2032可包括步骤20321-步骤20322:
步骤20321、在当前帧图像中目标对象对应的全部IOU值中,挑选最大IOU值。
IOU值越大,可认为两个目标对象之间的相似程度越高,最大的IOU值对应的前一帧图像中目标对象与当前帧图像中目标对象的相似程度最高,即两者可能是位于不同帧图像中的同一目标对象。因此,在全部IOU值中挑选最大IOU值。
步骤20322、若最大IOU值大于第一阈值,则获取最大IOU值在前一帧图像中对应目标对象的目标ID,将获取的目标ID作为当前帧图像中目标对象的目标ID。
第一阈值可理解为两帧图像中的两个目标对象属于同一个目标对象的IOU值最小临界点。若最大IOU值大于第一阈值,则表示最大的IOU值所对应两个目标对象为同一个目标对象,因此,将最大IOU值对应的前一帧图像中目标对象的目标ID作为当前帧图像中目标对象的目标ID。举例而言,图11为本申请一个实施例提供的一种目标ID分配示意图,参考图11,左面为第i-1帧图像(即前一帧图像)示出的目标对象,右面为第i帧图像(即当前帧图像)示出的各目标对象,对于第i帧图像中左上角的目标对象而言,计算其与第i-1帧图像中各目标对象的IOU值后,确定第i-1帧图像中位于左上角的目标对象对应的IOU值为最大的IOU值且大于第一阈值,此时,将最大的IOU值对应的第i-1帧图像中目标对象的目标ID 001作为第i帧图像中目标对象的目标ID。可理解,第一阈值的数值可根据实际需要进行设置。
在一个实施例中,当前帧图像中的目标对象还可以是新出现的对象,其与前一帧图像中的各目标对象均不相同,此时,步骤2032还包括步骤20323:
步骤20323、若最大IOU值小于第二阈值,则确定当前帧图像中的目标对象为首次出现的目标对象,并赋予该目标对象新的目标ID,第二阈值小于或等于第一阈值。
第二阈值可理解为两帧图像中两个目标对象不属于同一个目标对象的IOU值最大临界点,一般而言,第二阈值小于或等于第一阈值。若最大IOU值小于第二阈值,则表示最大IOU值所对应的前一帧图像中目标对象与当前帧图像中目标对象不是同一个目标对象,即前一帧图像中的每个目标对象均与当前帧图像中的目标对象不是同一个目标对象,此时,确定当前帧图像中的目标对象是首次出现的目标对象,并为该目标对象赋予一个新的目标ID。可理解,第二阈值的具体数值可根据实际需要进行设置。可选的,第一阈值和第二阈值的比较顺序实施例不作限定。
举例而言,参考图11,第i帧图像(当前帧图像)中对于目标ID为008的目标对象而言,其对应的最大的IOU值小于第二阈值,因此,确定该目标对象为新出现的目标对象,并未该目标对象分配了一个新的目标ID,即分配了008作为目标ID。
一个实施例中,还存在由于目标对象移动过快或者行为检测模型效果不佳而出现目标对象漏识别的情况,此时,前一帧图像中识别出的目标对象可能会在当前帧图像中暂时消失,为了避免这种情况对后续行为识别的影响,步骤2032之后,还包括步骤2033-步骤2036:
步骤2033、根据前一帧图像中各目标对象的目标ID和当前帧图像中各目标对象的目标ID,查找未出现在当前帧图像中的目标对象。
示例性的,按照步骤2032为当前帧图像中每个目标对象分配目标ID后,将前一帧图像中各目标对象的目标ID和当前帧图像中各目标对象的目标ID进行比对,若前一帧图像中某个目标对象的目标ID在当前帧图像中没有出现,则确定前一帧图像中该目标ID对应的目标对象未出现在当前帧图像中。逐一比对两帧图像中的各目标ID后,便可以确定当前帧图像中未出现的目标对象。
步骤2034、更新未出现目标对象的未出现帧数。
确定当前帧图像中未出现的目标对象后,认为存在新的一帧图像(这里指当前帧图像)中未出现该目标对象,因此,该未出现的目标对象对应的未出现的图像帧数加1(即未出现帧数加1)。此时,未出现帧数可以体现当前该目标对象消失的帧数。可理解,当未出现目标对象为多个时,每个未出现目标对象对应一个未出现帧数。
步骤2035、若未出现帧数未达到目标帧数,则在当前帧图像中添加未出现目标对象和对应的目标ID。
目标对象未出现在当前帧图像时,存在两种情况,一种情况是在当前帧图像中该目标对象已经消失了(即移出了当前帧图像对应的拍摄区域);另一种情况是在当前帧图像中该目标对象因为某些原因而暂时消失在当前帧图像中或者未被识别出来,即未出现的目标对象实际上并未移出当前帧图像对应的拍摄区域。为了避免目标对象暂时消失而影响最终行为识别结果,一个实施例中,更新未出现目标对象的未出现帧数后,判断未出现帧数是否达到目标帧数,其中,目标帧数可根据实际情况设置,其为判断目标对象消失在视频数据中的最小帧数。若持续帧数未达到目标帧数,可以认为目标对象当前可能是暂时消失,因此,在当前帧图像中添加该未出现的目标对象和其对应的目标ID,即根据未出现的目标对象在前一帧图像中的目标位置,对当前帧图像中相同目标位置进行框选以作为该未出现的目标对象的检测框,并将未出现的目标对象在前一帧图像中的目标ID作为该未出现的目标对象在当前帧图像中的目标ID,以便于后续进一步进行检测。此时,后续处理过程中,会在当前帧图像中得到该未出现的目标对象的最终行为识别结果。
举例而言,参考图11,第i-1帧图像(前一帧图像)中目标ID为005的目标对象在第i帧图像(当前帧图像)中未出现,因此,根据目标ID为005的目标对象的目标位置在第i帧图像中相同目标位置处保留该目标对象,并将该目标对象的目标ID设置为005。
可理解,当前帧图像中保留未出现的目标对象的目标ID后,对于下一帧图像而言,还会确定其包含的目标对象的目标ID中是否包括未出现的目标对象的目标ID,若不包括,则未出现帧数加1,若包括,则认为重新检测到该目标对象,该目标对象并未消失,因此,未出现帧数清零。
步骤2036、若未出现帧数达到目标帧数,则放弃在当前帧图像中添加未出现目标对象和对应的目标ID。
示例性的,未出现帧数达到目标帧数时,可以认为未出现的目标对象已经消失在视频数据中,因此,在当前帧图像中不再添加该未出现的目标对象和目标ID。此时,后续处理过程中,不会在当前帧图像中得到该未出现的目标对象的最终行为识别结果。由此可知,当一个目标对象消失在视频数据时,其对应的最终行为识别结果仍会持续一段时间(目标帧数对应的持续时间),直到明确该目标对象已经消失后,不再输出该目标对象的最终行为识别结果。
在步骤203为目标对象分配目标ID后,执行后续步骤。
步骤204、根据目标对象的目标位置,确定目标对象是否位于许可区域。若位于许可区域,则执行步骤205,否则,放弃处理目标对象。
在一实施例中,在拍摄的视频数据中划分许可区域和禁止区域,其中,许可区域是指允许目标对象存在的区域,即当目标对象位于许可区域内时,对其进行行为识别。禁止区域是指不允许目标对象存在的区域,即当目标对象位于禁止区域内时,不对其进行行为识别。许可区域和禁止区域的数量以及位置可以根据实际情况设定。举例而言,教学录播场景下,目标对象设置为学生,由于学生和老师都是人类,当图像中出现老师时,行为检测模型还会得到老师的目标位置和行为识别结果,此时,需要过滤掉老师的目标位置和行为识别结果。由于老师和学生在教室中的移动区域不同,因此,根据老师和学生常用的位置,将学生落座的区域设置为许可区域,将非学生落座的走廊区域和老师的讲台设置为禁止区域,在上课场景下,老师一般位于讲台或者走廊区域,因此,通过许可区域和禁止区域来过滤教师,避免无效的目标对象对行为识别结果造成干扰。可选的,许可区域以及禁止区域可根据教室具体形状大小,任务设定,课桌摆放位置等作具体调整,在一实施例中,许可区域和禁止区域均为凸多边形。
示例性的,得到目标对象的目标位置后,根据目标位置确定目标对象是否位于许可区域中。一个实施例中,目标对象的目标位置为矩形区域位置,该矩形区域位置为标识目标对象的检测框(即矩形框)所在的位置。确定目标对象是否位于许可区域中可以是:判断目标对象的矩形区域位置是否位于许可区域内,若位于,则确定目标对象位于许可区域中,否则确定目标对象不在许可区域中,或者是,计算目标对象的矩形区域位置与许可区域之间的交集区域,并根据交集区域来判断目标对象是否位于许可区域中。一个实施例中,以根据交集区域来判断目标对象是否位于许可区域为例进行描述,此时,步骤204可包括步骤2041-步骤2044:
步骤2041、获取预先设定的许可区域的第一区域位置以及禁止区域的第二区域位置。
第一区域位置表示许可区域在图像中的区域位置,第二区域位置表示禁止区域在图像中的区域位置。可选的,可以采用人为的方式划分第一区域位置和第二区域位置,或者是利用机器学习的方式先对各帧图像进行识别,以得到许可区域的第一区域位置和禁止区域的第二区域位置。
步骤2042、若目标对象的目标位置中各角点位置均不在第二区域位置内,则确定目标位置与第一区域位置的交集区域位置。
角点位置为目标位置中角点所在位置,对于矩形区域位置而言,角点也可以理解为顶点。交集区域位置是指目标位置与第一区域位置之间相交区域所在的位置,交集位置区域根据第一区域位置和目标位置确定。
示例性的,若包含目标对象的矩形区域位置中各角点的角点位置均不在第二区域位置内,则说明目标对象不在禁止区域内,若至少一个角点的角点位置位于第二区域内,则说明目标对象在禁止区域内。在一实施例中,矩形区域位置对应的检测框在各帧图像中均为非倾斜的矩形框,因此,在判断目标对象是否位于禁止区域内时,可以是根据矩形区域位置中上面两个角点或者下面两个角点的角点位置判断两个角点中是否有一个角点位于第二区域位置中,若有一个角点位于第二区域位置中,则确定目标对象位于禁止区域内并放弃对禁止区域内的目标对象进行最终的行为识别。举例而言,图12为本申请一个实施例提供的一种禁止区域示意图。在图12中,包含目标对象的矩形区域位置Z1右下角点的角点位置位于禁止区域的第二区域位置Z2内,此时,确定目标对象位于禁止区域内,并对位于禁止区域内的目标对象进行过滤。
之后,对于不在禁止区域的目标对象而言,计算目标对象的矩形区域位置与第一区域位置之间的交集区域位置。
步骤2043、计算交集区域位置和第一区域位置的面积比值。
对于许可区域,首先计算交集区域位置和第一区域位置的面积比值,一个实施例中,将该面积比值记为伪IOU值,其中,伪IOU值的计算公式如下:
例如,图13为本申请一个实施例提供的一种许可区域示意图,在图13中,S1表示第一区域位置的面积,实线的矩形框为目标对象的矩形区域位置,S0表示矩形区域位置和第一区域位置之间的交集区域位置的面积,此时,面积比值,即伪IOU值的计算公式为:
步骤2044、若面积比值大于或等于比值阈值,则确定目标对象位于许可区域。
比值阈值表示目标对象位于许可区域时,面积比值的最小临界值。举例而言,对于给定的比值阈值μ,若面积比值大于或等于比值阈值μ,则确定目标对象位于许可区域内,以在后续的过程中只对位于许可区域内的目标对象的行为进行识别。否则,确定确定目标对象不在许可区域内。可理解,比值阈值的具体数值可根据实际需要进行设置。
示例性的,若目标对象位于许可区域,则执行步骤205。
步骤205、根据当前帧图像中目标对象的目标ID,获取目标对象在连续帧图像中的行为识别结果,并根据目标对象在连续帧图像中的行为识别结果,得到目标对象在当前帧图像中的最终行为识别结果,连续帧图像包含当前帧图像。
示例性的,若目标对象位于许可区域内,则说明需要确定目标对象最终的行为识别结果,因此,需要执行根据当前帧图像中目标对象的目标ID,获取目标对象在连续帧图像中的行为识别结果的操作。
在一个实施例中,根据当前帧图像中目标对象的目标ID,获取目标对象在连续帧图像中的行为识别结果包括步骤2051-步骤2052:
步骤2051、将当前帧图像中各目标对象的目标ID和行为识别结果写入至双端队列中,并移除双端队列中第一帧图像的各目标对象的目标ID和行为识别结果,双端列队包含的各帧图像为连续帧图像。
双端队列的队列两端都可以进行入队和出队操作,双端队列的元素的逻辑结构是线性结构,将双端队列的两端分别称为前端和后端,前端和后端都可以进行插入或者删除操作。例如,图14为本申请一个实施例提供的一种双端队列的结构示意图,参考图14,将当前帧图像中各目标对象的目标ID和行为识别结果作为一组数据写入至双端队列的后端中,并在双端队列的前端中将位于前端的第一帧图像的各目标对象的目标ID和行为识别结果删除,从而不断地对双端队列中的元素进行更新,使得双端队列中的元素包含最新帧图像中各目标对象的目标ID和行为识别结果。可理解,双端队列中元素的个数可根据实际需要进行设置,图14中双端队列中包含N(N为正整数)帧图像仅是示例性描述,实施例中不对双端队列中元素的个数进行限定。
由于各帧图像对应的目标ID和行为识别结果是依次写入双端队列中的,因此,双端队列所包含的各帧图像为连续帧图像,且包含当前帧图像。可选的,在双端队列的元素尚未填满之前,不会对双端列队包含的元素进行处理。
步骤2052、根据当前帧图像中目标对象的目标ID,获取双端队列中该目标对象的各行为识别结果。
示例性的,由于目标ID是区别目标对象的唯一标识,因此,根据当前帧图像中目标对象的目标ID,能够在双端队列(即连续帧图像)中识别出具有相同目标ID的目标对象,之后,在连续帧图像中获取该目标对象的行为识别结果。即在双端队列包含的各图像中查找相同目标ID对应的各行为识别结果,此时,查找到的行为识别结果为多个,且行为识别结果的数量小于或等于连续帧图像的数量。
查找相同目标ID对应的行为识别结果后,便可以根据行为识别结果得到相应目标对象在当前帧图像的最终行为识别结果,此时,根据目标对象在连续帧图像中的行为识别结果,得到目标对象在当前帧图像中的最终行为识别结果包括:若目标对象在当前帧图像中的行为识别结果出现在连续帧图像中的次数超过次数阈值,则将行为识别结果作为当前帧图像中目标对象的最终行为识别结果。
针对当前帧图像中一个目标对象而言,明确其在连续帧图像对应的各行为识别结果后,确定各行为识别结果中与当前帧图像的行为识别结果相同的行为识别结果,并统计相同行为识别结果的出现次数,若出现次数达到(大于或等于)预先设定的次数阈值,则说明目标对象在连续帧图像中多次被识别为当前帧图像对应的行为识别结果,因此,将当前帧图像的行为识别结果作为目标对象在当前帧图像的最终行为识别结果。若出现次数未达到预先设定的次数阈值,则说明目标对象在连续帧图像中被识别为当前帧图像对应的行为识别结果的次数较少,此时,确定当前帧图像中目标对象不存在对应的最终行为识别结果,或者是,确定当前帧图像中目标对象的最终行为识别结果是默认行为识别结果,按照上述方式对当前帧图像中每个目标对象处理后,便可以确定各目标对象对应的最终行为识别结果。可选的,对当前帧图像处理完成后,便可以将下一帧图像作为当前帧图像并继续进行上述处理,以在采集视频数据的过程中,实时确定各帧图像中目标对象的最终行为识别结果。
举例而言,对于当前帧图像中的某一个目标对象,其行为识别结果为“站立”,若在连续帧图像中该目标对象被识别为“站立”的次数(即“站立”的行为识别结果的出现次数)大于或等于次数阈值,则将“站立”作为当前帧图像中该目标对象的最终行为识别结果。需要说明的是,若只通过单帧图像来确定目标对象的最终行为识别结果,有可能出现判断错误的情况。而由于目标对象的每个动作在运动过程中是持续有一定的时间,即具有连续性,所以,可通过目标对象在连续帧图像中的行为识别结果来确定目标对象在当前帧图像中的最终行为识别结果,从而提高行为识别结构的准确率。
在一个实施例中,在确定了当前帧图像中目标对象的最终行为识别结果后,将当前帧图像中目标对象的最终行为识别结果、当前帧图像中目标对象的目标位置以及置信度等信息打包成数据包,并进行后续的处理。例如,得到数据包后,将发送到后台的其他应用程序中,后台的其他应用程序接收到数据包后,根据任务需求,进行相应的处理。如后台的其他应用程序接收到数据包后,若识别数据包中当前帧图像内的一个目标对象的最终行为识别结果为起立,则根据该目标对象的目标位置从当前帧图像中切分出包含有该目标对象的局部图像,并将该目标对象的局部图像发送到大屏幕中进行显示,或者是,根据目标对象的目标位置控制摄像头对该目标对象进行追踪拍摄,直到其他应用程序根据接收的数据包确定目标对象的最终行为识别结果为坐下后,控制摄像头恢复全局拍摄。
上述,通过获取摄像头拍摄的视频数据,利用行为检测模型识别视频数据中当前帧图像内的各目标对象的目标位置和行为识别结果,之后,基于各目标对象的目标位置为当前帧图像内的目标对象分配目标ID,同一目标对象在连续帧图像中具有相同的目标ID,根据当前帧图像中位于许可区域的目标对象的目标ID获取该目标对象在连续帧图像中的行为识别结果,进而根据连续帧图像中的行为识别结果得到目标对象在当前帧图像中的最终行为识别结果的技术手段,解决教学录播场景难以对学生行为进行准确识别的技术问题。其中,行为检测模型提取包含肢体关联特征和空间关联特征的第一特征,并利用第一特征识别出图像中的目标对象的目标位置以及行为检测结果,提升了对学生行为进行识别的精度,并且,行为检测模型的结构可以根据实际需求进行简化,可以保证行为检测模型的处理速度,满足前端实时部署的需求。结合前一帧图像中目标对象的目标ID为当前帧图像中的目标对象分配目标ID,可以实现快速分配目标ID,并且在当前帧图像中保留未出现且未出现次数未达到次数阈值的目标对象以及目标ID,可以避免漏识别目标对象时带来的影响。通过设置许可区域和禁止区域,可以过滤掉图像中的其他对象,以避免最终得到其他对象的最终行为识别结果。并且,获取目标对象在连续图像帧中的行为识别结果并根据连续帧图像中的行为识别结果确认目标对象的最终行为识别结果,避免只通过一张图像来确认目标对象的行为识别结果,提高了对目标对象进行行为识别的准确性,使得行为识别方法鲁棒性高、精度高,便于部署。
图15为本申请一个实施例提供的一种行为识别装置的结构示意图,请参考15,该装置包括:视频获取模块301、识别模块302、ID分配模块303、结果获取模块304。
视频获取模块301,用于获取摄像头拍摄的视频数据,视频数据包含多帧图像;识别模块302,用于利用行为检测模型识别当前帧图像内的各目标对象,以得到目标对象的目标位置和行为识别结果;ID分配模块303,用于基于目标位置为当前帧图像内的目标对象分配目标ID,连续帧图像中同一目标对象具有相同的目标ID;结果获取模块304,用于根据当前帧图像中目标对象的目标ID,获取目标对象在连续帧图像中的行为识别结果,并根据目标对象在连续帧图像中的行为识别结果,得到目标对象在当前帧图像中的最终行为识别结果,连续帧图像包含当前帧图像。
在上述实施例的基础上,行为检测模型包括行为注意力模块、局部空间卷积模块、特征识别模块和对象检测模块。相应的,识别模块302包括第一特征提取子模块,用于利用行为注意力模块提取当前帧图像中各目标对象的第一特征,第一特征包括肢体关联特征以及空间关联特征,肢体关联特征用于体现目标对象中各目标肢体间的关联特征,空间关联特征用于体现目标肢体与空间物体间的关联特征,空间物体为与目标对象存在空间关系的物体;第二特征学习子模块,用于利用局部空间卷积模块对第一特征进行深度学习,以输出多个通道数不同的第二特征;第二特征识别子模块,用于利用特征识别模块识别第二特征,并输出特征识别结果,每个第二特征对应一个特征识别结果;检测子模块,用于由对象检测模块根据特征识别结果检测出各目标对象的目标位置和行为识别结果,每个特征识别结果对应一个对象检测模块,每个对象检测模块所检测的目标对象的尺寸不同。
在上述实施例的基础上,行为注意力模块包括内容感知注意力子模块和至少一个卷积子模块,卷积子模块用于对输入的数据进行特征提取,内容感知注意力子模块用于基于提取的特征得到与肢体关联特征有关的特征以及与空间关联特征有关的特征;或,行为注意力模块包括空间注意力子模块和至少一个卷积子模块,卷积子模块用于对输入的数据进行特征提取,空间注意力子模块用于基于提取的特征得到与空间关联特征有关的特征以及与肢体关联特征有关的特征;或,所行为注意力模块包括容感知注意力子模块、空间注意力子模块和至少一个卷积子模块,卷积子模块用于对输入的数据进行特征提取,所内容感知注意力子模块用于基于提取的特征得到与肢体关联特征有关的特征,空间注意力子模块用于基于提取的特征得到与空间关联特征有关的特征。
在上述实施例的基础上,ID分配模块303包括:IOU值计算子模块,用于根据目标位置,计算当前帧图像中目标对象与前一帧图像中各目标对象间的IOU值,前一帧图像中每个目标对象具有一个目标ID;ID确定子模块,用于根据IOU值,确定当前帧图像中目标对象的目标ID。
在上述实施例的基础上,ID确定子模块包括IOU值挑选单元,用于在当前帧图像中目标对象对应的全部IOU值中,挑选最大IOU值;ID获取单元,用于若最大IOU值大于第一阈值,则获取最大IOU值在前一帧图像中对应目标对象的目标ID,将获取的目标ID作为当前帧图像中目标对象的目标ID。
在上述实施例的基础上,ID确定子模块还包括ID赋予单元,用于若最大IOU值小于第二阈值,则确定当前帧图像中的目标对象为首次出现的目标对象,并赋予目标对象新的目标ID,第二阈值小于或等于第一阈值。
在上述实施例的基础上,ID确定子模块包括目标对象查找单元,用于根据IOU值,确定当前帧图像中目标对象的目标ID之后,根据前一帧图像中各目标对象的目标ID和所当前帧图像中各目标对象的目标ID,查找未出现在当前帧图像中的目标对象;更新单元,用于更新未出现目标对象的未出现帧数;ID保留单元,用于若所述未出现帧数未达到目标帧数,则在所述当前帧图像中添加所述未出现目标对象和对应的目标ID;ID放弃单元,用于若未出现帧数达到目标帧数,则放弃在当前帧图像中添加未出现目标对象和对应的目标ID。
在上述实施例的基础上,还包括:区域判断模块,用于根据当前帧图像中目标对象的目标ID,获取目标对象在连续帧图像中的行为识别结果之前,根据目标对象的目标位置,确定目标对象是否位于许可区域内;动作执行模块,用于若位于许可区域内,则执行根据当前帧图像中目标对象的目标ID,获取目标对象在连续帧图像中的行为识别结果的操作。
在上述实施例的基础上,目标对象的目标位置为包含目标对象的矩形区域位置;区域判断模块还包括位置获取子模块,用于获取预先设定的许可区域的第一区域位置以及禁止区域的第二区域位置;交际区域位置确定子模块,用于若目标对象的目标位置中各角点位置均不在第二区域位置内,则确定目标位置与第一区域位置的交集区域位置;面积比值计算子模块,用于计算交集区域位置和第一区域位置的面积比值;许可区域确定子模块,用于若面积比值大于或等于比值阈值,则确定目标对象位于许可区域内。
在上述实施例的基础上,行为识别结果获取模块304包括双端队列写入子模块,用于将当前帧图像中各目标对象的目标ID和行为识别结果写入至双端队列中,并移除双端队列中第一帧图像的各目标对象的目标ID和行为识别结果,双端队列包含的各帧图像为连续帧图像;结果获取子模块,用于根据当前帧图像中目标对象的目标ID,获取双端队列中目标对象的各行为识别结果。
在上述实施例的基础上,行为识别结果获取模块304包括最终行为识别结果确定子模块,用于若目标对象在当前帧图像中的行为识别结果出现在连续帧图像中的次数超过次数阈值,则将行为识别结果作为当前帧图像中目标对象的最终行为识别结果。
上述提供的行为识别装置可用于执行上述任意实施例提供的行为识别方法,具备相应的功能和有益效果。
值得注意的是,上述行为识别装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。
图16为本申请一个实施例提供的一种行为识别设备的结构示意图,如图16所示,该行为识别设备包括处理器400、存储器401、输入装置402、输出装置403;行为识别设备中处理器400的数量可以是一个或多个,图16中以一个处理器400为例;行为识别设备中处理器400、存储器401、输入装置402、输出装置403可以通过总线或其他方式连接,图16中以通过总线连接为例。
存储器401作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请实施例中的行为识别方法所对应的程序指令/模块(例如,行为识别装置中的视频获取模块301、识别模块302、ID分配模块303、结果获取模块304)。处理器400通过运行存储在存储器401中的软件程序、指令以及模块,从而执行行为识别设备的各种功能应用以及数据处理,即实现上述的行为识别方法。
存储器401可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据行为识别设备的使用所创建的数据等。此外,存储器401可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器401可进一步包括相对于处理器400远程设置的存储器,这些远程存储器可以通过网络连接至行为识别设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置402可用于接收输入的数字或字符信息,以及产生与行为识别设备的用户设置以及功能控制有关的键信号输入。输出装置403可包括显示屏等显示设备。另外,行为识别设备还可以包括通信装置,以实现与外部设备(如摄像头)的通信。
上述所述的行为识别设备包含相应的行为识别装置,可以用于执行任意行为识别方法,具备相应的功能和有益效果。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和设备的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
此外,本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行本申请任意实施例中提供的行为识别方法中的相关操作,且具备相应的功能和有益效果。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。
因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述的具体实施例,对本申请的目的、技术方案和有益效果进行了进一步的详细说明,应当理解,以上所述仅为本申请的具体实施例而已,并不用于限定本申请的保护范围。特别指出,对于本领域技术人员来说,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (14)
1.一种行为识别方法,其特征在于,包括:
获取摄像头拍摄的视频数据,所述视频数据包含多帧图像;
利用行为检测模型识别当前帧图像内的各目标对象,以得到所述目标对象的目标位置和行为识别结果;
基于所述目标位置为所述当前帧图像内的所述目标对象分配目标ID,连续帧图像中同一所述目标对象具有相同的目标ID;
根据所述当前帧图像中所述目标对象的目标ID,获取所述目标对象在连续帧图像中的行为识别结果,并根据所述目标对象在所述连续帧图像中的行为识别结果,得到所述目标对象在所述当前帧图像中的最终行为识别结果,所述连续帧图像包含所述当前帧图像。
2.根据权利要求1所述的行为识别方法,其特征在于,所述行为检测模型包括行为注意力模块、局部空间卷积模块、特征识别模块和对象检测模块;
所述利用行为检测模型识别当前帧图像内的各目标对象,以得到所述目标对象的目标位置和行为识别结果包括:
利用所述行为注意力模块提取当前帧图像中各目标对象的第一特征,所述第一特征包括肢体关联特征以及空间关联特征,所述肢体关联特征用于体现所述目标对象中各目标肢体间的关联特征,所述空间关联特征用于体现所述目标肢体与空间物体间的关联特征,所述空间物体为与所述目标对象存在空间关系的物体;
利用所述局部空间卷积模块对所述第一特征进行深度学习,以输出多个通道数不同的第二特征;
利用所述特征识别模块识别所述第二特征,并输出特征识别结果,每个第二特征对应一个特征识别结果;
由所述对象检测模块根据所述特征识别结果检测出各所述目标对象的目标位置和行为识别结果,每个所述特征识别结果对应一个所述对象检测模块,每个所述对象检测模块所检测的目标对象的尺寸不同。
3.根据权利要求2所述的行为识别方法,其特征在于,所述行为注意力模块包括内容感知注意力子模块和至少一个卷积子模块,所述卷积子模块用于对输入的数据进行特征提取,所述内容感知注意力子模块用于基于提取的特征得到与所述肢体关联特征有关的特征以及与所述空间关联特征有关的特征;
或,所述行为注意力模块包括空间注意力子模块和至少一个卷积子模块,所述卷积子模块用于对输入的数据进行特征提取,所述空间注意力子模块用于基于提取的特征得到与所述空间关联特征有关的特征以及与所述肢体关联特征有关的特征;
或,所述行为注意力模块包括内容感知注意力子模块、空间注意力子模块和至少一个卷积子模块,所述卷积子模块用于对输入的数据进行特征提取,所述内容感知注意力子模块用于基于提取的特征得到与所述肢体关联特征有关的特征,所述空间注意力子模块用于基于提取的特征得到与所述空间关联特征有关的特征。
4.根据权利要求1所述的行为识别方法,其特征在于,所述基于所述目标位置为所述当前帧图像内的所述目标对象分配目标ID包括:
根据所述目标位置,计算所述当前帧图像中目标对象与前一帧图像中各目标对象间的IOU值,所述前一帧图像中每个目标对象具有一个目标ID;
根据所述IOU值,确定所述当前帧图像中所述目标对象的目标ID。
5.根据权利要求4所述的行为识别方法,其特征在于,所述根据所述IOU值,确定所述当前帧图像中所述目标对象的目标ID包括:
在所述当前帧图像中所述目标对象对应的全部所述IOU值中,挑选最大IOU值;
若所述最大IOU值大于第一阈值,则获取所述最大IOU值在所述前一帧图像中对应目标对象的目标ID,将获取的目标ID作为所述当前帧图像中所述目标对象的目标ID。
6.根据权利要求5所述的行为识别方法,其特征在于,还包括:
若所述最大IOU值小于第二阈值,则确定所述当前帧图像中的所述目标对象为首次出现的目标对象,并赋予所述目标对象新的目标ID,所述第二阈值小于或等于所述第一阈值。
7.根据权利要求4所述的行为识别方法,其特征在于,所述根据所述IOU值,确定所述当前帧图像中所述目标对象的目标ID之后,包括:
根据前一帧图像中各目标对象的目标ID和所述当前帧图像中各目标对象的目标ID,查找未出现在所述当前帧图像中的目标对象;
更新未出现目标对象的未出现帧数;
若所述未出现帧数未达到目标帧数,则在所述当前帧图像中添加所述未出现目标对象和对应的目标ID;
若所述未出现帧数达到所述目标帧数,则放弃在所述当前帧图像中添加所述未出现目标对象和对应的目标ID。
8.根据权利要求1所述的行为识别方法,其特征在于,所述根据所述当前帧图像中所述目标对象的目标ID,获取所述目标对象在连续帧图像中的行为识别结果之前,包括:
根据所述目标对象的目标位置,确定所述目标对象是否位于许可区域内;
若位于所述许可区域内,则执行根据所述当前帧图像中所述目标对象的目标ID,获取所述目标对象在连续帧图像中的行为识别结果的操作。
9.根据权利要求8所述的行为识别方法,其特征在于,所述目标对象的目标位置为标识所述目标对象的矩形区域位置;
所述根据所述目标对象的目标位置,确定所述目标对象是否位于许可区域内包括:
获取预先设定的许可区域的第一区域位置以及禁止区域的第二区域位置;
若所述目标对象的目标位置中各角点位置均不在所述第二区域位置内,则确定所述目标位置与所述第一区域位置的交集区域位置;
计算所述交集区域位置和所述第一区域位置的面积比值;
若所述面积比值大于或等于比值阈值,则确定所述目标对象位于所述许可区域内。
10.根据权利要求1所述的行为识别方法,其特征在于,所述根据所述当前帧图像中所述目标对象的目标ID,获取所述目标对象在连续帧图像中的行为识别结果包括:
将当前帧图像中各目标对象的目标ID和行为识别结果写入至双端队列中,并移除所述双端队列中第一帧图像的各目标对象的目标ID和行为识别结果,所述双端队列包含的各帧图像为连续帧图像;
根据所述当前帧图像中目标对象的目标ID,获取所述双端队列中所述目标对象的各行为识别结果。
11.根据权利要求1或10所述的行为识别方法,其特征在于,所述根据所述目标对象在所述连续帧图像中的行为识别结果,得到所述目标对象在所述当前帧图像中的最终行为识别结果包括:
若所述目标对象在当前帧图像中的行为识别结果出现在连续帧图像中的次数超过次数阈值,则将所述行为识别结果作为当前帧图像中所述目标对象的最终行为识别结果。
12.一种行为识别装置,其特征在于,所述装置包括:
视频获取模块,用于获取摄像头拍摄的视频数据,所述视频数据包含多帧图像;
识别模块,用于利用行为检测模型识别当前帧图像内的各目标对象,以得到所述目标对象的目标位置和行为识别结果;
ID分配模块,用于基于所述目标位置为所述当前帧图像内的所述目标对象分配目标ID,连续帧图像中同一所述目标对象具有相同的目标ID;
结果获取模块,用于根据所述当前帧图像中所述目标对象的目标ID,获取所述目标对象在连续帧图像中的行为识别结果,并根据所述目标对象在所述连续帧图像中的行为识别结果,得到所述目标对象在所述当前帧图像中的最终行为识别结果,所述连续帧图像包含所述当前帧图像。
13.一种行为识别设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-11中任一项所述的行为识别方法。
14.一种存储计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-11中任一项所述的行为识别方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111052226.2A CN115797964A (zh) | 2021-09-08 | 2021-09-08 | 一种行为识别方法、装置、设备和存储介质 |
PCT/CN2022/113206 WO2023035891A1 (zh) | 2021-09-08 | 2022-08-18 | 一种行为识别方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111052226.2A CN115797964A (zh) | 2021-09-08 | 2021-09-08 | 一种行为识别方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115797964A true CN115797964A (zh) | 2023-03-14 |
Family
ID=85473434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111052226.2A Pending CN115797964A (zh) | 2021-09-08 | 2021-09-08 | 一种行为识别方法、装置、设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115797964A (zh) |
WO (1) | WO2023035891A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116614666A (zh) * | 2023-07-17 | 2023-08-18 | 微网优联科技(成都)有限公司 | 一种基于ai摄像头特征提取系统及方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5928748B2 (ja) * | 2014-07-31 | 2016-06-01 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 同一種類の複数の認識対象物体が検索対象画像中に存在する場合に、それぞれの認識対象物体の位置および向きを精度良く求める手法 |
CN110378259A (zh) * | 2019-07-05 | 2019-10-25 | 桂林电子科技大学 | 一种面向监控视频的多目标行为识别方法及系统 |
CN112001944A (zh) * | 2020-07-09 | 2020-11-27 | 浙江大华技术股份有限公司 | 课堂教学质量评价数据的获取方法、计算机设备和介质 |
CN112651995B (zh) * | 2020-12-21 | 2024-05-03 | 江南大学 | 基于多功能聚合和跟踪模拟训练的在线多目标跟踪方法 |
CN113239915B (zh) * | 2021-07-13 | 2021-11-30 | 北京邮电大学 | 一种课堂行为的识别方法、装置、设备及存储介质 |
-
2021
- 2021-09-08 CN CN202111052226.2A patent/CN115797964A/zh active Pending
-
2022
- 2022-08-18 WO PCT/CN2022/113206 patent/WO2023035891A1/zh active Application Filing
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116614666A (zh) * | 2023-07-17 | 2023-08-18 | 微网优联科技(成都)有限公司 | 一种基于ai摄像头特征提取系统及方法 |
CN116614666B (zh) * | 2023-07-17 | 2023-10-20 | 微网优联科技(成都)有限公司 | 一种基于ai摄像头特征提取系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2023035891A1 (zh) | 2023-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11238668B2 (en) | Method for detecting objects and localizing a mobile computing device within an augmented reality experience | |
CN110532984B (zh) | 关键点检测方法、手势识别方法、装置及系统 | |
US20210350136A1 (en) | Method, apparatus, device, and storage medium for determining implantation location of recommendation information | |
CN110942006B (zh) | 运动姿态识别方法、运动姿态识别装置、终端设备及介质 | |
CN113963445B (zh) | 一种基于姿态估计的行人摔倒动作识别方法及设备 | |
CN110648397B (zh) | 场景地图生成方法、装置、存储介质及电子设备 | |
KR102106135B1 (ko) | 행동 인식 기반의 응용 서비스 제공 장치 및 그 방법 | |
CN110163211B (zh) | 一种图像识别方法、装置和存储介质 | |
CN107438173A (zh) | 视频处理装置、视频处理方法和存储介质 | |
CN111985385B (zh) | 一种行为检测方法、装置及设备 | |
CN101639354A (zh) | 对象跟踪的设备和方法 | |
WO2020250046A1 (en) | Method and system for monocular depth estimation of persons | |
WO2023098635A1 (zh) | 图像处理 | |
CN108875506B (zh) | 人脸形状点跟踪方法、装置和系统及存储介质 | |
CN115210773A (zh) | 利用对象实时检测模型实时检测对象的方法及优化方法 | |
WO2023035891A1 (zh) | 一种行为识别方法、装置、设备和存储介质 | |
CN117115917A (zh) | 基于多模态特征融合的教师行为识别方法、设备以及介质 | |
EP4322115A1 (en) | Finding the semantic region of interest in images | |
CN109799905B (zh) | 一种手部跟踪方法和广告机 | |
CN112396654A (zh) | 用于在图像跟踪过程中确定跟踪对象的位姿的方法及装置 | |
CN112655021A (zh) | 图像处理方法、装置、电子设备和存储介质 | |
JP2018120402A (ja) | イベント検出装置、イベント検出方法、プログラム | |
CN114333071A (zh) | 一种基于人体姿态估计的视频教学方法、系统和存储介质 | |
CN116862920A (zh) | 一种人像分割方法、装置、设备及介质 | |
US11610414B1 (en) | Temporal and geometric consistency in physical setting understanding |
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 |