CN108875500A - 行人再识别方法、装置、系统及存储介质 - Google Patents
行人再识别方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN108875500A CN108875500A CN201711079102.7A CN201711079102A CN108875500A CN 108875500 A CN108875500 A CN 108875500A CN 201711079102 A CN201711079102 A CN 201711079102A CN 108875500 A CN108875500 A CN 108875500A
- Authority
- CN
- China
- Prior art keywords
- recognized
- pedestrian
- images
- framework
- identified
- 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.)
- Granted
Links
Classifications
-
- 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
- G06V40/103—Static body considered as a whole, e.g. static pedestrian or occupant recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
Abstract
本发明的实施例提供了一种行人再识别方法、装置、系统及存储介质。该方法包括:获取多个待识别图像;对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在该待识别图像中的位置信息;以及根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。上述行人再识别技术方案不仅计算量小,而且能够有效减少图像中背景等因素对行人再识别的干扰,显著提高了识别准确率。
Description
技术领域
本发明涉及模式识别技术领域,更具体地涉及一种行人再识别方法、装置、系统及存储介质。
背景技术
行人再识别是指判断两个不同图像中的行人是否属于同一行人的技术。例如,判断来自某个摄像头的视频中的某个行人是否曾经出现在来自其他摄像头的视频中,即判断两个视频帧中的行人是否属于同一个行人。行人再识别技术可以应用在很多场景中,例如视频监控。具体地,在刑侦工作中,刑侦人员经常要浏览多个摄像头中的视频,查找某个特定的行人在哪些摄像头的拍摄区域中曾经出现过。在这样的应用场景中,可以采用行人再识别技术帮助刑侦人员进行针对特定行人的视频检索。
因图像拍摄的视角、光亮等因素的不同,以及图像中可能的行人遮挡等问题,行人再识别是非常困难的。现有技术直接比较来自不同图像中的行人。具体地,首先通过行人检测框把行人的位置表示出来,然后直接根据两个行人检测框中的图像部分确定行人再识别结果。这种行人再识别方法识别准确率较低。
发明内容
考虑到上述问题而提出了本发明。本发明提供了一种行人再识别方法、装置、系统及存储介质。
根据本发明一方面,提供了一种行人再识别方法,包括:
获取多个待识别图像;
对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在该待识别图像中的位置信息;以及
根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。
示例性地,所述根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的行人是否为同一人,包括:
对于所述多个待识别图像中的每一个,根据所述每个行人的骨架中的多个骨架特征点在该待识别图像中的位置信息,从该待识别图像中获取所述每个行人的多个待识别子图,其中每个待识别子图包括所述骨架中的多个骨架特征点中的一个骨架特征点;以及
根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人。
示例性地,所述根据所述骨架中的多个骨架特征点在该待识别图像中的位置信息,从该待识别图像中获取行人的多个待识别子图,包括:对于所述每个行人的骨架中的多个骨架特征点中的每一个,以该骨架特征点的位置为中心,从该待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图。
示例性地,所述以该骨架特征点的位置为中心,从该待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图,包括:
针对该待识别图像,以该骨架特征点的位置为中心确定所述预设尺寸的待识别子图的区域;
对于该待识别子图的区域完全落在该待识别图像中的情况,确定该待识别图像在该区域内的部分图像为所述预设尺寸的待识别子图;以及
对于该待识别子图的区域不完全落在该待识别图像中的情况,根据该待识别图像在该区域内的部分图像对所述区域进行扩充,以形成所述预设尺寸的待识别子图。
示例性地,所述根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人,包括:
根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,分别确定所述多个行人的特征向量;
计算所述多个行人的特征向量之间的相似度;以及
根据所述相似度确定所述多个待识别图像中的所述多个行人是否为同一人。
示例性地,所述根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,分别确定所述多个行人的特征向量包括:
对于所述多个待识别图像中的每一个中的每个行人,
确定该行人的每个待识别子图的特征值;以及
根据该行人的骨架信息和每个待识别子图的特征值确定该行人的特征向量。
示例性地,所述根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人包括:根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,利用神经网络确定所述多个待识别图像中的所述多个行人是否为同一人。
示例性地,所述方法还包括:
利用分别来自锚图像、正例图像和负例图像的待识别子图作为训练样本训练初始神经网络,以得到所述神经网络,其中所述锚图像和所述正例图像中包括同一行人,所述负例图像中包括与所述锚图像中的行人不同的行人。
示例性地,所述对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,包括:
对于所述多个待识别图像中的每一个,
对该待识别图像进行行人检测,以获得至少一个行人检测框,其中所述至少一个行人检测框中的每个行人检测框用于指示该待识别图像中包括一个行人的区域;以及
对该待识别图像基于所述每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息。
示例性地,所述对该待识别图像进行行人检测,以获得至少一个行人检测框,包括:
提取该待识别图像的人体特征的热度图;
分别使用不同滑动窗口截取所述热度图中的一部分,以作为待检测部分;以及
针对所述待检测部分进行行人检测,并且根据行人检测结果确定所述至少一个行人检测框。
示例性地,所述对该待识别图像基于所述每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息,包括:
提取该待识别图像的骨架特征图;
对所述骨架特征图进行骨架分析,以获得所述骨架特征图中的骨架信息;
基于所述每个行人检测框,确定所述每个行人检测框对应的骨架信息。
根据本发明另一方面,还提供了一种行人再识别装置,包括:
图像获取模块,用于获取多个待识别图像;
骨架提取模块,用于对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在该待识别图像中的位置信息;以及
识别模块,用于根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。
根据本发明又一方面,还提供了一种行人再识别系统,包括处理器和存储器,其中,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器运行时用于执行以下步骤:
获取多个待识别图像;
对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在该待识别图像中的位置信息;以及
根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。
根据本发明再一方面,还提供了一种存储介质,在所述存储介质上存储了程序指令,所述程序指令在运行时用于执行以下步骤:
获取多个待识别图像;
对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在该待识别图像中的位置信息;以及
根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。
根据本发明实施例的行人再识别方法、装置、系统及存储介质,首先提取行人的骨架信息,然后根据骨架信息进行行人再识别。上述方案中,有效减少了图像中背景等因素对行人再识别的干扰,不仅减小了计算量,而且显著提高了识别准确率。
附图说明
通过结合附图对本发明实施例进行更详细的描述,本发明的上述以及其它目的、特征和优势将变得更加明显。附图用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1示出了用于实现根据本发明实施例的行人再识别方法和装置的示例电子设备的示意性框图;
图2示出根据本发明一个实施例的行人再识别方法的示意性流程图;
图3示出了根据本发明一个实施例的在待识别图像中提取行人的骨架信息步骤的示意性流程图;
图4示出了根据本发明一个实施例的行人检测步骤的示意性流程图;
图5示出了根据本发明一个实施例的骨架分析步骤的示意性流程图;
图6示出了根据本发明一个实施例的根据待识别图像和从其中提取的骨架信息确定不同待识别图像中的多个行人是否为同一人的步骤的示意性流程图;
图7示出了根据本发明一个实施例的待识别图像;
图8示出了根据本发明一个实施例的根据待识别图像中的待识别子图和从其中提取的骨架信息确定不同待识别图像中的多个行人是否为同一人的步骤的示意性流程图;
图9示出了根据本发明一个实施例的行人再识别装置的示意性框图;以及
图10示出了根据本发明一个实施例的行人再识别系统的示意性框图。
具体实施方式
为了使得本发明的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本发明的示例实施例。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是本发明的全部实施例,应理解,本发明不受这里描述的示例实施例的限制。基于本发明中描述的本发明实施例,本领域技术人员在没有付出创造性劳动的情况下所得到的所有其它实施例都应落入本发明的保护范围之内。
如背景技术中所述,现有技术中直接根据行人检测所获得的两个行人检测框中的图像部分进行行人再识别。由于行人检测框中不可避免地含有大量行人周围的环境信息,该方法把周围无关的环境信息也进行了无谓的计算,这不仅浪费了计算时间并提高了计算量,还极大降低了识别的准确率。一方面,仅针对待识别图像中的行人部分而非整个行人检测框进行行人再识别,避免了无用背景的干扰,可以显著提高识别的准确率。另一方面,骨架是人体的基础,基于图像中行人的骨架信息进行行人再识别,增强了对人体结构的整体理解,更可保证识别的准确率。基于上述分析,本发明提供了一种新的行人再识别方法。
首先,参照图1来描述用于实现根据本发明实施例的行人再识别方法和装置的示例电子设备100。
如图1所示,电子设备100包括一个或多个处理器102、一个或多个存储装置104、输入装置106、输出装置108和图像采集装置110,这些组件通过总线系统112和/或其它形式的连接机构(未示出)互连。应当注意,图1所示的电子设备100的组件和结构只是示例性的,而非限制性的,根据需要,所述电子设备也可以具有其他组件和结构。
所述处理器102可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制所述电子设备100中的其它组件以执行期望的功能。
所述存储装置104可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器102可以运行所述程序指令,以实现下文所述的本发明实施例中(由处理器实现)的客户端功能以及/或者其它期望的功能。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据,例如所述应用程序使用和/或产生的各种数据等。
所述输入装置106可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。
所述输出装置108可以向外部(例如用户)输出各种信息(例如图像和/或声音),并且可以包括显示器、扬声器等中的一个或多个。
所述图像采集装置110可以采集图像(包括视频帧),并且将所采集的图像存储在所述存储装置104中以供其它组件使用。图像采集装置110可以是监控摄像头。应当理解,图像采集装置110仅是示例,电子设备100可以不包括图像采集装置110。在这种情况下,可以利用其他图像采集装置采集待识别图像,并将采集的图像发送给电子设备100。
示例性地,用于实现根据本发明实施例的行人再识别方法和装置的示例电子设备可以在诸如个人计算机或远程服务器等的设备上实现。
下面,将参考图2描述根据本发明实施例的行人再识别方法。图2示出根据本发明一个实施例的行人再识别方法200的示意性流程图。如图2所示,该方法200包括以下步骤。
步骤S210,获取多个待识别图像。
待识别图像可以是任何合适的、需要进行行人再识别的图像,例如针对目标区域采集到的视频帧。待识别图像可以是摄像头等图像采集装置采集到的原始图像,也可以是对原始图像进行预处理之后获得的图像。该预处理操作可以包括滤波等去噪操作。
该多个待识别图像可以来自同一个图像采集装置,也可以来自不同的图像采集装置。
待识别图像可以由客户端设备(诸如包括摄像头的图像采集设备)发送到电子设备100以由电子设备100的处理器102进行处理,也可以由电子设备100包括的图像采集装置110(例如摄像头)采集并传送到处理器102进行处理。
步骤S220,对于步骤S210所获取的多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息。每个待识别图像中可以包括一个或多个行人。行人的骨架信息包括骨架中的多个骨架特征点在待识别图像中的位置信息,其可以作为确定行人在待识别图像中的位置的依据。
可选地,骨架特征点包括以下人体关键点中的一个或多个:头部中心、左肩和右肩、左臂肘关节和右臂肘关节、胸部或背部、臀部、左腿膝关节、左腿踝关节、右腿膝关节和右腿踝关节等。上述人体关键点可以从某个角度勾画行人。骨架特征点在行人身上所处的位置和数目可以根据需要设定,本申请对此不进行限制。
步骤S230,根据多个待识别图像本身和步骤S220中从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。如前所述,每个待识别图像可以包括至少一个行人。在此步骤中,确定其是否为同一人的多个行人来自不同的待识别图像。在一个示例中,待识别图像A中包括行人a,而待识别图像B中包括行人b。这里,确定行人a和行人b是否是同一人。
根据骨架信息中骨架特征点在待识别图像中的位置信息,可以大体确定行人在待识别图像中的位置。例如,可以将待识别图像中距离骨架特征点小于特定阈值的像素认为是属于行人的像素。针对不同待识别图像中的行人,可以根据这些属于行人的像素来进行行人再识别。
可选地,上述步骤S230可以利用神经网络来进行行人再识别,例如卷积神经网络(CNN)。将骨架中的骨架特征点在待识别图像中的位置信息和待识别图像输入到神经网络中,以进行行人再识别。神经网络是一种能够自主学习的网络,采用神经网络可以准确、高效地进行行人再识别。
上述的行人再识别方法排除了待识别图像中环境因素对行人的影响,保证最终用于进行行人再识别的都是较有效信息,极大提高了识别准确率。另外,能够有效处理待识别图像中行人被遮挡的问题。当在一个或多个待识别图像中,某个行人的一部分被遮挡,那么现有的方法无法进行准确的行人再识别。而在上述方法中,如果有任何一个图像中存在行人被遮挡的现象,那么在骨架提取时就可以检测到,进行识别时可以只针对未被遮挡的关键点作比较,进一步提高了方法的鲁棒性。最后,提高了整个方法的计算效率。在实际应用中,最耗时的操作是提取出特征后计算距离的操作,因为这个操作需要将两个待识别图像的所有行人检测框进行两两配对比较,复杂度是平方级的。而上述方法中,利用骨架特征点大大减小了特征维数,加速了比较过程,而且能够抵消骨架提取多耗费的时间,整体上提高了方法的效率。
示例性地,根据本发明实施例的行人再识别方法可以在具有存储器和处理器的设备、装置或者系统中实现。根据本发明实施例的行人再识别方法可以部署在图像采集端处。例如,其可以部署在公路上的图像采集端,用以实时分析公路上行人是否为特定的某人。替代地,根据本发明实施例的行人再识别方法还可以分布地部署在服务器端(或云端)和客户端处。例如,可以在客户端采集图像,客户端将采集到的图像传送给服务器端(或云端),由服务器端(或云端)进行行人再识别。
图3示出了根据本发明一个实施例的步骤S220提取骨架信息的示意性流程图。如图3所示,步骤S220可以包括针对多个待识别图像中的每一个执行以下步骤S221和步骤S222。
步骤S221,对待识别图像进行行人检测,以获得至少一个行人检测框。该至少一个行人检测框中的每个行人检测框用于指示待识别图像中包括一个行人的区域。
利用行人检测模型检测待识别图像中的行人,可以获得若干行人检测框,由此确定待识别图像中行人的位置。行人检测框可以是矩形框。矩形框可以用其宽度、高度和中心坐标来表示。行人检测模型可以是任意的行人检测神经网络,例如快速区域卷积神经网络(Faster RCNN)等。
图4示出了根据本发明一个实施例的步骤S221行人检测的示意性流程图。如图4所示步骤S221包括以下步骤。
步骤S221a,提取待识别图像的人体特征的热度图。
该步骤可以由CNN来实现。CNN是一种前馈神经网络,由若干卷积单元组成。每个卷积单元可以响应一部分覆盖范围内的周围单元。每个卷积单元的参数都是通过反向传播算法优化得到的。通过CNN对待识别图像进行卷积运算,生成该热度图。CNN的不同层次能够提取不同的特征,由此,总层数不同的CNN能够提取不同的特征。CNN的第一卷积层可提取一些低级的特征,如图像的边缘、线条和角等特征。后面的卷积层可根据前面的卷积层所提取的低级的特征迭代提取更高级、更复杂的特征,例如上述人体特征。
对于一个待识别图像,由CNN所提取的热度图可以用张量表示,在本文中称其为特征张量。特征张量可以是三阶的。三阶特征张量的三个阶可以分别代表图像的横向,纵向和频道(channel)。横向是图像的宽度的方向。纵向是图像的高度的方向。三阶特征张量X可以包括多个元素。示例性地,三阶特征张量X中的每个元素可以表示为X[i][j][k],其中,i、j、k分别表示不同阶,i=0,1,2,..,h-1;j=0,1,...,w-1;k=0,1,...,c-1;h、w、c分别表示特征张量X的高度,宽度和频道个数。特征张量中的、横坐标为i且纵坐标为j的所有频道的数值组成的一个c维向量。可选地,该c个元素可以构成一个超像素点(superpixel),可以用X[i][j]表示。可以理解,每一个超像素点可以分别对应待识别图像中的一个相应像素或区域。
步骤S221b,分别使用不同滑动窗口(sliding-window)截取所述热度图中的一部分,以作为待检测部分。通过滑动窗口方法可以从热度图上提取多种不同尺度的区域,例如不同长度或宽度的区域。如前所述热度图上的每一个超像素点分别对应待识别图像中的一个相应像素或区域,所以这里滑动窗口所提取的每个区域也唯一地对应于待识别图像中的一个相应区域。
步骤S221c,针对上述待检测部分进行行人检测,并且根据行人检测结果确定至少一个行人检测框。对于前述通过滑动窗口所截取的待检测部分,执行行人检测操作。如前所述,对于待检测部分,在待识别图像中存在一个与之一一对应的区域。该行人检测操作可以判断待识别图像中该对应的区域是否存在行人。每个待检测部分可以获得一个得分,代表该待检测部分所对应的区域中存在行人的概率。然后,可以根据该得分对所有待检测部分进行筛选,选取其中得分最高的一部分,例如得分最高的5个待检测部分。确定所选取的待检测部分在待识别图像中对应的区域作为行人检测框所在区域。可以输出该区域的中心坐标、宽度和高度,以作为表示行人检测框的数据。
如前所述,上述行人检测步骤S221可以用神经网络(如CNN)实现,速度快、准确度高。
可选地,在上述行人再识别方法中还可以包括利用训练图像训练前述神经网络。例如首先将神经网络的参数随机初始化或利用已经训练好的其他网络进行初始化,例如VGG模型或残差网络(ResNet)。其中,对于利用已经训练好的其他网络进行初始化的情况,可以选取其中的一部分作为根据本申请的实施例用于行人检测的神经网络的一部分。然后利用经标注的训练图像,对神经网络进行训练。训练图像是其中已经标注了的行人检测框的图像。该训练过程中,可以固定神经网络中的一部分参数,使其不参与训练。神经网络中的每个卷积单元的参数可以在训练过程中通过反向传播算法优化得到。
步骤S222,对待识别图像基于每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息。例如,对于每个行人检测框,可以截取该行人检测框标记的部分图像,并对该部分图像进行骨架分析,以获取该行人检测框中行人的骨架信息。可以利用骨架分析模型针对待识别图像进行骨架分析,以获取行人检测框中的行人的骨架信息。骨架信息可以包括骨架特征点在待识别图像中的位置坐标。骨架分析模型可以是CNN等。
图5示出了根据本发明一个实施例的步骤S222的骨架分析的示意性流程图。如图5所示步骤S222包括以下步骤。
步骤S222a,提取待识别图像的骨架特征图。该步骤与前述提取待识别图像的人体特征的热度图类似,也可以利用CNN实现,为了简洁,在此不再赘述。
步骤S222b,对所述骨架特征图进行骨架分析,以获得所述骨架特征图中的骨架信息。通过对骨架特征图进行骨架分析,可以获得其中的多个表示骨架特征点的像素点。将待识别图像中的、与之对应的像素点作为骨架特征点。骨架分析所获得的每个像素点可以获得一个得分,代表该像素点是骨架特征点的概率。可以根据像素点的得分来判断该像素点是否被遮挡,若低分低于设定阈值,则认为该像素点被遮挡。骨架分析操作可以输出这些骨架特征点在待识别图像中的位置坐标。
步骤S222c,基于步骤S221所获得的每个行人检测框,确定与该行人检测框对应的骨架信息。前一步骤S222b已经获得了所有骨架特征点在待识别图像中的位置信息。在此步骤中,利用行人检测框,将所获得的骨架特征点划分为属于不同行人的骨架特征点。
上述骨架分析步骤S222也可以用神经网络实现,例如CNN。利用神经网络进行骨架分析速度快、准确度高。可选地,在行人再识别方法中还可以包括利用训练图像训练该神经网络。训练图像可以是其中已经标注了骨架特征点的图像。根据本申请的一个实施例,首先提取训练图像的骨架特征图。以骨架特征图中与训练图像中的骨架特征点对应的像素为中心,在骨架特征图上构造骨架特征点的高斯分布,并要求骨架特征图能够拟合这些高斯分布,依此计算损失函数。根据损失函数确定该神经网络的参数。
上述示例中,首先进行行人检测,然后对行人检测所获得的行人检测框进行骨架分析。这不仅减少了计算量,提高了计算速度,还保证了骨架分析的准确性,进而保证了行人再识别的准确率。
本领域普通技术人员可以理解,上面所给出的关于行人检测和骨架分析的具体实现的描述仅为示例,而非限制。例如,步骤S221a和步骤S222a均可以省略,直接针对待识别图像进行行人检测或骨架分析。又例如,可以采用HOG(方向梯度直方图)结合SVM(支持向量机)的行人检测模型来实现行人检测操作。
图6示出了根据本发明一个实施例的步骤S230确定不同待识别图像中的多个行人是否为同一人的示意性流程图。如图6所示,步骤S230包括以下子步骤S231和S232。
步骤S231,对于多个待识别图像中的每一个,根据步骤S220所获得的其中每个行人的骨架中的多个骨架特征点在该待识别图像中的位置信息,从该待识别图像中获取每个行人的多个待识别子图。其中每个待识别子图包括多个骨架特征点中的一个骨架特征点。对于多个骨架特征点中的每一个,从待识别图像中获取一个与之对应的待识别子图。示例性地,针对待识别图像中的多个骨架特征点中的每一个,取其附近的像素为待识别子图的像素,例如与之距离小于特定阈值的像素,从而确定与之对应的待识别子图。
在人体中,骨架特征点通常位于人体相应部位的中间位置。例如,头部中心位于头部的中心位置。胸部或背部的骨架特征点位于胸部或背部的中心位置。左腿膝关节位于左腿膝盖的中心位置。可选地,对于每个骨架中的多个骨架特征点中的每一个,以该骨架特征点的位置为中心,从待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图。简言之,在待识别子图中,骨架特征点位于其中心位置。由此,待识别子图能够更精确地表达骨架特征点周围的图像信息,避免图像中无关因素的干扰。由此,为更准确的行人再识别提供保障。
在一个示例中,针对待识别图像,以该骨架特征点的位置为中心确定预设尺寸的待识别子图的区域。例如,待识别子图的区域可以是矩形。可以根据骨架特征点的位置预设待识别子图的区域的高度和宽度。例如,对于头部中心,可以将待识别子图的区域的高度和宽度设置得相对较小,且大体相等。对于胸部或背部,可以将待识别子图的区域的高度和宽度设置得相对较大,且高度略大于宽度。具体地,对于多个骨架特征点中的第i个骨架特征点,可以确定以其为中心、宽度和高度分别为wi和hi的矩形范围为所述第i个骨架特征点所对应的待识别子图的区域,其中0<i<全部骨架特征点的个数n+1。
在一些情况中,待识别子图的区域完全落在待识别图像中,例如,所提取的骨架特征点距离待识别图像的边缘较远的情况。此时,根据骨架特征点所获取的待识别子图大概率完全落在待识别图像中。在另一些情况中,待识别子图的区域不完全落在待识别图像中,例如,所提取的骨架特征点距离待识别图像的边缘较近的情况。
图7示出了根据本发明一个实施例的待识别图像。在该待识别图像中提取了多个骨架特征点,图7中示出了其中的一部分,例如针对待识别图像中的男生所提取的骨架特征点A、B、C、D,如图7中箭头所示。此外,图7中还示出了骨架特征点A、B、C、D分别对应的待识别子图的区域,如图7中矩形框所示。如图7所示,骨架特征点A和B所对应的待识别子图的区域完全落在待识别图像中。然而,骨架特征点C和D所对应的待识别子图的区域不完全落在待识别图像中,其中该区域中的阴影部分落在待识别图像的外面。
对于待识别子图的区域完全落在待识别图像中情况,可以确定待识别图像在该区域内的部分图像为待识别子图。例如,在图7中,分别对应于骨架特征点A和B的矩形框所围的部分图像为待识别子图。
对于待识别子图的区域不完全落在待识别图像中的情况,可以根据待识别图像在该区域内的部分图像对所述区域进行扩充,以形成待识别子图。例如,在图7中,对于分别对应于骨架特征点C和D的待识别子图的区域,可以用矩形框内的、在待识别图像中的像素的平均值扩充矩形框内的、在待识别图像外的部分,即图7的矩形框内的阴影部分。经扩充的矩形框内的图像为所形成的待识别子图。本领域普通技术人员可以理解,上述用平均值来扩充区域的实现方式仅为示例,也可以采用其他方式来扩充区域。
基于上述方法获取的待识别子图能够更准确地表示骨架特征点周围的图像,从而能够保证行人再识别的准确性。
步骤S232,根据多个待识别图像中的多个行人的待识别子图和其骨架信息,确定所述该多个行人是否为同一人。可以理解,这里的多个行人是指分别位于不同的待识别图像中的行人。对于每个待识别子图,其对应的骨架信息给出了该待识别子图对应于人体的位置。例如包括头部中心的待识别子图对应于行人的头部。每个行人的待识别子图和其骨架信息包含了大量该行人的特征,因此根据行人的待识别子图和其骨架信息可以识别行人。进而,可以据此确定来自不同待识别图像中的多个行人是否为同一人。
可选地,步骤S232可根据行人的待识别子图确定行人的特征向量,再根据特征向量确定行人是否为同一人。该实现方法直观、易实现。如图8所示,步骤S232可以包括以下步骤。
步骤S232a,根据多个待识别图像中的多个行人的待识别子图和所述多个行人的骨架信息,分别确定该多个行人的特征向量。可以理解每个行人的待识别子图都包含了该行人所专属的特征。对于每个行人,可以将其多个待识别子图表示为一个表征该行人的特征向量。
在一个示例中,对于每个待识别图像中的每个行人,可以确定该行人的每个待识别子图的特征值。根据该行人的骨架信息和每个待识别子图的特征值确定该行人的特征向量。这里可以按照根据骨架信息所确定的特定的顺序,排列每个行人的所有待识别子图的特征值,以生成该行人的特征向量。可以理解,上述方案仅为示例,还可以采用其他方式来确定行人的特征向量。例如,针对行人的每个待识别子图,可以确定唯一一个与之对应的向量。再根据行人的所有待识别子图的向量确定行人的特征向量。
步骤S232b,计算该多个行人的特征向量之间的相似度。示例性地,可以计算特征向量之间的欧式距离、马氏距离、切比雪夫距离和余弦距离中的一个,或其中的多个的函数表示,以作为特征向量之间的相似度。多个行人的特征向量之间的距离越近,则认为相似度越高;多个行人的特征向量之间的距离越远,则认为相似度越低。
步骤S232c,根据这些特征向量之间的相似度确定这些特征向量所分别表征的多个行人是否为同一人。在一个示例中,如果特征向量之间的相似度大于特定阈值,则认为这些特征向量所表征的行人是同一人。
可选地,步骤S232可以利用神经网络实现。根据多个待识别图像中的多个行人的待识别子图和所述多个行人的骨架信息,利用神经网络确定所述多个行人是否为同一人。这速度快、准确度高。可选地,在行人再识别方法中还可以包括:利用训练样本训练初始神经网络,以得到该神经网络。训练样本包括分别来自锚图像、正例图像和负例图像的待识别子图。其中锚图像和正例图像中包括同一行人,负例图像中包括与锚图像中的行人不同的行人。
根据本申请的一个实施例,首先,将分别来自锚图像、正例图像和负例图像的待识别子图输入初始神经网络,以使用卷积运算分别提取锚图像、正例图像和负例图像的特征向量。可选地,每个图像的待识别子图按照该图像中行人的骨架信息,以特定顺序输入所述初始神经网络。
然后,对所提取的特征向量进行距离计算,并根据如下公式计算损失函数:
L=max((||H-H+||-||H-H-||+a),0),
其中,H,H+,H-分别表示锚图像、正例图像和负例图像的特征向量,||〃||表示某种距离度量,例如欧氏距离,a为预设常数。则上式的物理意义可以描述为只要负例图像与锚图像的距离与正例图像和锚图像的距离之差超过该值a,损失就为0。
最后,根据上述损失函数来确定神经网络的参数。由此,也确定了神经网络。经过训练的神经网络可以将相同行人映射为距离相近的特征向量,不同行人映射为距离较远的特征向量。
上述步骤S230中确定行人是否为同一人是利用根据骨架特征点从待识别图像中获取的待识别子图。该实现方式获得了人体的关键位置,对骨架周围的小范围图像进行处理,减少了环境因素的影响,提高了识别的准确率。此外,其所涉及的数据量小,计算速度快。
根据本发明另一方面,还提供了一种行人再识别装置。图9示出了根据本发明一个实施例的行人再识别装置900的示意性框图。
如图9所示,装置900包括图像获取模块910、骨架提取模块920和识别模块930。所述各个模块可分别执行上文中所述的行人再识别方法的各个步骤/功能。以下仅对该装置900的各部件的主要功能进行描述,而省略以上已经描述过的细节内容。
图像获取模块910用于获取多个待识别图像。图像获取模块910可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。
骨架提取模块920用于对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在该待识别图像中的位置信息。骨架提取模块920可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。
示例性地,所述骨架特征点包括以下人体关键点中的一个或多个:头部中心、左肩和右肩、左臂肘关节和右臂肘关节、胸部或背部、臀部、左腿膝关节、左腿踝关节、右腿膝关节和右腿踝关节。
识别模块930用于根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。识别模块930可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。
根据本发明的一个实施例,所述骨架提取模块920包括行人检测单元和骨架分析单元。
行人检测单元用于对于所述多个待识别图像中的每一个,对该待识别图像进行行人检测,以获得至少一个行人检测框,其中所述至少一个行人检测框中的每个行人检测框用于指示该待识别图像中包括一个行人的区域。
骨架分析单元用于对于所述多个待识别图像中的每一个,对该待识别图像基于所述每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息。
示例性地,所述行人检测单元包括第一特征提取子单元、检测目标确定子单元和行人检测子单元。所述第一特征提取子单元用于提取该待识别图像的人体特征的热度图。检测目标确定子单元用于分别使用不同滑动窗口截取所述热度图中的一部分,以作为待检测部分。行人检测子单元用于针对所述待检测部分进行行人检测,并且根据行人检测结果确定所述至少一个行人检测框。
示例性地,所述骨架分析单元包括第二特征提取子单元、骨架分析子单元和骨架信息确定子单元。所述第二特征提取子单元用于提取该待识别图像的骨架特征图。骨架分析子单元用于对所述骨架特征图进行骨架分析,以获得所述骨架特征图中的骨架信息。骨架信息确定子单元用于基于所述每个行人检测框,确定所述每个行人检测框对应的骨架信息。
根据本发明的一个实施例,所述识别模块930包括待识别子图获取单元和行人再识别单元。
所述待识别子图获取单元用于对于所述多个待识别图像中的每一个,根据所述每个行人的骨架中的多个骨架特征点在该待识别图像中的位置信息,从该待识别图像中获取所述每个行人的多个待识别子图,其中每个待识别子图包括所述骨架中的多个骨架特征点中的一个骨架特征点。
所述行人再识别单元用于根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人。
示例性地,所述待识别子图获取单元具体用于对于所述每个行人的骨架中的多个骨架特征点中的每一个,以该骨架特征点的位置为中心,从该待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图。
示例性地,所述待识别子图获取单元包括区域确定子单元、第一子图确定子单元和第二子图确定子单元。
所述区域确定子单元用于针对该待识别图像,以该骨架特征点的位置为中心确定所述预设尺寸的待识别子图的区域。
所述第一子图确定子单元用于对于该待识别子图的区域完全落在该待识别图像中的情况,确定该待识别图像在该区域内的部分图像为所述预设尺寸的待识别子图。
第二子图确定子单元用于对于该待识别子图的区域不完全落在该待识别图像中的情况,根据该待识别图像在该区域内的部分图像对所述区域进行扩充,以形成所述预设尺寸的待识别子图。
示例性地,所述行人再识别单元包括特征向量确定子单元、相似度计算子单元和行人确定子单元。
所述特征向量确定子单元用于根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,分别确定所述多个行人的特征向量。可选地,所述特征向量确定子单元具体用于对于所述多个待识别图像中的每一个中的每个行人,首先确定该行人的每个待识别子图的特征值,然后根据该行人的骨架信息和每个待识别子图的特征值确定该行人的特征向量。
所述相似度计算子单元用于计算所述多个行人的特征向量之间的相似度。
所述行人确定子单元用于根据所述相似度确定所述多个待识别图像中的所述多个行人是否为同一人。
示例性地,所述行人再识别单元利用神经网络实现。
示例性地,所述装置900还包括训练模块,用于利用分别来自锚图像、正例图像和负例图像的待识别子图作为训练样本训练初始神经网络,以得到所述神经网络,其中所述锚图像和所述正例图像中包括同一行人,所述负例图像中包括与所述锚图像中的行人不同的行人。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块、单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
图10示出了根据本发明一个实施例的行人再识别系统1000的示意性框图。如图10所示,系统1000包括输入装置1010、存储装置1020、处理器1030以及输出装置1040。
所述输入装置1010用于接收用户所输入的操作指令以及采集数据。输入装置1010可以包括键盘、鼠标、麦克风、触摸屏和图像采集装置等中的一个或多个。
所述存储装置1020存储用于实现根据本发明实施例的行人再识别方法中的相应步骤的计算机程序指令。
所述处理器1030用于运行所述存储装置1020中存储的计算机程序指令,以执行根据本发明实施例的行人再识别方法的相应步骤,并且用于实现根据本发明实施例的行人再识别装置中的图像获取模块910、骨架提取模块920和识别模块930。
在本发明的一个实施例中,在所述计算机程序指令被所述处理器1030运行时使所述系统1000执行以下步骤:
获取多个待识别图像;
对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在该待识别图像中的位置信息;以及
根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。
示例性地,所述骨架特征点包括以下人体关键点中的一个或多个:头部中心、左肩和右肩、左臂肘关节和右臂肘关节、胸部或背部、臀部、左腿膝关节、左腿踝关节、右腿膝关节和右腿踝关节。
在本发明的一个实施例中,在所述计算机程序指令被所述处理器1030运行时使所述系统1000执行的所述在待识别图像中提取每个行人的骨架信息的步骤包括:
对于所述多个待识别图像中的每一个,
对该待识别图像进行行人检测,以获得至少一个行人检测框,其中所述至少一个行人检测框中的每个行人检测框用于指示该待识别图像中包括一个行人的区域;以及
对该待识别图像基于所述每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息。
示例性地,在所述计算机程序指令被所述处理器1030运行时使所述系统1000执行的所述对该待识别图像进行行人检测的步骤包括:
提取该待识别图像的人体特征的热度图;
分别使用不同滑动窗口截取所述热度图中的一部分,以作为待检测部分;以及
针对所述待检测部分进行行人检测,并且根据行人检测结果确定所述至少一个行人检测框。
示例性地,在所述计算机程序指令被所述处理器1030运行时使所述系统1000执行的所述对该待识别图像基于所述每个行人检测框进行骨架分析的步骤包括:
提取该待识别图像的骨架特征图;
对所述骨架特征图进行骨架分析,以获得所述骨架特征图中的骨架信息;
基于所述每个行人检测框,确定所述每个行人检测框对应的骨架信息。
在本发明的一个实施例中,在所述计算机程序指令被所述处理器1030运行时使所述系统1000执行的所述根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的行人是否为同一人的步骤包括:
对于所述多个待识别图像中的每一个,根据所述每个行人的骨架中的多个骨架特征点在该待识别图像中的位置信息,从该待识别图像中获取所述每个行人的多个待识别子图,其中每个待识别子图包括所述骨架中的多个骨架特征点中的一个骨架特征点;以及
根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人。
在本发明的一个实施例中,在所述计算机程序指令被所述处理器1030运行时使所述系统1000执行的所述根据所述骨架中的多个骨架特征点在该待识别图像中的位置信息,从该待识别图像中获取行人的多个待识别子图的步骤包括:
对于所述每个行人的骨架中的多个骨架特征点中的每一个,以该骨架特征点的位置为中心,从该待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图。
在本发明的一个实施例中,在所述计算机程序指令被所述处理器1030运行时使所述系统1000执行的所述以该骨架特征点的位置为中心,从该待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图的步骤包括:
针对该待识别图像,以该骨架特征点的位置为中心确定所述预设尺寸的待识别子图的区域;
对于该待识别子图的区域完全落在该待识别图像中的情况,确定该待识别图像在该区域内的部分图像为所述预设尺寸的待识别子图;以及
对于该待识别子图的区域不完全落在该待识别图像中的情况,根据该待识别图像在该区域内的部分图像对所述区域进行扩充,以形成所述预设尺寸的待识别子图。
在本发明的一个实施例中,在所述计算机程序指令被所述处理器1030运行时使所述系统1000执行的所述根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人的步骤包括:
根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,分别确定所述多个行人的特征向量;
计算所述多个行人的特征向量之间的相似度;以及
根据所述相似度确定所述多个待识别图像中的所述多个行人是否为同一人。
示例性地,在本发明的一个实施例中,在所述计算机程序指令被所述处理器1030运行时使所述系统1000执行的所述根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,分别确定所述多个行人的特征向量的步骤包括:
对于所述多个待识别图像中的每一个中的每个行人,
确定该行人的每个待识别子图的特征值;以及
根据该行人的骨架信息和每个待识别子图的特征值确定该行人的特征向量。
示例性地,在本发明的一个实施例中,在所述计算机程序指令被所述处理器1030运行时使所述系统1000执行的所述根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人的步骤包括:
根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,利用神经网络确定所述多个待识别图像中的所述多个行人是否为同一人。
示例性地,在本发明的一个实施例中,在所述计算机程序指令被所述处理器1030运行时还使所述系统1000执行以下步骤:利用分别来自锚图像、正例图像和负例图像的待识别子图作为训练样本训练初始神经网络,以得到所述神经网络,其中所述锚图像和所述正例图像中包括同一行人,所述负例图像中包括与所述锚图像中的行人不同的行人。
此外,根据本发明再一方面,还提供了一种存储介质,在所述存储介质上存储了程序指令,在所述程序指令被计算机或处理器运行时使得所述计算机或处理器执行本发明实施例的行人再识别方法的相应步骤,并且用于实现根据本发明实施例的行人再识别装置中的相应模块。所述存储介质例如可以包括智能电话的存储卡、平板电脑的存储部件、个人计算机的硬盘、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器、或者上述存储介质的任意组合。所述计算机可读存储介质可以是一个或多个计算机可读存储介质的任意组合。
在本发明的一个实施例中,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行以下步骤:
获取多个待识别图像;
对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在该待识别图像中的位置信息;以及
根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。
示例性地,所述骨架特征点包括以下人体关键点中的一个或多个:头部中心、左肩和右肩、左臂肘关节和右臂肘关节、胸部或背部、臀部、左腿膝关节、左腿踝关节、右腿膝关节和右腿踝关节。
在本发明的一个实施例中,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述在待识别图像中提取每个行人的骨架信息的步骤包括:
对于所述多个待识别图像中的每一个,
对该待识别图像进行行人检测,以获得至少一个行人检测框,其中所述至少一个行人检测框中的每个行人检测框用于指示该待识别图像中包括一个行人的区域;以及
对该待识别图像基于所述每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息。
示例性地,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述对该待识别图像进行行人检测的步骤包括:
提取该待识别图像的人体特征的热度图;
分别使用不同滑动窗口截取所述热度图中的一部分,以作为待检测部分;以及
针对所述待检测部分进行行人检测,并且根据行人检测结果确定所述至少一个行人检测框。
示例性地,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述对该待识别图像基于所述每个行人检测框进行骨架分析的步骤包括:
提取该待识别图像的骨架特征图;
对所述骨架特征图进行骨架分析,以获得所述骨架特征图中的骨架信息;
基于所述每个行人检测框,确定所述每个行人检测框对应的骨架信息。
在本发明的一个实施例中,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的行人是否为同一人的步骤包括:
对于所述多个待识别图像中的每一个,根据所述每个行人的骨架中的多个骨架特征点在该待识别图像中的位置信息,从该待识别图像中获取所述每个行人的多个待识别子图,其中每个待识别子图包括所述骨架中的多个骨架特征点中的一个骨架特征点;以及
根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人。
示例性地,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述根据所述骨架中的多个骨架特征点在该待识别图像中的位置信息,从该待识别图像中获取行人的多个待识别子图的步骤包括:
对于所述每个行人的骨架中的多个骨架特征点中的每一个,以该骨架特征点的位置为中心,从该待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图。
示例性地,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述以该骨架特征点的位置为中心,从该待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图的步骤包括:
针对该待识别图像,以该骨架特征点的位置为中心确定所述预设尺寸的待识别子图的区域;
对于该待识别子图的区域完全落在该待识别图像中的情况,确定该待识别图像在该区域内的部分图像为所述预设尺寸的待识别子图;以及
对于该待识别子图的区域不完全落在该待识别图像中的情况,根据该待识别图像在该区域内的部分图像对所述区域进行扩充,以形成所述预设尺寸的待识别子图。
在本发明的一个实施例中,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人的步骤包括:
根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,分别确定所述多个行人的特征向量;
计算所述多个行人的特征向量之间的相似度;以及
根据所述相似度确定所述多个待识别图像中的所述多个行人是否为同一人。
示例性地,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,分别确定所述多个行人的特征向量的步骤包括:
对于所述多个待识别图像中的每一个中的每个行人,
确定该行人的每个待识别子图的特征值;以及
根据该行人的骨架信息和每个待识别子图的特征值确定该行人的特征向量。
示例性地,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器执行的所述根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人的步骤利用神经网络实现。
示例性地,所述计算机程序指令被计算机或处理器运行时,使得所述计算机或处理器还执行以下步骤:
利用分别来自锚图像、正例图像和负例图像的待识别子图作为训练样本训练初始神经网络,以得到所述神经网络,其中所述锚图像和所述正例图像中包括同一行人,所述负例图像中包括与所述锚图像中的行人不同的行人。
根据本发明实施例的行人再识别系统中的各模块可以通过根据本发明实施例实施行人再识别的电子设备的处理器运行在存储器中存储的计算机程序指令来实现,或者可以在根据本发明实施例的计算机程序产品的计算机可读存储介质中存储的计算机指令被计算机运行时实现。
根据本发明实施例的行人再识别方法、装置、系统和存储介质,通过提取行人的骨架信息并根据该骨架信息进行行人再识别来提高识别的准确性。
尽管这里已经参考附图描述了示例实施例,应理解上述示例实施例仅仅是示例性的,并且不意图将本发明的范围限制于此。本领域普通技术人员可以在其中进行各种改变和修改,而不偏离本发明的范围和精神。所有这些改变和修改意在被包括在所附权利要求所要求的本发明的范围之内。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个设备,或一些特征可以忽略,或不执行。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该本发明的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如相应的权利要求书所反映的那样,其发明点在于可以用少于某个公开的单个实施例的所有特征的特征来解决相应的技术问题。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域的技术人员可以理解,除了特征之间相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的行人再识别装置中的一些模块的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上所述,仅为本发明的具体实施方式或对具体实施方式的说明,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。本发明的保护范围应以权利要求的保护范围为准。
Claims (14)
1.一种行人再识别方法,包括:
获取多个待识别图像;
对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在该待识别图像中的位置信息;以及
根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。
2.如权利要求1所述的方法,其中,所述根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的行人是否为同一人,包括:
对于所述多个待识别图像中的每一个,根据所述每个行人的骨架中的多个骨架特征点在该待识别图像中的位置信息,从该待识别图像中获取所述每个行人的多个待识别子图,其中每个待识别子图包括所述骨架中的多个骨架特征点中的一个骨架特征点;以及
根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人。
3.如权利要求2所述的方法,其中,所述根据所述骨架中的多个骨架特征点在该待识别图像中的位置信息,从该待识别图像中获取行人的多个待识别子图,包括:
对于所述每个行人的骨架中的多个骨架特征点中的每一个,以该骨架特征点的位置为中心,从该待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图。
4.如权利要求3所述的方法,其中,所述以该骨架特征点的位置为中心,从该待识别图像中获取一个与该骨架特征点对应的预设尺寸的待识别子图,包括:
针对该待识别图像,以该骨架特征点的位置为中心确定所述预设尺寸的待识别子图的区域;
对于该待识别子图的区域完全落在该待识别图像中的情况,确定该待识别图像在该区域内的部分图像为所述预设尺寸的待识别子图;以及
对于该待识别子图的区域不完全落在该待识别图像中的情况,根据该待识别图像在该区域内的部分图像对所述区域进行扩充,以形成所述预设尺寸的待识别子图。
5.如权利要求2至4中任一项所述的方法,其中,所述根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人,包括:
根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,分别确定所述多个行人的特征向量;
计算所述多个行人的特征向量之间的相似度;以及
根据所述相似度确定所述多个待识别图像中的所述多个行人是否为同一人。
6.如权利要求5所述的方法,其中,所述根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,分别确定所述多个行人的特征向量包括:
对于所述多个待识别图像中的每一个中的每个行人,
确定该行人的每个待识别子图的特征值;以及
根据该行人的骨架信息和每个待识别子图的特征值确定该行人的特征向量。
7.如权利要求2至4中任一项所述的方法,其中,所述根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,确定所述多个待识别图像中的所述多个行人是否为同一人包括:
根据所述多个待识别图像中的所述多个行人的待识别子图和所述多个行人的骨架信息,利用神经网络确定所述多个待识别图像中的所述多个行人是否为同一人。
8.如权利要求7所述的方法,其中,所述方法还包括:
利用分别来自锚图像、正例图像和负例图像的待识别子图作为训练样本训练初始神经网络,以得到所述神经网络,其中所述锚图像和所述正例图像中包括同一行人,所述负例图像中包括与所述锚图像中的行人不同的行人。
9.如权利要求1所述的方法,其中,所述对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,包括:
对于所述多个待识别图像中的每一个,
对该待识别图像进行行人检测,以获得至少一个行人检测框,其中所述至少一个行人检测框中的每个行人检测框用于指示该待识别图像中包括一个行人的区域;以及
对该待识别图像基于所述每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息。
10.如权利要求9所述的方法,其中,所述对该待识别图像进行行人检测,以获得至少一个行人检测框,包括:
提取该待识别图像的人体特征的热度图;
分别使用不同滑动窗口截取所述热度图中的一部分,以作为待检测部分;以及
针对所述待检测部分进行行人检测,并且根据行人检测结果确定所述至少一个行人检测框。
11.如权利要求9或10所述的方法,其中,所述对该待识别图像基于所述每个行人检测框进行骨架分析,以获取所述每个行人检测框中行人的骨架信息,包括:
提取该待识别图像的骨架特征图;
对所述骨架特征图进行骨架分析,以获得所述骨架特征图中的骨架信息;
基于所述每个行人检测框,确定所述每个行人检测框对应的骨架信息。
12.一种行人再识别装置,包括:
图像获取模块,用于获取多个待识别图像;
骨架提取模块,用于对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在该待识别图像中的位置信息;以及
识别模块,用于根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。
13.一种行人再识别系统,包括处理器和存储器,其中,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器运行时用于执行以下步骤:
获取多个待识别图像;
对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在该待识别图像中的位置信息;以及
根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。
14.一种存储介质,在所述存储介质上存储了程序指令,所述程序指令在运行时用于执行以下步骤:
获取多个待识别图像;
对于所述多个待识别图像中的每一个,在该待识别图像中提取每个行人的骨架信息,其中所述骨架信息包括骨架中的多个骨架特征点在该待识别图像中的位置信息;以及
根据所述多个待识别图像和从所述多个待识别图像中所提取的多个行人的骨架信息,确定所述多个待识别图像中的多个行人是否为同一人。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711079102.7A CN108875500B (zh) | 2017-11-06 | 2017-11-06 | 行人再识别方法、装置、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711079102.7A CN108875500B (zh) | 2017-11-06 | 2017-11-06 | 行人再识别方法、装置、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108875500A true CN108875500A (zh) | 2018-11-23 |
CN108875500B CN108875500B (zh) | 2022-01-07 |
Family
ID=64325709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711079102.7A Active CN108875500B (zh) | 2017-11-06 | 2017-11-06 | 行人再识别方法、装置、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108875500B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109753901A (zh) * | 2018-12-21 | 2019-05-14 | 上海交通大学 | 基于行人识别的室内行人寻迹方法、装置、计算机设备及存储介质 |
CN109948320A (zh) * | 2019-03-22 | 2019-06-28 | 泰康保险集团股份有限公司 | 基于区块链的身份识别管理方法、装置、介质及电子设备 |
CN110458004A (zh) * | 2019-07-02 | 2019-11-15 | 浙江吉利控股集团有限公司 | 一种目标对象识别方法、装置、设备以及存储介质 |
CN112733671A (zh) * | 2020-12-31 | 2021-04-30 | 新大陆数字技术股份有限公司 | 行人检测方法、装置及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070211938A1 (en) * | 2006-03-09 | 2007-09-13 | General Electric Company | Method and system for performing image re-identification |
US8615105B1 (en) * | 2010-08-31 | 2013-12-24 | The Boeing Company | Object tracking system |
US20130343642A1 (en) * | 2012-06-21 | 2013-12-26 | Siemens Corporation | Machine-learnt person re-identification |
CN105518744A (zh) * | 2015-06-29 | 2016-04-20 | 北京旷视科技有限公司 | 行人再识别方法及设备 |
CN106874884A (zh) * | 2017-03-03 | 2017-06-20 | 中国民航大学 | 基于部位分割的人体再识别方法 |
CN106971178A (zh) * | 2017-05-11 | 2017-07-21 | 北京旷视科技有限公司 | 行人检测和再识别的方法及装置 |
-
2017
- 2017-11-06 CN CN201711079102.7A patent/CN108875500B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070211938A1 (en) * | 2006-03-09 | 2007-09-13 | General Electric Company | Method and system for performing image re-identification |
US8615105B1 (en) * | 2010-08-31 | 2013-12-24 | The Boeing Company | Object tracking system |
US20130343642A1 (en) * | 2012-06-21 | 2013-12-26 | Siemens Corporation | Machine-learnt person re-identification |
CN105518744A (zh) * | 2015-06-29 | 2016-04-20 | 北京旷视科技有限公司 | 行人再识别方法及设备 |
CN106874884A (zh) * | 2017-03-03 | 2017-06-20 | 中国民航大学 | 基于部位分割的人体再识别方法 |
CN106971178A (zh) * | 2017-05-11 | 2017-07-21 | 北京旷视科技有限公司 | 行人检测和再识别的方法及装置 |
Non-Patent Citations (1)
Title |
---|
祝博荟: "《基于深度与视觉信息融合的行人检测与再识别研究》", 《中国博士学位论文全文数据库 信息科技辑》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109753901A (zh) * | 2018-12-21 | 2019-05-14 | 上海交通大学 | 基于行人识别的室内行人寻迹方法、装置、计算机设备及存储介质 |
CN109753901B (zh) * | 2018-12-21 | 2023-03-24 | 上海交通大学 | 基于行人识别的室内行人寻迹方法、装置、计算机设备及存储介质 |
CN109948320A (zh) * | 2019-03-22 | 2019-06-28 | 泰康保险集团股份有限公司 | 基于区块链的身份识别管理方法、装置、介质及电子设备 |
CN109948320B (zh) * | 2019-03-22 | 2021-08-10 | 泰康保险集团股份有限公司 | 基于区块链的身份识别管理方法、装置、介质及电子设备 |
CN110458004A (zh) * | 2019-07-02 | 2019-11-15 | 浙江吉利控股集团有限公司 | 一种目标对象识别方法、装置、设备以及存储介质 |
CN110458004B (zh) * | 2019-07-02 | 2022-12-27 | 浙江吉利控股集团有限公司 | 一种目标对象识别方法、装置、设备以及存储介质 |
CN112733671A (zh) * | 2020-12-31 | 2021-04-30 | 新大陆数字技术股份有限公司 | 行人检测方法、装置及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108875500B (zh) | 2022-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108875732B (zh) | 模型训练与实例分割方法、装置和系统及存储介质 | |
CN109697435B (zh) | 人流量监测方法、装置、存储介质及设备 | |
CN108875522A (zh) | 人脸聚类方法、装置和系统及存储介质 | |
CN108875600A (zh) | 一种基于yolo的车辆信息检测和跟踪方法、装置及计算机存储介质 | |
CN109117714A (zh) | 一种同行人员识别方法、装置、系统及计算机存储介质 | |
CN109522790A (zh) | 人体属性识别方法、装置、存储介质及电子设备 | |
CN107590473B (zh) | 一种人脸活体检测方法、介质和相关装置 | |
CN109086873A (zh) | 递归神经网络的训练方法、识别方法、装置及处理设备 | |
CN108875500A (zh) | 行人再识别方法、装置、系统及存储介质 | |
CN107808111A (zh) | 用于行人检测和姿态估计的方法和装置 | |
CN107918767B (zh) | 目标检测方法、装置、电子设备及计算机可读介质 | |
CN109214366A (zh) | 局部目标重识别方法、装置及系统 | |
CN108108662A (zh) | 深度神经网络识别模型及识别方法 | |
CN108875481A (zh) | 用于行人检测的方法、装置、系统及存储介质 | |
CN109508636A (zh) | 车辆属性识别方法、装置、存储介质及电子设备 | |
Thabet et al. | Enhanced smart doorbell system based on face recognition | |
CN108875767A (zh) | 图像识别的方法、装置、系统及计算机存储介质 | |
CN108875517A (zh) | 视频处理方法、装置和系统及存储介质 | |
CN108875509A (zh) | 活体检测方法、装置和系统及存储介质 | |
CN109670517A (zh) | 目标检测方法、装置、电子设备和目标检测模型 | |
CN108875750A (zh) | 物体检测方法、装置和系统及存储介质 | |
CN108875519A (zh) | 对象检测方法、装置和系统及存储介质 | |
CN108171208A (zh) | 信息获取方法和装置 | |
CN108986137A (zh) | 人体跟踪方法、装置及设备 | |
CN107959798A (zh) | 视频数据实时处理方法及装置、计算设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |