多路图像处理方法、装置及电子设备
技术领域
本公开涉及图像处理技术领域,尤其涉及一种多路图像处理方法、装置及电子设备。
背景技术
现有技术中,为了有效识别在特定时间段内进入指定区域的人员信息,在该指定区域安装“无感考勤设备”。所说的无感考勤设备是指通过摄像头获取普通图像信息,依据对图像数据做神经网络计算得到画面中所有人员的关键部位坐标信息,然后根据前后帧图像中的关键部位信息画面中人员的跟踪信息,在跟踪过程中实时分析人脸质量信息,筛选符合要求的人脸图像用于提取人脸特征信息。根据进入指定区域人员的人脸特征,就可以有效识别途径该区域的人员信息。
针对发现同一画面中出现多张人脸的情况,通过常规的逐个评估人脸质量,再对有效人脸做特征提取的方法会严重制约整个***性能,甚至导致有效人员信息的遗漏;在实际使用中,单个摄像头图像传输给人脸识别***处理时出现计算资源的富裕,逐个分析方案造成计算资源的浪费和耗时严重的技术问题。
可见,现有多路人脸识别方案存在计算资源浪费、耗时严重的技术问题。
发明内容
有鉴于此,本公开实施例提供一种多路图像处理方法、装置及电子设备,至少部分解决现有技术中存在的问题。
第一方面,本公开实施例提供了一种多路图像处理方法,包括:
获取预设区域内的多路摄像头在同一时刻采集的初始单帧图像;
将全部所述初始单帧图像拼接成一帧第一整体图像;
对所述第一整体图像进行行人检测,以获得所述第一整体图像中的至少一个目标对象的行人信息,其中,所述行人信息至少包括所述目标对象的人体区域和人头区域在所述第一整体图像中的位置坐标信息;
根据所述目标对象的人体区域和人头区域在所述第一整体图像中的位置坐标信息,确定所述目标对象对应的目标单帧图像,其中,所述目标单帧图像为全部初始单帧图像中的任一个;
将所述目标对象及其行人信息映射回对应的目标单帧图像,以根据所述目标单帧图像及其连续帧图像对所述目标对象进行跟踪处理。
根据本公开实施例的一种具体实现方式,所述将全部所述初始单帧图像拼接成一帧第一整体图像的步骤,包括:
确定全部所述初始单帧图像的当前数量和每个所述初始单帧图像的原始尺寸;
根据预设拼接规则,以及全部所述初始单帧图像的当前数量和原始尺寸,确定拼接方案;
根据所确定的拼接方案,将全部所述初始单帧图像拼接成所述第一整体图像。
根据本公开实施例的一种具体实现方式,全部所述初始单帧图像的原始尺寸之间的差值均在预设范围内;
所述根据预设拼接规则,以及全部所述初始单帧图像的当前数量和原始尺寸,确定拼接方案的步骤,包括:
判断全部所述初始单帧图像的当前数量是否为完全平方数;
若所述初始单帧图像的当前数量为完全平方数,则确定拼接方案为,将所述当前数量的平方根作为行列数,将全部初始单帧图像均匀拼接成方阵;
若所述初始单帧图像的当前数量不为完全平方数,则确定拼接方案为,当前数量匹配最小填充数以构成目标完全平方数,并将所述目标完全平方数的平方根作为行列数,将全部初始单帧图像均匀拼接成方阵。
根据本公开实施例的一种具体实现方式,所述根据所述目标对象在所述第一整体图像中的位置坐标信息,确定所述目标对象对应的目标单帧图像的步骤之前,所述方法还包括:
生成每个所述初始单帧图像与所述第一整体图像中对应的像素区域的拼接映射关系;
所述根据所述目标对象在所述第一整体图像中的位置坐标信息,确定所述目标对象对应的目标单帧图像的步骤,包括:
根据所述目标对象在所述第一整体图像中的位置坐标信息,确定目标像素区域;
根据所述拼接映射关系,确定所述目标像素区域对应的初始单帧图像;
将所述目标像素区域对应的初始单帧图像作为所述目标对象对应的目标单帧图像。
根据本公开实施例的一种具体实现方式,所述将所述目标对象及其行人信息映射回对应的目标单帧图像,以根据所述目标单帧图像及其连续帧图像对所述目标对象进行跟踪处理的步骤,包括:
根据所述目标对象及其行人信息,在目标摄像头所采集的连续多帧图像中确定关联帧图像,其中,所述目标摄像头为采集所述目标单帧图像的摄像头,关联帧图像为包含所述目标对象对应像素特征的图像;
获得目标对象在每个关联帧图像中的人脸质量得分;
根据所述目标对象在全部关联帧图像中的人脸质量得分,对预设存储空间内所述目标对象的人脸图像进行存储或者迭代更新。
根据本公开实施例的一种具体实现方式,所述获得目标对象在每个关联帧图像中的人脸质量得分的步骤,包括:
确定所述关联帧图像包含的全部目标对象;
将全部所述目标对象的人脸像素区域拼接成第二整体图片;
将所述第二整体图像输入人脸质量识别模型,获得每个所述目标对象在所述关联帧图像中的人脸质量得分。
根据本公开实施例的一种具体实现方式,所述将全部所述初始单帧图像拼接成一帧第一整体图像的步骤,包括:
将全部所述初始单帧图像缩放处理,以缩放处理后的初始单帧图像拼接成所述第一整体图像;
所述将全部所述目标对象的人脸像素区域拼接成第二整体图片的步骤,包括:
筛选出人脸像素区域的尺寸满足预设范围的候选目标对象;
将全部候选目标对象对应的人脸像素区域做缩放调整和填充调整,以使得全部所述候选目标对象对应的人脸像素区域的尺寸相同;
将尺寸相同的候选目标对象的人脸像素区域拼接成所述第二整体图像。
根据本公开实施例的一种具体实现方式,所述根据所述目标对象在全部关联帧图像中的人脸质量得分,对预设存储空间内所述目标对象的人脸图像进行存储或者迭代更新的步骤,包括:
判断预设存储空间内是否已经存储有所述目标对象的参考人脸图像;
若所述预设存储空间内未存储有所述目标对象的参考人脸图像,则将所述关联帧图像作为所述目标对象的参考人脸图像存储到所述预设存储空间内;
若所述预设存储空间内已经存储有所述目标对象的参考人脸图像,则判断所述目标对象的参考人脸图像的人脸质量得分是否小于所述关联帧图像中的人脸质量得分;
若所述目标对象的参考人脸图像的人脸质量得分小于所述关联帧图像中的人脸质量得分,则将所述关联帧图像中所述目标对象的人脸图像作为所述目标对象的新的参考人脸图像存储到所述预设存储空间内。
第二方面,本公开实施例提供了一种多路图像处理装置,包括:
获取模块,用于获取预设区域内的多路摄像头在同一时刻采集的初始单帧图像;
拼接模块,用于将全部所述初始单帧图像拼接成一帧第一整体图像;
检测模块,用于对所述第一整体图像进行行人检测,以获得所述第一整体图像中的至少一个目标对象的行人信息,其中,所述行人信息至少包括所述目标对象的人体区域和人头区域在所述第一整体图像中的位置坐标信息;
确定模块,用于根据所述目标对象的人体区域和人头区域在所述第一整体图像中的位置坐标信息,确定所述目标对象对应的目标单帧图像,其中,所述目标单帧图像为全部初始单帧图像中的任一个;
映射模块,用于将所述目标对象及其行人信息映射回对应的目标单帧图像,以根据所述目标单帧图像及其连续帧图像对所述目标对象进行跟踪处理。
根据本公开实施例的一种具体实现方式,所述拼接模块用于:
确定全部所述初始单帧图像的当前数量和每个所述初始单帧图像的原始尺寸;
根据预设拼接规则,以及全部所述初始单帧图像的当前数量和原始尺寸,确定拼接方案;
根据所确定的拼接方案,将全部所述初始单帧图像拼接成所述第一整体图像。
根据本公开实施例的一种具体实现方式,全部所述初始单帧图像的原始尺寸之间的差值均在预设范围内;
所述拼接模块用于:
判断全部所述初始单帧图像的当前数量是否为完全平方数;
若所述初始单帧图像的当前数量为完全平方数,则确定拼接方案为,将所述当前数量的平方根作为行列数,将全部初始单帧图像均匀拼接成方阵;
若所述初始单帧图像的当前数量不为完全平方数,则确定拼接方案为,当前数量匹配最小填充数以构成目标完全平方数,并将所述目标完全平方数的平方根作为行列数,将全部初始单帧图像均匀拼接成方阵。
根据本公开实施例的一种具体实现方式,所述根据所述目标对象在所述第一整体图像中的位置坐标信息,确定所述目标对象对应的目标单帧图像的步骤之前,所述方法还包括:
生成每个所述初始单帧图像与所述第一整体图像中对应的像素区域的拼接映射关系;
所述确定模块用于,包括:
根据所述目标对象在所述第一整体图像中的位置坐标信息,确定目标像素区域;
根据所述拼接映射关系,确定所述目标像素区域对应的初始单帧图像;
将所述目标像素区域对应的初始单帧图像作为所述目标对象对应的目标单帧图像。
根据本公开实施例的一种具体实现方式,所述确定模块还用于:
根据所述目标对象及其行人信息,在目标摄像头所采集的连续多帧图像中确定关联帧图像,其中,所述目标摄像头为采集所述目标单帧图像的摄像头,关联帧图像为包含所述目标对象对应像素特征的图像;
所述装置还包括:
质量分析模块,用于获得目标对象在每个关联帧图像中的人脸质量得分;
迭代更新模块,用于根据所述目标对象在全部关联帧图像中的人脸质量得分,对预设存储空间内所述目标对象的人脸图像进行存储或者迭代更新。
根据本公开实施例的一种具体实现方式,所述质量分析模块用于:
确定所述关联帧图像包含的全部目标对象;
将全部所述目标对象的人脸像素区域拼接成第二整体图片;
将所述第二整体图像输入人脸质量识别模型,获得每个所述目标对象在所述关联帧图像中的人脸质量得分。
根据本公开实施例的一种具体实现方式,所述拼接模块用于:
将全部所述初始单帧图像缩放处理,以缩放处理后的初始单帧图像拼接成所述第一整体图像;
筛选出人脸像素区域的尺寸满足预设范围的候选目标对象;
将全部候选目标对象对应的人脸像素区域做缩放调整和填充调整,以使得全部所述候选目标对象对应的人脸像素区域的尺寸相同;
将尺寸相同的候选目标对象的人脸像素区域拼接成所述第二整体图像。
根据本公开实施例的一种具体实现方式,所述迭代更新模块用于:
判断预设存储空间内是否已经存储有所述目标对象的参考人脸图像;
若所述预设存储空间内未存储有所述目标对象的参考人脸图像,则将所述关联帧图像作为所述目标对象的参考人脸图像存储到所述预设存储空间内;
若所述预设存储空间内已经存储有所述目标对象的参考人脸图像,则判断所述目标对象的参考人脸图像的人脸质量得分是否小于所述关联帧图像中的人脸质量得分;
若所述目标对象的参考人脸图像的人脸质量得分小于所述关联帧图像中的人脸质量得分,则将所述关联帧图像中所述目标对象的人脸图像作为所述目标对象的新的参考人脸图像存储到所述预设存储空间内。
第三方面,本公开实施例还提供了一种电子设备,该电子设备包括:
至少一个处理器;以及,
与该至少一个处理器通信连接的存储器;其中,
该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行前述第一方面或第一方面的任一实现方式中的多路图像处理方法。
第四方面,本公开实施例还提供了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使该计算机执行前述第一方面或第一方面的任一实现方式中的多路图像处理方法。
第五方面,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行前述第一方面或第一方面的任一实现方式中的多路图像处理方法。
本公开实施例中的多路图像处理方法及装置,包括:获取预设区域内的多路摄像头在同一时刻采集的初始单帧图像;将全部所述初始单帧图像拼接成一帧第一整体图像;对所述第一整体图像进行行人检测,以获得所述第一整体图像中的至少一个目标对象的行人信息,其中,所述行人信息至少包括所述目标对象的人体区域和人头区域在所述第一整体图像中的位置坐标信息;根据所述所述目标对象的人体区域和人头区域在所述第一整体图像中的位置坐标信息,确定所述目标对象对应的目标单帧图像,其中,所述目标单帧图像为全部初始单帧图像中的任一个;将所述目标对象及其行人信息映射回对应的目标单帧图像,以根据所述目标单帧图像及其连续帧图像对所述目标对象进行跟踪处理。通过本公开的方案,将多路摄像头采集的多个初始单帧图像拼接成一帧第一整体图像,可以同时完成针对多个初始单帧图像中的目标对象进行识别和信息提取,这映射回原图像。这样,充分利用了计算资源,避免了资源浪费,提高了计算效率和识别准确性,减少人脸识别耗时。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本公开实施例提供的一种多路图像处理方法的流程示意图;
图2a至图2c为本公开实施例提供的多路图像处理方法所涉及的第一整体图像的示意图;
图3为本公开实施例提供的另一种多路图像处理方法的部分流程示意图;
图4a和图4b为本公开实施例提供的多路图像处理方法所涉及的第二整体图像的示意图;
图5为本公开实施例提供的一种多路图像处理装置的结构示意图;
图6为本公开实施例提供的电子设备的示意图。
具体实施方式
下面结合附图对本公开实施例进行详细描述。
以下通过特定的具体实例说明本公开的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本公开的其他优点与功效。显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。本公开还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本公开的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本公开的基本构想,图式中仅显示与本公开中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。
本公开实施例提供一种多路图像处理方法。本实施例提供的多路图像处理方法可以由一计算装置来执行,该计算装置可以实现为软件,或者实现为软件和硬件的组合,该计算装置可以集成设置在服务器、终端设备等中。
参见图1,为本公开实施例提供的一种多路图像处理方法的流程示意图。如图1所示,所述方法主要包括以下步骤:
S101,获取预设区域内的多路摄像头在同一时刻采集的初始单帧图像;
本实施提供的多路图像处理方法,应用于同一预设区域内安装多路摄像头进行图像采集和处理的场景。在预设区域的不同位置安装不同视角的多路摄像头,分别采集该预设区域内不同区域的图像,将采集到的多路图像利用本实施例提供的方案进行拼接后集中处理,以提高图像处理的效率。
首先,采集在某以时刻,预设区域内的多路摄像头采集的一帧原始图像,定义为初始单帧图像,初始单帧图像的数量与该预设区域内的摄像头的数量一致。
S102,将全部所述初始单帧图像拼接成一帧第一整体图像;
如图2a至图2c所示,将上述步骤得到的全部初始单帧图像(即图中所示的T1、T2、T3和T4)拼接成一个整体的图像,定义为第一整体图像。这样,多路初始单帧图像的像素特征会集中同时体现在这一帧第一整体图像中。
根据本公开实施例的一种具体实现方式,如图3所示,所述将全部所述初始单帧图像拼接成一帧第一整体图像的步骤,可以具体包括:
S301,确定全部所述初始单帧图像的当前数量和每个所述初始单帧图像的原始尺寸;
在进行图像拼接时,需要参考初始单帧图像的数量和每个初始单帧图像的原始尺寸,以便于后续确定拼接方案,使得拼接后的第一整体图像的尺寸满足后续处理要求的尺寸。
初始单帧图像的数量与图像来源的多路摄像头的数量相同,即一个摄像头提供一个初始单帧图像,而每个初始单帧图像的尺寸则与该摄像头的属性参数保持一致,所采集的全部的初始单帧图像的尺寸可能完全相同也可能不同,初始单帧图像的宽高尺寸也可能不一致,例如初始单帧图像的图像分辨率,即宽*高为1920*1080等,不作限定。
S302,根据预设拼接规则,以及全部所述初始单帧图像的当前数量和原始尺寸,确定拼接方案;
电子设备内预先存储有预设拼接规则,用于限定如何将多个初始单帧图像拼接成第一整体图像。考虑到第一整体图像在后续分析时需要输入卷积神经网络模型,由此限定拼接后的第一整体图像尽量呈正方形,即行列上排列的图像数量相等,且第一整体图像的行列总尺寸较为接近。
根据本公开实施例的一种具体实现方式,全部所述初始单帧图像的原始尺寸之间的差值均在预设范围内;
所述根据预设拼接规则,以及全部所述初始单帧图像的当前数量和原始尺寸,确定拼接方案的步骤,包括:
对全部初始单帧图像进行预处理,其中,所述预处理包括等比例缩放处理和/或填充处理;
根据公式
,以及,
,计算将全部初始单帧图像进行阵列排布时的行列数最优解,其中,width表示经过预处理
后的每个初始单帧图像的宽度,height表示经过预处理后的每个初始单帧图像的高度,
cols表示拼接成第一整体图像时的行方向摆放的初始单帧图像的数量,N表示全部初始单
帧图像的数量,rows表示拼接成阵列排布时的列方向摆放的初始单帧图像的数量;
按照全部所述初始单帧图像的标识信息,和阵列排布的行列数最优解,确定拼接方案。
本实施方式中,限定全部初始单帧图像的原始尺寸之间的差值再预设范围内,这样,在确认拼接方案时,只需要考虑初始单帧图像的数量,而再需要考虑不同初始单帧图像的原始尺寸对拼接方案的影响。
例如图2a所示,若有2个初始单帧图像,可以直接上下拼接,或者也可以在右侧添加两个填充图像。如图2b所示,若有3个初始单帧图像,3不是完全平方数,可以为3匹配最小填充数1以构成目标完全平方数4,将4的平方根2作为行列数。如图2c所示,若有4个初始单帧图像,4是完全平方数,可以直接将4的平方根2作为行列数,将4个初始单帧图像拼接成方阵。如图2b所示,针对需要匹配最小填充数的情况,添加最小填充数对应的填充图像(如图中所示的T0),以使得全部图像呈方阵排列。
S303,根据所确定的拼接方案,将全部所述初始单帧图像拼接成所述第一整体图像。
依据上述步骤确定拼接方案后,即可按照所确定的拼接方案,将全部初始单帧图像拼接成一帧初始单帧图像。
此外,考虑到单个初始单帧图像的尺寸较大,在进行拼接时,可以先将全部初始单帧图像进行一定程度的缩小处理,以保证拼接成的第一整体图像的尺寸不至于过大,便于后期的分析处理。
S103,对所述第一整体图像进行行人检测,以获得所述第一整体图像中的至少一个目标对象的行人信息,其中,所述行人信息至少包括所述目标对象的人体区域和人头区域在所述第一整体图像中的位置坐标信息;
每个初始单帧图像都可能存在多个人员特征,在将多个初始单帧图像拼接到一整个第一整体图像之后,每个初始单帧图像上的人员特征均会集中显示在该第一整体图像上。
在依据上述步骤将全部初始单帧图像拼接成一帧第一整体图像后,即可对第一整体图像进行行人检测,这样,可以同时获得该第一整体图像中的全部人员特征,将该第一整体图像上能够检测到的人员定义为目标对象。将所述第一整体图像输入人脸识别模型,可以有效利用人脸识别模型的计算资源同时提取该第一整体图像中的全部目标对象的行人信息,例如人脸特征信息和位置坐标信息,当然还可以包括躯体信息、姿态信息等,不作限定。
S104,根据所述目标对象的人体区域和人头区域在所述第一整体图像中的位置坐标信息,确定所述目标对象对应的目标单帧图像,其中,所述目标单帧图像为全部初始单帧图像中的任一个;
在第一整体图像中通过行人检测获得出全部目标对象后,即可开始再将目标对象映射回来源初始单帧图像的过程。在第一整体图像中检测到目标对象时,所获取的该目标对象的行人信息中包括该目标对象在该第一整体图像中的位置坐标信息,依据该位置坐标信息即可查找到对应该目标对象的来源初始单帧图像,定义为目标单帧图像。
可选的,根据本公开实施例的一种具体实现方式,所述根据所述目标对象在所述第一整体图像中的位置坐标信息,确定所述目标对象对应的目标单帧图像的步骤之前,所述方法还可以包括:
生成每个所述初始单帧图像与所述第一整体图像中对应的像素区域的拼接映射关系;
所述根据所述目标对象在所述第一整体图像中的位置坐标信息,确定所述目标对象对应的目标单帧图像的步骤,包括:
根据所述目标对象在所述第一整体图像中的位置坐标信息,确定目标像素区域;
根据所述拼接映射关系,确定所述目标像素区域对应的初始单帧图像;
将所述目标像素区域对应的初始单帧图像作为所述目标对象对应的目标单帧图像。
本实施方式中,根据将全部初始单帧图像拼接成第一整体图像时所生成的初始单帧图像与像素区域之间的拼接映射关系,查找每个目标对象所对应的目标单帧图像。
S105,将所述目标对象及其行人信息映射回对应的目标单帧图像,以根据所述目标单帧图像及其连续帧图像对所述目标对象进行跟踪处理。
在依据上述步骤识别全部目标对象,并确定每个目标对象对应的目标单帧图像之后,即可将每个目标对象及其行人信息映射回对应的目标单帧图像,然后结合该目标对象的行人信息,在该目标单帧图像及其连续帧图像对该目标对象进行跟踪处理。
上述本公开实施例提供的方案,通过将多路摄像头采集的多个初始单帧图像拼接成一帧第一整体图像,可以同时完成针对多个初始单帧图像中的目标对象进行识别和信息提取,这映射回原图像。这样,充分利用了计算资源,避免了资源浪费,提高了计算效率和识别准确性,减少行人检测耗时。
根据本公开实施例的一种具体实现方式,上述S105所述的,将所述目标对象及其行人信息映射回对应的目标单帧图像,以根据所述目标单帧图像及其连续帧图像对所述目标对象进行跟踪处理的步骤,可以包括:
根据所述目标对象及其行人信息,在目标摄像头所采集的连续多帧图像中确定关联帧图像,其中,所述目标摄像头为采集所述目标单帧图像的摄像头,关联帧图像为包含所述目标对象对应像素特征的图像;
获得目标对象在每个关联帧图像中的人脸质量得分;
根据所述目标对象在全部关联帧图像中的人脸质量得分,对预设存储空间内所述目标对象的人脸图像进行存储或者迭代更新。
电子设备内有预设存储空间,用于存储识别检测到的目标对象的人脸图像,预设存储空间内用于存储人脸质量得分较高的人脸图像,便于获得更详细的特征信息。采集到目标对象的摄像头定义为目标摄像头,目标摄像头连续采集多帧图像,包括目标单帧图像,在该连续多帧图像中,目标对象从出现到消失,将能够检测到目标对象对应像素特征的图像定义为关联帧图像。
确定目标对象在每个关联真图像中的人脸质量得分,人脸质量得分越高,表示对应人脸图像的特征详细程度越高,利用每个关联帧图像中的人脸质量得分,即可对预设存储空间内的人脸图像进行存储或者迭代更新。
进一步的,根据本公开实施例的一种具体实现方式,上述获得目标对象在每个关联帧图像中的人脸质量得分的步骤,包括:
确定所述关联帧图像包含的全部目标对象;
将全部所述目标对象的人脸像素区域拼接成第二整体图片;
将所述第二整体图像输入人脸质量识别模型,获得每个所述目标对象在所述关联帧图像中的人脸质量得分。
如图4a和图4b所示,每一关联帧中包括多个目标对象,提取每个目标对象对应的人脸像素区域,再将全部目标对象的人脸像素区域拼接成一帧第二整体图像,输入人脸质量识别模型以获得每个目标对象对应人脸像素区域的人脸质量得分。
这样,可以实现同时计算多个目标对象对应人脸像素区域的人脸质量得分,充分利用计算资源,避免了资源浪费,提高了人脸质量得分的计算效率和准确性。
进一步的,根据本公开实施例的一种具体实现方式,所述将全部所述初始单帧图像拼接成一帧第一整体图像的步骤,包括:
将全部所述初始单帧图像缩放处理,以缩放处理后的初始单帧图像拼接成所述第一整体图像;
所述将全部所述目标对象的人脸像素区域拼接成第二整体图片的步骤,包括:
筛选出人脸像素区域的尺寸满足预设范围的候选目标对象;
将全部候选目标对象对应的人脸像素区域做缩放调整和填充调整,以使得全部所述候选目标对象对应的人脸像素区域的尺寸相同;
将尺寸相同的候选目标对象的人脸像素区域拼接成所述第二整体图像。
本实施方式对第一整体图像和第二整体图像的拼接处理流程作了进一步限定。具体的,在将全部初始单帧图像拼接成第一整体图像之前,先将全部所述初始单帧图像做缩放处理,尤其是缩小处理,之后再将等比例缩小后的全部初始单帧图像拼接成第一整体图像。相应的,在映射回对应的目标单帧图像时,需要再做对应的等比例放大处理,以保证每个目标对象的原始像素特征不被改变。
在拼接第二整体图像时,需要对人脸像素区域做大小约束,即筛选出人脸像素区域的尺寸满足预设范围的候选目标对象,以滤除掉过小人脸、过大人脸或者是被遮挡的人脸。此后,还需要对筛选出的人脸做等比例缩放至指定大小,部分人脸像素区域还需要做边缘填充,以保证缩放调整和填充调整后的人脸像素区域的尺寸均相同,之后进行拼接即可得到如图4a和4b所示的效果。
此外,根据本公开实施例的另一种具体实现方式,所述根据所述目标对象在全部关联帧图像中的人脸质量得分,对预设存储空间内所述目标对象的人脸图像进行存储或者迭代更新的步骤,可以具体包括:
判断预设存储空间内是否已经存储有所述目标对象的参考人脸图像;
若所述预设存储空间内未存储有所述目标对象的参考人脸图像,则将所述关联帧图像作为所述目标对象的参考人脸图像存储到所述预设存储空间内;
若所述预设存储空间内已经存储有所述目标对象的参考人脸图像,则判断所述目标对象的参考人脸图像的人脸质量得分是否小于所述关联帧图像中的人脸质量得分;
若所述目标对象的参考人脸图像的人脸质量得分小于所述关联帧图像中的人脸质量得分,则将所述关联帧图像中所述目标对象的人脸图像作为所述目标对象的新的参考人脸图像存储到所述预设存储空间内。
本实施方式中,限定在进行迭代更新过程中,首先判断是否需要新增存储还是对已存储图像进行迭代更新。具体的,将存储空间内存储的目标对象的人脸图像定义为参考人脸图像。如果未预先存储有参考人脸图像,则需要将当前关联帧中目标对象对应的人脸图像存储到所述预设空间内。若预先已经存储有参考人脸图像,则判断当前的参考人脸图像的人脸质量得分是否小于关联帧中图像的人脸质量得分,若小于,则用人脸质量得分更高的关联帧中目标对象的人脸图像作为新的参考人脸图像进行存储。当然,考虑到参考人脸存储图像的数量可以有多个,此时可以对待添加的人脸图像与已缓存的参考人脸图像的人脸质量得分做比较与排序,人脸质量得分高的图像位于评分低的图像前面,在超出总的可缓存数量时,需要将超出的人脸质量得分低的人脸图像删除。
以hisi3559平台的人脸检测抓拍项目为例,单路的行人检测耗时约15ms,单个人脸质量判断耗时1.2ms;拼接画面需要3ms,拼接后的人脸检测耗时约17ms;将人脸拼接一起后得到人脸质量,16张人脸拼接后分析耗时约11ms。这样,当有最多4路视频,每路视频普遍13人左右个人,对比如下:
原始方案总耗时=4(路)*15(ms/路)+4(路)*13(人/路)*1.2(ms/人)=122.4ms;
本方案总耗时=3(ms/次)*1(次,其4路视频拼接到整图1)+17(ms/次)*1(次,整图1做行人检测)+3(ms/次)*4(次,每路视频都需要人脸拼接)+4(路)*11(ms/路)=76ms;
粗略估算,性能可以提升近40%。而且,采用该方法时,人数越多,较原始方案的性能提升越明显。
综上所述,本公开实施例提供的多路图像处理方法,将多路视频拼接成一幅画面,针对该拼接画面做目标区域的检测;将拼接画面中检测到的所有目标区域,按规则拼接在一起,统一输出这些目标的质量结果。充分利用了计算资源,避免了资源浪费,提高了计算效率和识别准确性,减少人脸识别耗时。
与上面的方法实施例相对应,参见图5,本公开实施例还提供了一种多路图像处理装置50,包括:
获取模块501,用于获取预设区域内的多路摄像头在同一时刻采集的初始单帧图像;
拼接模块502,用于将全部所述初始单帧图像拼接成一帧第一整体图像;
检测模块503,用于对所述第一整体图像进行行人检测,以获得所述第一整体图像中的至少一个目标对象的行人信息,其中,所述行人信息至少包括所述目标对象的人体区域和人头区域在所述第一整体图像中的位置坐标信息;
确定模块504,用于根据所述目标对象的人体区域和人头区域在所述第一整体图像中的位置坐标信息,确定所述目标对象对应的目标单帧图像,其中,所述目标单帧图像为全部初始单帧图像中的任一个;
映射模块505,用于将所述目标对象及其行人信息映射回对应的目标单帧图像,以根据所述目标单帧图像及其连续帧图像对所述目标对象进行跟踪处理。
根据本公开实施例的一种具体实现方式,所述拼接模块502用于:
确定全部所述初始单帧图像的当前数量和每个所述初始单帧图像的原始尺寸;
根据预设拼接规则,以及全部所述初始单帧图像的当前数量和原始尺寸,确定拼接方案;
根据所确定的拼接方案,将全部所述初始单帧图像拼接成所述第一整体图像。
根据本公开实施例的一种具体实现方式,全部所述初始单帧图像的原始尺寸之间的差值均在预设范围内;
所述拼接模块用于:
判断全部所述初始单帧图像的当前数量是否为完全平方数;
若所述初始单帧图像的当前数量为完全平方数,则确定拼接方案为,将所述当前数量的平方根作为行列数,将全部初始单帧图像均匀拼接成方阵;
若所述初始单帧图像的当前数量不为完全平方数,则确定拼接方案为,当前数量匹配最小填充数以构成目标完全平方数,并将所述目标完全平方数的平方根作为行列数,将全部初始单帧图像均匀拼接成方阵。
根据本公开实施例的一种具体实现方式,所述根据所述目标对象在所述第一整体图像中的位置坐标信息,确定所述目标对象对应的目标单帧图像的步骤之前,所述方法还包括:
生成每个所述初始单帧图像与所述第一整体图像中对应的像素区域的拼接映射关系;
所述确定模块用于:
根据所述目标对象在所述第一整体图像中的位置坐标信息,确定目标像素区域;
根据所述拼接映射关系,确定所述目标像素区域对应的初始单帧图像;
将所述目标像素区域对应的初始单帧图像作为所述目标对象对应的目标单帧图像。
根据本公开实施例的一种具体实现方式,所述确定模块还用于:
根据所述目标对象及其行人信息,在目标摄像头所采集的连续多帧图像中确定关联帧图像,其中,所述目标摄像头为采集所述目标单帧图像的摄像头,关联帧图像为包含所述目标对象对应像素特征的图像;
所述装置还包括:
质量分析模块,用于获得目标对象在每个关联帧图像中的人脸质量得分;
迭代更新模块,用于根据所述目标对象在全部关联帧图像中的人脸质量得分,对预设存储空间内所述目标对象的人脸图像进行存储或者迭代更新。
根据本公开实施例的一种具体实现方式,所述质量分析模块用于:
确定所述关联帧图像包含的全部目标对象;
将全部所述目标对象的人脸像素区域拼接成第二整体图片;
将所述第二整体图像输入人脸质量识别模型,获得每个所述目标对象在所述关联帧图像中的人脸质量得分。
根据本公开实施例的一种具体实现方式,所述拼接模块用于:
将全部所述初始单帧图像缩放处理,以缩放处理后的初始单帧图像拼接成所述第一整体图像;
筛选出人脸像素区域的尺寸满足预设范围的候选目标对象;
将全部候选目标对象对应的人脸像素区域做缩放调整和填充调整,以使得全部所述候选目标对象对应的人脸像素区域的尺寸相同;
将尺寸相同的候选目标对象的人脸像素区域拼接成所述第二整体图像。
根据本公开实施例的一种具体实现方式,所述迭代更新模块用于:
判断预设存储空间内是否已经存储有所述目标对象的参考人脸图像;
若所述预设存储空间内未存储有所述目标对象的参考人脸图像,则将所述关联帧图像作为所述目标对象的参考人脸图像存储到所述预设存储空间内;
若所述预设存储空间内已经存储有所述目标对象的参考人脸图像,则判断所述目标对象的参考人脸图像的人脸质量得分是否小于所述关联帧图像中的人脸质量得分;
若所述目标对象的参考人脸图像的人脸质量得分小于所述关联帧图像中的人脸质量得分,则将所述关联帧图像中所述目标对象的人脸图像作为所述目标对象的新的参考人脸图像存储到所述预设存储空间内。
图5所示装置可以对应的执行上述方法实施例中的内容,本实施例未详细描述的部分,参照上述方法实施例中记载的内容,在此不再赘述。
参见图6,本公开实施例还提供了一种电子设备60,该电子设备包括:
至少一个处理器;以及,
与该至少一个处理器通信连接的存储器;其中,
该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行前述方法实施例中的多路图像处理方法。
本公开实施例还提供了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使该计算机执行前述方法实施例中的多路图像处理方法。
本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行前述方法实施例中的的多路图像处理方法。
下面参考图6,其示出了适于用来实现本公开实施例的电子设备60的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,电子设备60可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备60操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、图像传感器、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备60与其他设备进行无线或有线通信以交换数据。虽然图中示出了具有各种装置的电子设备60,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备能够实现上述方法实施例提供的方案。
或者,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备能够实现上述方法实施例提供的方案。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。