图像聚类方法、电子设备及存储介质与流程

文档序号:28275555发布日期:2021-12-31 20:40阅读:90来源:国知局
图像聚类方法、电子设备及存储介质与流程

1.本技术涉及图像处理技术领域,特别是涉及一种图像聚类方法、电子设备及计算机可读存储介质。


背景技术:

2.通过图像聚类技术,能够对预设时间和预设区域内的卡口拍摄到的图像进行聚类,形成不同对象(可以是人,也可以是其他活体)的档案,以帮助公安部门更好的进行对象的管控。
3.现有的图像聚类方法为基于深度学习技术,提取图像中对象的特征,基于特征对图像进行聚类。由于不同情况下的拍摄条件的差异性,同一对象的图像有时相似度会略低于聚类阈值,造成档案中图像的遗漏,使得聚类结果的召回率低。但如果降低聚类阈值,则会影响聚类结果的准确率。因此如何在不影响聚类结果的准确率的同时提高聚类结果的召回率是亟待解决的问题。


技术实现要素:

4.本技术提供一种图像聚类方法、电子设备及计算机可读存储介质,能够在不影响聚类结果的准确率的同时提高聚类结果的召回率。
5.为解决上述技术问题,本技术采用的一个技术方案是:提供一种图像聚类方法。该方法包括:获取目标图像集,目标图像集包括预设时间内在预设区域的若干个卡口拍摄得到的多张目标图像;基于不同的卡口之间的关联程度,将若干个卡口划分为第一预设数量组,以及将预设时间划分为若干个时间域,其中,每组卡口属于一个空间域,一个时间域和一个空间域构成一个时空域;按照时空域对目标图像集进行划分,得到若干个目标图像子集;对每个目标图像子集进行聚类,以得到聚类结果。
6.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种电子设备,该电子设备包括处理器、与处理器连接的存储器,其中,存储器存储有程序指令;处理器用于执行存储器存储的程序指令以实现上述方法。
7.为解决上述技术问题,本技术采用的又一个技术方案是:提供一种计算机可读存储介质,存储有程序指令,该程序指令被执行时能够实现上述方法。
8.通过上述方式,本技术以时空域(目标图像子集)为单位进行聚类,相较于直接对目标图像集进行聚类,由于目标图像子集中存在相似对象的概率降低了,因此能够提高聚类结果的准确率。其次,由于本技术基于不同的卡口之间的关联程度,对若干个卡口进行空间域的划分,能够使得空间域和时间域组成的时空域对应的卡口之间关联程度更高,进一步提高聚类结果的准确率。在此基础上,通过降低聚类阈值,能够在不影响聚类结果的准确率的同时,提高聚类结果的召回率。
附图说明
9.图1是本技术提供的图像聚类方法一实施例的流程示意图;
10.图2是本技术时空域的示意图;
11.图3是本技术提供的图像聚类方法另一实施例的流程示意图;
12.图4是图3中s22的具体流程示意图;
13.图5是本技术提供的图像聚类方法又一实施例的流程示意图;
14.图6是本技术卡口图的示意图;
15.图7是本技术提供的图像聚类方法再一实施例的流程示意图;
16.图8是图7中s42的具体流程示意图;
17.图9是本技术电子设备一实施例的结构示意图;
18.图10是本技术计算机可读存储介质一实施例的结构示意图。
具体实施方式
19.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
20.本技术中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
21.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,在不冲突的情况下,本文所描述的实施例可以与其它实施例相结合。
22.图1是本技术提供的图像聚类方法一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图1所示的流程顺序为限。如图1所示,本实施例可以包括:
23.s11:获取目标图像集。
24.目标图像集包括预设时间内在预设区域的若干个卡口拍摄得到的多张目标图像。
25.目标图像带有对应的标识信息,标识信息用于标识目标图像的拍摄时间和拍摄卡口。目标图像可以理解为拍摄对象在拍摄时间经过拍摄卡口而得到的图像。目标图像集中的目标图像的拍摄时间均在预设时间内、拍摄卡口均属于预设区域。预设时间可以以小时、天、月等为单位。例如,预设时间为一天。
26.s12:基于不同的卡口之间的关联程度,将若干个卡口划分为第一预设数量组,以及将预设时间划分为若干个时间域。
27.其中,每组卡口属于一个空间域,一个时间域和一个空间域构成一个时空域。由此,可以得到第一预设数量个时空域。图2是时空域的示意图。如图2所示,横轴表示预设时间(t),横轴表示预设区域(r)。预设时间被划分为6个时间域,分别是t1、t2、t3、t4、t5和t6。预设区域被划分为5个空间域,分别是r1、r2、r3、r4和r5。由此,时间域和空间域一共可以构
成6*5=30个时空域,时空域可以记为(tx,ry)。
28.可以设定时间域阈值,按照时间域阈值将预设时间划分为若干个时间域。例如,预设时间为一天,时间域阈值为2小时,预设时间被划分为12个时间域,每个时间域的长度为2小时。
29.基于不同的卡口之间的关联程度对卡口进行划分,能够将关联程度高的卡口划分到同一组,使得同一空间域/时空域对应的卡口之间的关联程度高。两个卡口之间的关联程度变相反映同一对象依次经过该两个卡口的可能性,因此,后续以时空域为单位进行聚类,能够提高聚类结果的准确率。
30.s13:按照时空域对目标图像集进行划分,得到若干个目标图像子集。
31.一个时空域对应一个目标图像子集。
32.s14:对每个目标图像子集进行聚类,以得到聚类结果。
33.可以理解的是,相似的对象会对聚类产生干扰。相对预设时间、预设区域(目标图像集)而言,同一时空域(目标图像子集)出现相似对象的可能性较低,因此以时空域为单位进行聚类,能够提高聚类的准确率。
34.本步骤中,对于每个目标图像子集,可以将目标图像子集进行聚类,得到对应的若干个第二档案。本技术涉及的档案(第一档案/第二档案),可以是由对应目标图像组成,也可以是由目标图像中对象的特征组成。
35.作为一实现方式,可以直接将第二档案作为聚类结果。作为另一实现方式,考虑到目标可能经过同一空间域下不同的时间域,或者可能经过同一时间域下不同的空间域,因此为了提高聚类结果的召回率,可以对第二档案进行合档,将合档结果作为聚类结果。
36.通过本实施例的实施,本技术以时空域(目标图像子集)为单位进行聚类,相较于直接对目标图像集进行聚类,由于目标图像子集中存在相似对象的概率降低了,因此能够提高聚类结果的准确率。其次,由于本技术基于不同的卡口之间的关联程度,对若干个卡口进行空间域的划分,能够使得空间域和时间域组成的时空域对应的卡口之间关联程度更高,进一步提高聚类结果的准确率。在此基础上,通过降低聚类阈值,能够在不影响聚类结果的准确率的同时,提高聚类结果的召回率。
37.在上述s12之前,需要先确定不同的卡口之间的关联程度。具体可以如下:
38.图3是本技术提供的图像聚类方法另一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图3所示的流程顺序为限。如图3所示,本实施例可以包括:
39.s21:对目标图像集进行聚类,得到若干个第一档案。
40.每个第一档案对应一个对象。
41.s22:基于若干个第一档案的卡口轨迹,确定不同的卡口之间的关联程度。
42.对第一档案中各目标图像按照拍摄时间的先后顺序进行排列,排列后第一档案中各目标图像对应的拍摄时间可以构成时间序列(时间轨迹),排列后第一档案中各目标图像对应的拍摄卡口可以构成卡口序列(卡口轨迹)。
43.例如,第一档案中包括五张目标图像{f1,f2,f3,f4,f5},f1的拍摄时间为1:30、拍摄卡口为c
j
,f2的拍摄时间为1:15、拍摄卡口为c
j
,f3的拍摄时间为1:00、拍摄卡口为c
j
,f4的拍摄时间为1:20、拍摄卡口为c
k
,f5的拍摄时间为1:45、拍摄卡口为c
l
;排列后第一档案为
f={f3,f2,f4,f1,f5},时间轨迹为t={1:00,1:15,1:20,1:30,1:45},卡口轨迹为c={c
j
,c
j
,c
k
,c
j
,c
l
}。
44.作为一实现方式,可以直接基于第一档案的原始卡口轨迹,确定不同的卡口之间的关联程度。
45.可以理解的是,如果卡口轨迹中相邻的卡口相同,会影响计算效率,还可能会造成无效计算。因此作为另一实现方式,也可以先对第一档案的原始卡口轨迹进行去重处理,再基于去重处理后的卡口轨迹,确定不同的卡口之间的关联程度。其中,去重处理是针对卡口轨迹中相邻的重复卡口,且去重处理的顺序为拍摄时间的先后顺序。即,若两个相邻的卡口重复,则将其中拍摄时间在先的一个卡口去除。例如,对c={c
j
,c
j
,c
k
,c
j
,c
l
}去重处理后,得到c

={c
j
,c
k
,c
j
,c
l
}。
46.结合参阅图4,s22可以包括以下子步骤:
47.s221:确定每个卡口对的被经过次数。卡口对由卡口轨迹中相邻的两个卡口组成。
48.由相同的两个卡口组成的卡口对为相同的卡口对。例如,卡口轨迹c

={c
a
,c
b
,c
a
,c
c
}对应的卡口对为{c
a
,c
b
},{c
b
,c
a
},{c
a
,c
c
},{c
a
,c
b
}和{c
b
,c
a
}为相同的卡口对。
49.s222:基于每个卡口对的被经过次数,得到不同的卡口之间的关联程度。
50.卡口对的被经过次数,也可以被称为卡口对在所有第一档案的卡口轨迹中出现的次数。
51.可以以每个卡口为目标卡口,分别将目标卡口与每个其他卡口组成目标卡口对,将目标卡口对的被经过次数与目标卡口的总被经过次数之间的比值,作为目标卡口对的关联程度。其中,目标卡口的总被经过次数为包含目标卡口的所有卡口对的被经过次数之和。
52.目标卡口对的关联程度为目标卡口对包括的两个卡口之间的关联程度。包含目标卡口的卡口对为由目标卡口参与组成的卡口对。
53.例如,对第一档案的卡口轨迹统计得到各卡口对的被经过次数如下:卡口对{c1,c2}的被经过次数为x1,卡口对{c1,c3}的被经过次数为x2,卡口对{c1,c4}的被经过次数为x3,卡口对{c2,c3}的被经过次数为x4,卡口对{c2,c4}的被经过次数为x5,卡口对{c3,c4}的被经过次数为x6。记为{{c1,c2}:x1,{c1,c3}:x2,{c1,c4}:x3,{c2,c3}:x4,{c2,c4}:x5,{c3,c4}:x6}。
54.将c1作为目标卡口,包含目标卡口的卡口对为{c1,c2}、{c1,c3}和{c1,c4},目标卡口的总被经过次数为x1+x2+x3;将c2作为目标卡口,包含目标卡口的卡口对为{c1,c2}、{c2,c3}和{c2,c4},目标卡口的总被经过次数为x1+x4+x5……
;依此类推。
55.由此,可以得到不同的卡口之间的关联程度:
[0056][0057][0058][0059]
[0060][0061][0062][0063][0064][0065][0066][0067][0068]
其中,p(c
m
/c
n
)表示卡口c
m
和卡口c
n
之间的关联程度。
[0069]
图5是本技术提供的图像聚类方法又一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图5所示的流程顺序为限。本实施例是对s12的进一步扩展。如图5所示,本实施例可以包括:
[0070]
s31:依次将关联程度满足预设条件的两个卡口连接,以形成卡口图。
[0071]
在预设条件(阈值)的限制下,可以将关联程度大于关联程度阈值的两个卡口连接。
[0072]
或者,对于每个卡口,可以将其与各个其他卡口组成的卡口对按照关联程度从大到小的顺序排列。在预设条件(排名)的限制下,依次将排名靠前的指定数量个卡口对包含的两个卡口连接。例如,指定数量为2。对于卡口c1,当x1>x2>x3时,c1与其他卡口组成的卡口对,按照关联程度从大到小的顺序的排列后的结果为:{c1,c2}、{c1,c3}、{c1,c4},将c1和c2连接,以及将c1和c3连接。对于c1之外的卡口的处理过程类似,在此不赘述。指定数量可以基于想要划分得到的空间域数量(第一预设数量)确定,且指定数量与第一预设数量负相关。即,指定数量越多,卡口图中包括的卡口之间的连接关系越多,后续越难通过去除连接关系对卡口图切分。
[0073]
s32:将卡口图中的第二预设数量个卡口对的连接关系去除,以使去除后得到的第一预设数量个卡口子图对应的卡口数量的乘积最大。
[0074]
其中,每个卡口子图对应的卡口数量小于数量阈值,每个卡口子图对应一组卡口。
[0075]
将卡口对的连接关系去除,即为将卡口对包含的两个卡口之间的连接线段切分。经过切分/去除,卡口图可以被划分为若干个独立的部分(卡口子图)。其中,去除/切分的过程,可以理解为去除卡口图中关联程度低的卡口对的关联关系,使得不同卡口子图对应的
卡口之间的关联程度低、同一卡口子图对应的卡口之间的关联程度高的过程。
[0076]
第二预设数量可以由人为指定,也可以由系统计算得到。第二预设数量可以视为卡口图的最佳切分次数。最佳切分次数为能够“将卡口图切分为第一预设数量个卡口子图,且每个卡口子图对应的卡口数量小于数量阈值”的最小切分次数。即,若切分x条线段能够“将卡口图切分为第一预设数量个卡口子图,且每个卡口子图对应的卡口数量小于数量阈值”,而切分x

1条线不能“将卡口图切分为第一预设数量个卡口子图,且每个卡口子图对应的卡口数量小于数量阈值”,则x为最佳切分次数。
[0077]
卡口子图对应的卡口数量的乘积最大可以记为卡口子图对应的卡口数量的乘积最大可以记为其中s表示乘积,x表示卡口子图的数量,s
i
表示第i个卡口子图对应的卡口数量。卡口子图对应的卡口数量的乘积大小与卡口子图对应的不同的卡口之间的关联程度正相关。因此,在去除后得到的卡口子图对应的卡口数量的乘积最大的情况下,能够使得最佳切分次数下,得到的卡口子图对应的不同卡口之间的关联程度最高。本技术后文将卡口子图对应的卡口数量的乘积最大时切分的线段称为最佳切分线段。
[0078]
结合图6对本步骤进行举例说明。图6是卡口图的示意图,如图6所示,卡口图由卡口a~h及其之间的关联关系/连接关系/连接线段组成。最佳切分次数为1,即只需要对卡口图切分一次。当切分线段为ad时,得到1个卡口子图,该卡口子图对应8个卡口(a~h),乘积为8;当切分线段为dg时,得到2个卡口子图,其中一个卡口子图对应5个卡口(a~e),另一个卡口子图对应3个卡口(f~h),乘积为5*3=15;当切分线段为gf时,得到2个卡口子图,其中一个卡口子图对应7个卡口(a~e、g、h),另一个卡口子图对应1个卡口(f),乘积为7*1=7;
……
。从而,最佳切分线段为dg,并且通过切分dg可以将卡口a~h划分为2组,一组包括a~e,另一组包括f~h。
[0079]
上述s14中需要对第二档案进一步合档的情况下,可以对s14作如下扩展:
[0080]
图7是本技术提供的图像聚类方法再一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图7所示的流程顺序为限。本实施例是对s12的进一步扩展。如图7所示,本实施例可以包括:
[0081]
s41:对每个目标图像子集进行聚类,得到每个目标图像子集对应的若干个第二档案。
[0082]
每个第二档案对应一个对象。
[0083]
s42:对若干个第二档案进行合档,得到聚类结果。
[0084]
可以理解的是,同一对象在同一时间域下可能经过临界的空间域。从而可以对同一时间域下临界的空间域对应的第二档案进行合档。在此方式下,结合参阅图8,s42可以包括以下子步骤:
[0085]
s421:基于若干个第一档案的卡口轨迹,确定每个第一档案经过的空间域。
[0086]
s422:基于第一档案经过的空间域,得到临界卡口对集合。
[0087]
临界卡口对集合包括若干个临界卡口对,临界卡口对由第一档案经过的前一个空间域的最后一个卡口和后一个空间域的第一个卡口组成。
[0088]
前一个空间域和后一个空间域可以视为临界的空间域,故临界卡口对包含的两个卡口关联程度高。
[0089]
本步骤执行之后,可以直接进入s423。
[0090]
或者,为了提高合档结果的准确率,在进入s423之前,还可以对临界卡口对集合进行去噪处理。具体而言,可以确定每个临界卡口对的被经过次数;去除临界卡口对集合中被经过次数小于次数阈值的临界卡口对。例如,设定的次数阈值为p,则将被经过次数小于p的临界卡口对去除。
[0091]
s423:依次对同一时间域下经过临界卡口对的第二档案进行合档。
[0092]
对同一时间域下经过临界卡口对的第二档案进行合档,为对同一时间域下经过了临界卡口对包含的其中一个卡口的第二档案,与经过了临界卡口对包含的另一个卡口的第二档案进行合档。即,对于临界卡口对=(卡口1,卡口2),将同一时间域下经过卡口1的第二档案和经过卡口2的第二档案合档。
[0093]
例如,先将0~2点经过卡口1的第二档案和经过卡口2的第二档案进行合档,再将2~4点经过卡口1的第二档案和经过卡口2的第二档案进行合档,依次类推。
[0094]
由于临界卡口对包含的两个卡口关联程度高,因此对同一时间域下经过临界卡口对的第二档案进行合档,能够提高聚类结果的召回率。
[0095]
此外,本步骤中,还可以在s423之前,依次对同一空间域下的相邻时间域对应的第二档案进行合档。例如,对同一空间域下0~2点对应的第二档案和2~4点对应的第二档案进行合档,再将经合档的2~4点对应的第二档案与4~6点对应的档案进行合档,依次类推。从而,s423在同一空间域下的相邻时间域对应的第二档案的合档结果的基础上进行,能够通过将同一对象的活动时间范围扩大的方式,进一步提高聚类结果的召回率。
[0096]
此外,考虑到同一对象也有可能出现在不同时间域下不同的空间域,故,为了再进一步提高聚类结果的召回率,本步骤中还可以在s423之后,对不同的第二档案进行全量合档,即对经s423合档之后得到的所有档案进行合档。
[0097]
图9是本技术电子设备一实施例的结构示意图。如图9所示,该电子设备包括处理器51、与处理器51耦接的存储器52。
[0098]
其中,存储器52存储有用于实现上述任一实施例的方法的程序指令;处理器51用于执行存储器52存储的程序指令以实现上述方法实施例的步骤。其中,处理器51还可以称为cpu(central processing unit,中央处理单元)。处理器51可能是一种集成电路芯片,具有信号的处理能力。处理器51还可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0099]
图10是本技术计算机可读存储介质一实施例的结构示意图。如图10所示,本技术实施例的计算机可读存储介质60存储有程序指令61,该程序指令61被执行时实现本技术上述实施例提供的方法。其中,该程序指令61可以形成程序文件以软件产品的形式存储在上述计算机可读存储介质60中,以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式方法的全部或部分步骤。而前述的计算机可读存储介质60包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。
[0100]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,
仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0101]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。以上仅为本技术的实施方式,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1