CN108256404A - 行人检测方法和装置 - Google Patents

行人检测方法和装置 Download PDF

Info

Publication number
CN108256404A
CN108256404A CN201611249204.4A CN201611249204A CN108256404A CN 108256404 A CN108256404 A CN 108256404A CN 201611249204 A CN201611249204 A CN 201611249204A CN 108256404 A CN108256404 A CN 108256404A
Authority
CN
China
Prior art keywords
pedestrian
frame
shoulder
head
convolutional neural
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
Application number
CN201611249204.4A
Other languages
English (en)
Other versions
CN108256404B (zh
Inventor
俞刚
彭雨翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Megvii Technology Co Ltd
Beijing Maigewei Technology Co Ltd
Original Assignee
Beijing Megvii Technology Co Ltd
Beijing Maigewei Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Megvii Technology Co Ltd, Beijing Maigewei Technology Co Ltd filed Critical Beijing Megvii Technology Co Ltd
Priority to CN201611249204.4A priority Critical patent/CN108256404B/zh
Publication of CN108256404A publication Critical patent/CN108256404A/zh
Application granted granted Critical
Publication of CN108256404B publication Critical patent/CN108256404B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)
  • Traffic Control Systems (AREA)

Abstract

本发明的实施例提供了一种行人检测方法和装置。该行人检测方法包括:获取待处理图像;检测待处理图像中的行人,以获得行人信息,其中,行人信息包括多个行人框;检测待处理图像中的行人的头部,以获得头部信息,其中,头部信息包括与多个行人框中的至少部分行人框一一对应的头部位置;检测待处理图像中的行人的肩部,以获得肩部信息,其中,肩部信息包括与至少部分行人框一一对应的左肩位置和右肩位置;根据与至少部分行人框一一对应的头部位置、左肩位置和右肩位置计算与至少部分行人框一一对应的头肩部位的重叠情况;以及根据重叠情况过滤行人框,以获得行人检测结果。上述方法和装置可以避免用某一行人的行人框过滤掉其他行人的行人框的问题。

Description

行人检测方法和装置
技术领域
本发明涉及计算机领域,更具体地涉及一种行人检测方法和装置。
背景技术
在监控领域,行人检测具有非常重要的作用。传统的行人检测方法往往存在下面的问题。传统的行人检测方法往往通过滑窗(sliding-window)方法来从待处理图像上提取多种不同尺度的窗口(每个窗口是一个矩形框,也可以称为行人框),并判断每个窗口中是否存在行人。此外,传统的行人检测方法通常使用非极大值抑制(non-maximumsuppression,NMS)来过滤同一个行人身上的多个窗口。这样往往会导致在拥挤的情况下,包含其他行人的窗口被过滤掉,从而导致严重的假阴性(false negative,即本来是行人,但是没有被检测出来)。
发明内容
考虑到上述问题而提出了本发明。本发明提供了一种行人检测方法和装置。
根据本发明一方面,提供了一种行人检测方法。该方法包括:获取待处理图像;检测待处理图像中的行人,以获得行人信息,其中,行人信息包括多个行人框;检测待处理图像中的行人的头部,以获得头部信息,其中,头部信息包括与多个行人框中的至少部分行人框一一对应的头部位置;检测待处理图像中的行人的肩部,以获得肩部信息,其中,肩部信息包括与至少部分行人框一一对应的左肩位置和右肩位置;根据与至少部分行人框一一对应的头部位置、左肩位置和右肩位置计算与至少部分行人框一一对应的头肩部位的重叠情况;以及根据重叠情况过滤行人框,以获得行人检测结果。
示例性地,检测待处理图像中的行人的头部,以获得头部信息包括:检测待处理图像中的行人的头部,以获得至少一个头部框;以及对于至少部分行人框中的每一个,从至少一个头部框中选择中心点与该行人框的中心点之间的距离小于预设头部阈值并且中心点距离该行人框的中心点最近的头部框作为与该行人框对应的头部框,并确定与该行人框对应的头部框的中心点为与该行人框对应的头部位置;检测待处理图像中的行人的肩部,以获得肩部信息包括:检测待处理图像中的行人的肩部,以确定至少一个左肩位置和至少一个右肩位置;从至少一个左肩位置中选择与该行人框的中心点之间的距离小于预设左肩阈值并且距离该行人框的中心点最近的左肩位置作为与该行人框对应的左肩位置;以及从至少一个右肩位置中选择与该行人框的中心点之间的距离小于预设右肩阈值并且距离该行人框的中心点最近的右肩位置作为与该行人框对应的右肩位置。
示例性地,对于至少部分行人框中的每一个,与该行人框对应的头肩部位是以与该行人框对应的头部位置、左肩位置和右肩位置为顶点的头肩三角形。
示例性地,行人信息还包括多个行人框中的每个行人框的行人置信度,头部信息还包括与至少部分行人框一一对应的头部位置的头部置信度,肩部信息还包括与至少部分行人框一一对应的左肩位置的左肩置信度和与至少部分行人框一一对应的右肩位置的右肩置信度,在根据重叠情况过滤行人框,以获得行人检测结果之前,行人检测方法还包括:对于至少部分行人框中的每一个,根据该行人框的行人置信度、与该行人框对应的头部位置的头部置信度、与该行人框对应的左肩位置的左肩置信度和与该行人框对应的右肩位置的右肩置信度,计算与该行人框对应的头肩三角形的三角形置信度;根据重叠情况过滤行人框,以获得行人检测结果包括:如果与至少部分行人框一一对应的头肩三角形中存在至少一组头肩三角形,其中至少一组头肩三角形中的每组头肩三角形包括重叠比例大于预设重叠阈值的多个头肩三角形,则对于至少一组头肩三角形中的每组头肩三角形,选择其中三角形置信度最高的头肩三角形之外的剩余头肩三角形;以及过滤多个行人框中的、与所选择的所有头肩三角形对应的行人框,以获得行人检测结果。
示例性地,在检测待处理图像中的行人,以获得行人信息之前,行人检测方法还包括:利用第一卷积神经网络提取待处理图像的特征;检测待处理图像中的行人,以获得行人信息包括:将待处理图像的特征输入第二卷积神经网络,以获得行人信息;检测待处理图像中的行人的头部,以获得头部信息包括:将待处理图像的特征输入第三卷积神经网络,以获得至少一个头部框和每个头部框的头部置信度;以及从至少一个头部框中选择与至少部分行人框一一对应的头部框,以获得头部信息;检测待处理图像中的行人的肩部,以获得肩部信息包括:将待处理图像的特征输入第四卷积神经网络,以获得左肩特征图和右肩特征图,其中,左肩特征图与待处理图像大小一致并且所述左肩特征图中的每个像素的像素值表示待处理图像的、与该像素坐标一致的像素属于左肩的左肩置信度,右肩特征图与待处理图像大小一致并且所述右肩特征图中的每个像素的像素值表示待处理图像的、与该像素坐标一致的像素属于右肩的右肩置信度;以及从左肩特征图所指示的至少一个左肩位置中选择与至少部分行人框一一对应的左肩位置,并从右肩特征图所指示的至少一个右肩位置中选择与至少部分行人框一一对应的右肩位置,以获得肩部信息。
示例性地,行人检测方法还包括:获取训练图像和标注数据,其中,标注数据包括训练图像中的每个行人所对应的行人框、头部框、左肩位置和右肩位置;以训练图像中的每个行人所对应的行人框作为利用第一卷积神经网络和第二卷积神经网络对训练图像进行处理所获得的行人框的目标值构建第一损失函数,以训练图像中的每个行人所对应的头部框作为利用第一卷积神经网络和第三卷积神经网络对训练图像进行处理所获得的头部框的目标值构建第二损失函数,以训练图像中的每个行人所对应的左肩位置和右肩位置作为利用第一卷积神经网络和第四卷积神经网络对训练图像进行处理所获得的左肩位置和右肩位置的目标值构建第三损失函数;以及至少利用第一损失函数、第二损失函数和第三损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络和第四卷积神经网络中的参数进行训练。
示例性地,标注数据还包括训练图像中的每个行人所对应的脸部框;行人检测方法还包括:以训练图像中的每个行人所对应的脸部框作为利用第一卷积神经网络和第五卷积神经网络对训练图像进行处理所获得的脸部框的目标值构建第四损失函数,其中,第一卷积神经网络的输出层与第五卷积神经网络的输入层连接;至少利用第一损失函数、第二损失函数和第三损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络和第四卷积神经网络中的参数进行训练包括:利用第一损失函数、第二损失函数、第三损失函数和第四损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络、第四卷积神经网络和第五卷积神经网络中的参数进行训练。
根据本发明另一方面,提供了一种行人检测装置。该装置包括:待处理图像获取模块,用于获取待处理图像;第一检测模块,用于检测待处理图像中的行人,以获得行人信息,其中,行人信息包括多个行人框;第二检测模块,用于检测待处理图像中的行人的头部,以获得头部信息,其中,头部信息包括与多个行人框中的至少部分行人框一一对应的头部位置;第三检测模块,用于检测待处理图像中的行人的肩部,以获得肩部信息,其中,肩部信息包括与至少部分行人框一一对应的左肩位置和右肩位置;重叠计算模块,用于根据与至少部分行人框一一对应的头部位置、左肩位置和右肩位置计算与至少部分行人框一一对应的头肩部位的重叠情况;以及过滤模块,用于根据重叠情况过滤行人框,以获得行人检测结果。
示例性地,第二检测模块包括:头部检测子模块,用于检测待处理图像中的行人的头部,以获得至少一个头部框;以及头部框选择子模块,用于对于至少部分行人框中的每一个,从至少一个头部框中选择中心点与该行人框的中心点之间的距离小于预设头部阈值并且中心点距离该行人框的中心点最近的头部框作为与该行人框对应的头部框,并确定与该行人框对应的头部框的中心点为与该行人框对应的头部位置;第三检测模块包括:肩部检测子模块,用于检测待处理图像中的行人的肩部,以确定至少一个左肩位置和至少一个右肩位置;左肩选择子模块,用于从至少一个左肩位置中选择与该行人框的中心点之间的距离小于预设左肩阈值并且距离该行人框的中心点最近的左肩位置作为与该行人框对应的左肩位置;以及右肩选择子模块,用于从至少一个右肩位置中选择与该行人框的中心点之间的距离小于预设右肩阈值并且距离该行人框的中心点最近的右肩位置作为与该行人框对应的右肩位置。
示例性地,对于至少部分行人框中的每一个,与该行人框对应的头肩部位是以与该行人框对应的头部位置、左肩位置和右肩位置为顶点的头肩三角形。
示例性地,行人信息还包括多个行人框中的每个行人框的行人置信度,头部信息还包括与至少部分行人框一一对应的头部位置的头部置信度,肩部信息还包括与至少部分行人框一一对应的左肩位置的左肩置信度和与至少部分行人框一一对应的右肩位置的右肩置信度,行人检测装置还包括:置信度计算模块,用于对于至少部分行人框中的每一个,根据该行人框的行人置信度、与该行人框对应的头部位置的头部置信度、与该行人框对应的左肩位置的左肩置信度和与该行人框对应的右肩位置的右肩置信度,计算与该行人框对应的头肩三角形的三角形置信度;过滤模块包括:三角形选择子模块,用于如果与至少部分行人框一一对应的头肩三角形中存在至少一组头肩三角形,其中至少一组头肩三角形中的每组头肩三角形包括重叠比例大于预设重叠阈值的多个头肩三角形,则对于至少一组头肩三角形中的每组头肩三角形,选择其中三角形置信度最高的头肩三角形之外的剩余头肩三角形;以及过滤子模块,用于过滤多个行人框中的、与所选择的所有头肩三角形对应的行人框,以获得行人检测结果。
示例性地,行人检测装置还包括:特征提取模块,用于在所述第一检测模块检测所述待处理图像中的行人以获得行人信息之前,利用第一卷积神经网络提取待处理图像的特征;第一检测模块包括:第一输入子模块,用于将待处理图像的特征输入第二卷积神经网络,以获得行人信息;第二检测模块包括:第二输入子模块,用于将待处理图像的特征输入第三卷积神经网络,以获得至少一个头部框和每个头部框的头部置信度;以及第一选择子模块,用于从至少一个头部框中选择与至少部分行人框一一对应的头部框,以获得头部信息;第三检测模块包括:第三输入子模块,用于将待处理图像的特征输入第四卷积神经网络,以获得左肩特征图和右肩特征图,其中,左肩特征图与待处理图像大小一致并且所述左肩特征图的每个像素的像素值表示待处理图像的、与该像素坐标一致的像素属于左肩的左肩置信度,右肩特征图与待处理图像大小一致并且所述右肩特征图的每个像素的像素值表示待处理图像的、与该像素坐标一致的像素属于右肩的右肩置信度;以及第二选择子模块,用于从左肩特征图所指示的至少一个左肩位置中选择与至少部分行人框一一对应的左肩位置,并从右肩特征图所指示的至少一个右肩位置中选择与至少部分行人框一一对应的右肩位置,以获得肩部信息。
示例性地,行人检测装置还包括:训练图像获取模块,用于获取训练图像和标注数据,其中,标注数据包括训练图像中的每个行人所对应的行人框、头部框、左肩位置和右肩位置;第一构建模块,用于以训练图像中的每个行人所对应的行人框作为利用第一卷积神经网络和第二卷积神经网络对训练图像进行处理所获得的行人框的目标值构建第一损失函数,以训练图像中的每个行人所对应的头部框作为利用第一卷积神经网络和第三卷积神经网络对训练图像进行处理所获得的头部框的目标值构建第二损失函数,以训练图像中的每个行人所对应的左肩位置和右肩位置作为利用第一卷积神经网络和第四卷积神经网络对训练图像进行处理所获得的左肩位置和右肩位置的目标值构建第三损失函数;以及训练模块,用于至少利用第一损失函数、第二损失函数和第三损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络和第四卷积神经网络中的参数进行训练。
示例性地,标注数据还包括训练图像中的每个行人所对应的脸部框;行人检测装置还包括:第二构建模块,用于以训练图像中的每个行人所对应的脸部框作为利用第一卷积神经网络和第五卷积神经网络对训练图像进行处理所获得的脸部框的目标值构建第四损失函数,其中,第一卷积神经网络的输出层与第五卷积神经网络的输入层连接;训练模块包括:训练子模块,用于利用第一损失函数、第二损失函数、第三损失函数和第四损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络、第四卷积神经网络和第五卷积神经网络中的参数进行训练。
根据本发明实施例的行人检测方法和装置,由于基于头肩部位的重叠情况而非行人框的重叠情况来过滤行人框,因此可以避免用某一行人的行人框过滤掉其他行人的行人框的问题,从而可以减少行人检测中的假阴性,提高行人检测精度。
附图说明
通过结合附图对本发明实施例进行更详细的描述,本发明的上述以及其它目的、特征和优势将变得更加明显。附图用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1示出用于实现根据本发明实施例的行人检测方法和装置的示例电子设备的示意性框图;
图2示出根据本发明一个实施例的行人检测方法的示意性流程图;
图3示出根据本发明一个实施例的行人检测方法的数据处理流程的示意图;
图4示出根据本发明一个实施例的行人检测装置的示意性框图;以及
图5示出根据本发明一个实施例的行人检测系统的示意性框图。
具体实施方式
为了使得本发明的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本发明的示例实施例。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是本发明的全部实施例,应理解,本发明不受这里描述的示例实施例的限制。基于本发明中描述的本发明实施例,本领域技术人员在没有付出创造性劳动的情况下所得到的所有其它实施例都应落入本发明的保护范围之内。
为了解决上文所述的问题,本发明实施例提供一种行人检测方法和装置,其基于行人的头肩部位的重叠情况而非行人框的重叠情况来过滤行人框。由于不同行人的头肩部位通常会存在一定的偏移,二者的重叠比例通常较小,因此本发明实施例提供的方法可以避免用某一行人的行人框过滤掉其他行人的行人框的问题。本发明实施例提供的行人检测方法可以在各种复杂的条件下,得到比较好的行人检测结果,因此该方法可以很好地应用于各种监控领域。
首先,参照图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,检测待处理图像中的行人,以获得行人信息,其中,行人信息包括多个行人框。
示例性而非限制性地,步骤S220可以采用任何合适的现有的或将来可能实现的行人检测算法实现。在一个示例中,可以利用训练好的卷积神经网络检测待处理图像中的行人,以获得行人信息。在步骤S220所获得的行人信息可以包括若干行人框。行人框是矩形框,用于指示待处理图像中可能存在行人的区域。示例性地,行人信息还可以包括每个行人框的行人置信度,用于表示该行人框中存在行人的概率。
在步骤S230,检测待处理图像中的行人的头部,以获得头部信息,其中,头部信息包括与多个行人框中的至少部分行人框一一对应的头部位置。
示例性地而非限制性地,步骤S230可以采用任何合适的现有的或将来可能实现的头部检测算法实现。在一个示例中,利用头部检测算法可以获得若干头部框。在一个示例中,可以利用训练好的卷积神经网络检测待处理图像中的行人的头部,以获得头部框。
与行人框类似地,头部框也可以是矩形框,用于指示待处理图像中可能存在头部的区域。此外,利用头部检测算法还可以获得每个头部框的头部置信度,用于表示头部框中存在头部的概率。头部位置可以基于头部框获得,例如其可以是头部框的中心点。当然,可以理解的是,头部位置也可以是头部框中的其他点,本发明不对此进行限制。可以将多个行人框与所检测获得的所有头部框进行关联,以确定与至少部分行人框一一对应的头部框,进而确定与至少部分行人框一一对应的头部位置。当然,也可以直接将多个行人框与所确定的所有头部位置进行关联,以确定与至少部分行人框一一对应的头部位置。
在步骤S240,检测待处理图像中的行人的肩部,以获得肩部信息,其中,肩部信息包括与至少部分行人框一一对应的左肩位置和右肩位置。
在一个示例中,可以利用训练好的卷积神经网络检测待处理图像中的行人的肩部。
在通过肩部检测确定若干左肩位置和右肩位置之后,可以将多个行人框与所确定的左肩位置和右肩位置进行关联,由此可以获得与至少部分行人框一一对应的左肩位置和右肩位置。
在步骤S250,根据与至少部分行人框一一对应的头部位置、左肩位置和右肩位置计算与至少部分行人框一一对应的头肩部位的重叠情况。
示例性地,对于至少部分行人框中的每一个,与该行人框对应的头肩部位可以是以与该行人框对应的头部位置、左肩位置和右肩位置为顶点的头肩三角形。例如,在通过头部检测获得头部框的情况下,可以找出头部框的中心点,以中心点作为头部位置。左肩位置和右肩位置可以分别为两个点。这样,以头部位置、左肩位置和右肩位置三个点作为顶点可以获得一个三角形,称为头肩三角形。可以用该头肩三角形代表上述头肩部位。示例性地,可以计算两个头肩三角形的IoU(Intersection over Union,交除并)值,并利用该IoU值衡量二者的重叠情况。IoU值表示两个头肩三角形的交集部分(即重叠部分)的面积与并集部分的面积之比。IoU值越大,可以认为两个头肩三角形的重叠比例越大。由于不同行人的头部及肩部通常会存在一定的偏移,因此不同行人的头肩三角形的IoU值一般不会很高,因此,与对应于两个行人的矩形行人框相比,对应于两个行人的头肩三角形能够更容易地区分出两个行人。当然,上述头肩三角形仅是示例,用于代表头肩部位的区域可以是具有其他形状的区域。
在步骤S260,根据重叠情况过滤行人框,以获得行人检测结果。
步骤S250和S260可以视为基于头肩部位的NMS。例如,假如两个头肩部位的重叠比例超过某预设阈值,则可以认为这两个头肩部位属于同一行人,可以保留其中头肩部位的置信度高的头肩部位及与其对应的行人框,同时丢弃头肩部位的置信度低的头肩部位及与其对应的行人框。头肩部位的置信度可以基于头部位置的置信度、左肩位置的置信度、右肩位置的置信度和行人框的置信度计算获得,这将在下文描述。此外,对于多个行人框中不具有对应的头部位置、左肩位置和右肩位置的行人框,可以保留这些行人框或者采用传统的基于行人框的NMS进行过滤。
本领域技术人员可以理解,图2所示的行人检测方法200的各步骤的执行顺序仅是示例而非限制,例如,步骤S220、S230和S240的执行顺序可以任意设定。
根据本发明实施例的行人检测方法,由于基于头肩部位的重叠情况而非行人框的重叠情况来过滤行人框,因此可以避免用某一行人的行人框过滤掉其他行人的行人框的问题,从而可以减少行人检测中的假阴性,提高行人检测精度。
示例性地,根据本发明实施例的行人检测方法可以在具有存储器和处理器的设备、装置或者系统中实现。
根据本发明实施例的行人检测方法可以部署在图像采集端处,例如,可以部署在小区门禁系统的图像采集端或者部署在诸如车站、商场、银行等公共场所的安防监控系统的图像采集端。替代地,根据本发明实施例的行人检测方法还可以分布地部署在服务器端(或云端)和客户端处。例如,可以在客户端采集图像,客户端将采集到的图像传送给服务器端(或云端),由服务器端(或云端)进行行人检测。
根据本发明实施例,步骤S230可以包括:检测待处理图像中的行人的头部,以获得至少一个头部框;以及对于至少部分行人框中的每一个,从至少一个头部框中选择中心点与该行人框的中心点之间的距离小于预设头部阈值并且中心点距离该行人框的中心点最近的头部框作为与该行人框对应的头部框,并确定与该行人框对应的头部框的中心点为与该行人框对应的头部位置;步骤S240可以包括:检测待处理图像中的行人的肩部,以确定至少一个左肩位置和至少一个右肩位置;从至少一个左肩位置中选择与该行人框的中心点之间的距离小于预设左肩阈值并且距离该行人框的中心点最近的左肩位置作为与该行人框对应的左肩位置;以及从至少一个右肩位置中选择与该行人框的中心点之间的距离小于预设右肩阈值并且距离该行人框的中心点最近的右肩位置作为与该行人框对应的右肩位置。
如上文所述,通过头部检测可以获得若干头部框,并且可以将行人框与头部框进行关联,以确定与至少部分行人框一一对应的头部框,进而确定与至少部分行人框一一对应的头部位置。在关联时,可以根据头部框与行人框的中心点之间的距离来确定与每个行人框对应的头部框。例如,对于某一行人框来说,可以首先找出中心点与该行人框的中心点之间的距离小于预设头部阈值的头部框。如果没有,则该行人框不具有对应的头部框。如果有,可以从所找出的所有头部框中找出中心点距离行人框的中心点最近的那个头部框作为与该行人框对应的头部框。随后,可以确定头部框的中心点为头部位置,从而确定与行人框对应的头部位置。
通过肩部检测可以获得若干左肩位置和右肩位置,并且可以将行人框与左肩位置和右肩位置分别关联。关联方式与头部框和行人框的关联方式类似,不再赘述。
预设头部阈值、预设左肩阈值和预设右肩阈值均可以根据需要设定,本发明不对此进行限制。
上述基于距离关联行人框与对应的头部框、左肩位置和右肩位置的方式非常简单,易于实现。
根据本发明实施例,行人信息还可以包括多个行人框中的每个行人框的行人置信度,头部信息还可以包括与至少部分行人框一一对应的头部位置的头部置信度,肩部信息还包括与至少部分行人框一一对应的左肩位置的左肩置信度和与所述至少部分行人框一一对应的右肩位置的右肩置信度,
在步骤S260之前,行人检测方法200还可以包括:对于至少部分行人框中的每一个,根据该行人框的行人置信度、与该行人框对应的头部位置的头部置信度、与该行人框对应的左肩位置的左肩置信度和与该行人框对应的右肩位置的右肩置信度,计算与该行人框对应的头肩三角形的三角形置信度。在一个实施例中,可以对该行人框的行人置信度、与该行人框对应的头部位置的头部置信度、与该行人框对应的左肩位置的左肩置信度和与该行人框对应的右肩位置的右肩置信度求和、求平均、加权求和或者加权求平均,以计算与该行人框对应的头肩三角形的三角形置信度。应该理解的是,本发明并不局限于此,根据实际应用和需求,也可以采用其它的计算方法根据该行人框的行人置信度、与该行人框对应的头部位置的头部置信度、与该行人框对应的左肩位置的左肩置信度和与该行人框对应的右肩位置的右肩置信度,计算与该行人框对应的头肩三角形的三角形置信度。步骤S260可以包括:如果与至少部分行人框一一对应的头肩三角形中存在至少一组头肩三角形,其中至少一组头肩三角形中的每组头肩三角形包括重叠比例大于预设重叠阈值的多个头肩三角形,则对于至少一组头肩三角形中的每组头肩三角形,选择其中三角形置信度最高的头肩三角形之外的剩余头肩三角形;以及过滤多个行人框中的、与所选择的所有头肩三角形对应的行人框,以获得行人检测结果。
示例性地,利用多个卷积神经网络分别检测行人整体、行人的头部和肩部,在获得行人框、头部框及头部位置、左肩位置和右肩位置时,还可以获得各自的置信度。对于每个行人框来说,可以对与其相关的行人置信度、头部置信度、左肩置信度和右肩置信度进行某种运算,例如求和、求平均、加权求和或者加权求平均,来计算获得一个总的置信度。该总的置信度可以用来表示对应行人的头肩部位的置信度。在头肩部位是头肩三角形的情况下,总的置信度为头肩三角形的三角形置信度。
如果多个头肩三角形存在重叠,并且重叠比例(IoU值)大于预设重叠阈值,则可以认为该多个头肩三角形属于同一行人,因此可以保留该多个头肩三角形中的某一个头肩三角形及其对应的行人框。在与至少部分行人框一一对应的头肩三角形中,可能存在一组或多组存在重叠并且重叠比例大于预设重叠阈值的多个头肩三角形。可以从每组头肩三角形中找出三角形置信度最高的头肩三角形及剩余头肩三角形。随后,从多个行人框中找出与所选出的剩余头肩三角形对应的所有行人框并将找出的这些行人框丢弃,剩余的行人框即为最终所需的行人检测结果。
示例性地,上述多个头肩三角形的重叠比例可以指多个头肩三角形中的任意两个头肩三角形之间的重叠比例,也可以指多个头肩三角形中特定三角形之外的其余头肩三角形与特定三角形之间的重叠比例。
预设重叠阈值可以根据需要设定,本发明不对此进行限制。
通过上述方法,可以保留与置信度高的头肩部位对应的行人框,丢弃那些所对应的头肩部位与置信度高的头肩部位重叠的多余行人框,实现基于头肩部位的重叠情况而非行人框的重叠情况来过滤行人框的目的。上述方法可以理解为是基于头肩部位的NMS。
根据本发明实施例,在步骤S220之前,行人检测方法200还可以包括:利用第一卷积神经网络提取待处理图像的特征;步骤S220可以包括:将待处理图像的特征输入第二卷积神经网络,以获得行人信息;步骤S230包括:将待处理图像的特征输入第三卷积神经网络,以获得至少一个头部框和每个头部框的头部置信度;以及从至少一个头部框中选择与至少部分行人框一一对应的头部框,以获得头部信息;步骤S240可以包括:将待处理图像的特征输入第四卷积神经网络,以获得左肩特征图和右肩特征图,其中,左肩特征图与待处理图像大小一致并且所述左肩特征图的每个像素的像素值表示待处理图像的、与该像素坐标一致的像素属于左肩的左肩置信度,右肩特征图与待处理图像大小一致并且所述右肩特征图的每个像素的像素值表示待处理图像的、与该像素坐标一致的像素属于右肩的右肩置信度;以及从左肩特征图所指示的至少一个左肩位置中选择与至少部分行人框一一对应的左肩位置,并从右肩特征图所指示的至少一个右肩位置中选择与至少部分行人框一一对应的右肩位置,以获得肩部信息。
参考图3,示出根据本发明一个实施例的行人检测方法的数据处理流程的示意图。如图3所示,在获取待处理图像之后,可以将待处理图像输入第一卷积神经网络(Convolutional Neural Network,CNN)中进行特征提取。待处理图像可以是静态的图像,也可以是一段视频中的任一视频帧。在第一卷积神经网络的输出端,可以获得至少一个图像特征图(feature map)。第一卷积神经网络输出的图像特征图可以代表待处理图像的特征。示例性地,第一卷积神经网络可以采用在ImagNet数据集上进行预训练获得的VGG模型或者残差网络(ResNet)模型实现。采用第一卷积神经网络可以提取待处理图像中的有价值的信息,随后可以基于此信息检测待处理图像中的行人的整体、头部、肩部等信息,如下文所述。上述第一卷积神经网络可以是预先采用大量的训练图像训练好的。
随后,基于待处理图像的特征检测待处理图像中的行人。可以通过将第一卷积神经网络输出的图像特征图输入第二卷积神经网络来检测待处理图像中的行人。第二卷积神经网络可以输出若干行人框及每个行人框的行人置信度。示例性地,第二卷积神经网络可以采用加速版基于区域的卷积神经网络(Faster-RCNN)来实现。
随后,基于待处理图像的特征检测待处理图像中的行人的头部。与检测行人的方式类似地,可以通过将第一卷积神经网络输出的图像特征图输入第三卷积神经网络来检测待处理图像中的行人的头部。第三卷积神经网络可以输出若干头部框及每个头部框的头部置信度。示例性地,第三卷积神经网络可以采用Faster-RCNN来实现。从检测获得的头部框中选择与每个行人框对应的头部框并确定对应的头部位置的方式可以参考上文描述,此处不赘述。
随后,基于待处理图像的特征检测待处理图像中的行人的肩部。继续参考图3,可以通过将第一卷积神经网络输出的图像特征图输入第四卷积神经网络,例如,全卷积网络(Fully-Convolutional Network,FCN)来检测待处理图像中的行人的肩部。本文所述的全卷积网络可以是类似于用于语义分割的全卷积网络。在将待处理图像的特征输入第四卷积神经网络(例如,全卷积网络)之后,可以在第四卷积神经网络(例如,全卷积网络)的输出端获得两张特征图,即左肩特征图和右肩特征图。以左肩特征图为例,可以选择其中像素值大于预设置信度阈值的像素,并将待处理图像的、与从左肩特征图中所选择出的像素坐标一致的像素所在的位置确定为左肩位置。由此,可以确定至少一个左肩位置。随后,可以从已确定的至少一个左肩位置中找出与每个行人框对应的左肩位置。确定与每个行人框对应的左肩位置的方式可以参考上文描述,不再赘述。右肩位置特征图的处理与左肩特征图的处理类似,不再赘述。
与第一卷积神经网络类似地,第二卷积神经网络、第三卷积神经网络和第四卷积神经网络可以是预先采用大量的训练图像训练好的。各卷积神经网络训练方式将在下文描述,此处不做赘述。
卷积神经网络是能够自主学习的网络模型,利用这些训练好的网络模型可以提取图像中的有价值信息,并且可以获得非常准确的检测结果(例如上述行人框、头部框、左肩位置、右肩位置等)。
根据本发明实施例,行人检测方法200还可以包括:获取训练图像和标注数据,其中,标注数据包括训练图像中的每个行人所对应的行人框、头部框、左肩位置和右肩位置;以训练图像中的每个行人所对应的行人框作为利用第一卷积神经网络和第二卷积神经网络对训练图像进行处理所获得的行人框的目标值构建第一损失函数,以训练图像中的每个行人所对应的头部框作为利用第一卷积神经网络和第三卷积神经网络对训练图像进行处理所获得的头部框的目标值构建第二损失函数,以训练图像中的每个行人所对应的左肩位置和右肩位置作为利用第一卷积神经网络和第四卷积神经网络对训练图像进行处理所获得的左肩位置和右肩位置的目标值构建第三损失函数;以及至少利用第一损失函数、第二损失函数和第三损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络和第四卷积神经网络中的参数进行训练。
使用事先标注好的训练图像中的每个行人的行人位置,可以计算行人检测的初步结果(本文所述多个行人框)的损失函数,即第一损失函数。使用事先标注好的训练图像中的每个行人的头部位置,可以计算头部检测结果的损失函数,即第二损失函数。使用事先标注好的训练图像中的每个行人的左肩位置和右肩位置,可以计算肩部检测结果的损失函数,即第三损失函数。参考图3,示出了第一损失函数、第二损失函数和第三损失函数的位置。
利用上述损失函数进行多轮训练,第一卷积神经网络、第二卷积神经网络、第三卷积神经网络和第四卷积神经网络中的参数会逐渐收敛到一个合理值。最终训练获得的网络模型就可以用于待处理图像的行人检测。在训练各卷积神经网络和第四卷积神经网络中的参数的过程中,可以采用常规的反向传播算法进行训练,本领域技术人员可以理解反向传播算法的实现方式,本文不对此进行赘述。
传统的行人检测方法主要依靠全局的特征做行人检测,但是行人本身具有一定的自由度,例如手部、脚部会有不同的姿态(pose),导致此类全局特征往往很难覆盖所有情况。因此,传统的行人检测方法会存在一定的漏检(miss),也可能导致一些假阳性(falsepositive,即本来不是行人的部分被错误地认为是行人而输出)。而根据本发明实施例,除行人的全局特征之外,还可以考虑头部、肩部等部位的特征,通过多任务学习的方式来训练行人检测所使用的网络模型,这样可以更好地利用身体多个部分的信息的相关性,来优化各部分的检测结果。由于行人整体检测、头部检测和肩部检测这些任务是相辅相成、相互影响的,因此对它们使用一套网络模型来一起训练和预测有明显的优势,通过这种方式可以训练获得比较优秀的网络模型。使用训练好的网络模型来进行行人检测时,可以减少行人检测中的假阳性,提高行人检测精度。
根据本发明实施例,标注数据还可以包括训练图像中的每个行人所对应的脸部框;行人检测方法还可以包括:以训练图像中的每个行人所对应的脸部框作为利用第一卷积神经网络和第五卷积神经网络对训练图像进行处理所获得的脸部框的目标值构建第四损失函数,其中,第一卷积神经网络的输出层与第五卷积神经网络的输入层连接;至少利用第一损失函数、第二损失函数和第三损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络和第四卷积神经网络中的参数进行训练可以包括:利用第一损失函数、第二损失函数、第三损失函数和第四损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络、第四卷积神经网络和第五卷积神经网络中的参数进行训练。
在训练用于行人检测的网络模型的过程中,可以加入脸部检测。也就是说,可以将第一卷积神经网络在处理训练图像之后所输出的图像特征图输入第五卷积神经网络,第五卷积神经网络可以输出若干脸部框及每个脸部框的脸部置信度。与行人框和头部框类似地,脸部框也可以是矩形框,用于指示待处理图像中可能存在脸部的区域。脸部置信度用于表示脸部框中存在脸部的概率。
使用事先标注好的训练图像中的每个行人的脸部位置,可以计算脸部检测结果的损失函数,即第四损失函数(图3未示出)。在训练过程中,利用第一损失函数、第二损失函数、第三损失函数和第四损失函数一起训练第一卷积神经网络、第二卷积神经网络、第三卷积神经网络、第四卷积神经网络和第五卷积神经网络。
加入脸部特征可以进一步帮助训练获得更优秀的网络模型。利用行人整体检测、头部检测、肩部检测和脸部检测训练获得的第一卷积神经网络、第二卷积神经网络、第三卷积神经网络和第四卷积神经网络可以提取出更准确的行人框、头部框、左肩位置和右肩位置,进而可以获得更准确的行人检测结果。
在实际的行人检测过程中,在对待处理图像进行处理时,可以在第五卷积神经网络的输出端获得与待处理图像相关的脸部检测结果,该结果可以用于其他处理。
根据本发明另一方面,提供一种行人检测装置。图4示出了根据本发明一个实施例的行人检测装置400的示意性框图。
如图4所示,根据本发明实施例的行人检测装置400包括待处理图像获取模块410、第一检测模块420、第二检测模块430、第三检测模块440、重叠计算模块450和过滤模块460。所述各个模块可分别执行上文中结合图2-3描述的行人检测方法的各个步骤/功能。以下仅对该行人检测装置400的各部件的主要功能进行描述,而省略以上已经描述过的细节内容。
待处理图像获取模块410用于获取待处理图像。待处理图像获取模块410可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。
第一检测模块420用于检测待处理图像中的行人,以获得行人信息,其中,行人信息包括多个行人框。第一检测模块420可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。
第二检测模块430用于检测待处理图像中的行人的头部,以获得头部信息,其中,头部信息包括与多个行人框中的至少部分行人框一一对应的头部位置。第二检测模块430可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。
第三检测模块440用于检测待处理图像中的行人的肩部,以获得肩部信息,其中,肩部信息包括与至少部分行人框一一对应的左肩位置和右肩位置。第三检测模块440可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。
重叠计算模块450用于根据与至少部分行人框一一对应的头部位置、左肩位置和右肩位置计算与至少部分行人框一一对应的头肩部位的重叠情况。重叠计算模块450可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。
过滤模块460用于根据重叠情况过滤行人框,以获得行人检测结果。过滤模块460可以由图1所示的电子设备中的处理器102运行存储装置104中存储的程序指令来实现。
根据本发明实施例,第二检测模块430包括:头部检测子模块,用于检测待处理图像中的行人的头部,以获得至少一个头部框;以及头部框选择子模块,用于对于至少部分行人框中的每一个,从至少一个头部框中选择中心点与该行人框的中心点之间的距离小于预设头部阈值并且中心点距离该行人框的中心点最近的头部框作为与该行人框对应的头部框,并确定与该行人框对应的头部框的中心点为与该行人框对应的头部位置;第三检测模块440包括:肩部检测子模块,用于检测待处理图像中的行人的肩部,以确定至少一个左肩位置和至少一个右肩位置;左肩选择子模块,用于从至少一个左肩位置中选择与该行人框的中心点之间的距离小于预设左肩阈值并且距离该行人框的中心点最近的左肩位置作为与该行人框对应的左肩位置;以及右肩选择子模块,用于从至少一个右肩位置中选择与该行人框的中心点之间的距离小于预设右肩阈值并且距离该行人框的中心点最近的右肩位置作为与该行人框对应的右肩位置。
根据本发明实施例,对于至少部分行人框中的每一个,与该行人框对应的头肩部位是以与该行人框对应的头部位置、左肩位置和右肩位置为顶点的头肩三角形。
根据本发明实施例,行人信息还包括多个行人框中的每个行人框的行人置信度,头部信息还包括与至少部分行人框一一对应的头部位置的头部置信度,肩部信息还包括与至少部分行人框一一对应的左肩位置的左肩置信度和与至少部分行人框一一对应的右肩位置的右肩置信度,行人检测装置400还包括:置信度计算模块,用于对于至少部分行人框中的每一个,根据该行人框的行人置信度、与该行人框对应的头部位置的头部置信度、与该行人框对应的左肩位置的左肩置信度和与该行人框对应的右肩位置的右肩置信度,计算与该行人框对应的头肩三角形的三角形置信度;过滤模块460包括:三角形选择子模块,用于如果与至少部分行人框一一对应的头肩三角形中存在至少一组头肩三角形,其中至少一组头肩三角形中的每组头肩三角形包括重叠比例大于预设重叠阈值的多个头肩三角形,则对于至少一组头肩三角形中的每组头肩三角形,选择其中三角形置信度最高的头肩三角形之外的剩余头肩三角形;以及过滤子模块,用于过滤多个行人框中的、与所选择的所有头肩三角形对应的行人框,以获得行人检测结果。
根据本发明实施例,行人检测装置400还包括:特征提取模块,用于在所述第一检测模块检测所述待处理图像中的行人以获得行人信息之前,利用第一卷积神经网络提取待处理图像的特征;第一检测模块420包括:第一输入子模块,用于将待处理图像的特征输入第二卷积神经网络,以获得行人信息;第二检测模块430包括:第二输入子模块,用于将待处理图像的特征输入第三卷积神经网络,以获得至少一个头部框和每个头部框的头部置信度;以及第一选择子模块,用于从至少一个头部框中选择与至少部分行人框一一对应的头部框,以获得头部信息;第三检测模块440包括:第三输入子模块,用于将待处理图像的特征输入第四卷积神经网络,例如全卷积网络,以获得左肩特征图和右肩特征图,其中,左肩特征图与待处理图像大小一致并且所述左肩特征图的每个像素的像素值表示待处理图像的、与该像素坐标一致的像素属于左肩的左肩置信度,右肩特征图与待处理图像大小一致并且所述右肩特征图的每个像素的像素值表示待处理图像的、与该像素坐标一致的像素属于右肩的右肩置信度;以及第二选择子模块,用于从左肩特征图所指示的至少一个左肩位置中选择与至少部分行人框一一对应的左肩位置,并从右肩特征图所指示的至少一个右肩位置中选择与至少部分行人框一一对应的右肩位置,以获得肩部信息。
根据本发明实施例,行人检测装置400还包括:训练图像获取模块,用于获取训练图像和标注数据,其中,标注数据包括训练图像中的每个行人所对应的行人框、头部框、左肩位置和右肩位置;第一构建模块,用于以训练图像中的每个行人所对应的行人框作为利用第一卷积神经网络和第二卷积神经网络对训练图像进行处理所获得的行人框的目标值构建第一损失函数,以训练图像中的每个行人所对应的头部框作为利用第一卷积神经网络和第三卷积神经网络对训练图像进行处理所获得的头部框的目标值构建第二损失函数,以训练图像中的每个行人所对应的左肩位置和右肩位置作为利用第一卷积神经网络和第四卷积神经网络对训练图像进行处理所获得的左肩位置和右肩位置的目标值构建第三损失函数;以及训练模块,用于至少利用第一损失函数、第二损失函数和第三损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络和第四卷积神经网络中的参数进行训练。
根据本发明实施例,标注数据还包括训练图像中的每个行人所对应的脸部框;行人检测装置400还包括:第二构建模块,用于以训练图像中的每个行人所对应的脸部框作为利用第一卷积神经网络和第五卷积神经网络对训练图像进行处理所获得的脸部框的目标值构建第四损失函数,其中,第一卷积神经网络的输出层与第五卷积神经网络的输入层连接;训练模块包括:训练子模块,用于利用第一损失函数、第二损失函数、第三损失函数和第四损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络、第四卷积神经网络和第五卷积神经网络中的参数进行训练。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
图5示出了根据本发明一个实施例的行人检测系统500的示意性框图。行人检测系统500包括图像采集装置510、存储装置520、以及处理器530。
图像采集装置510用于采集待处理图像。图像采集装置510是可选的,行人检测系统500可以不包括图像采集装置510。在这种情况下,可以利用其他图像采集装置采集用于行人检测的图像,并将采集的图像发送给行人检测系统500。
所述存储装置520存储用于实现根据本发明实施例的行人检测方法中的相应步骤的程序代码。
所述处理器530用于运行所述存储装置520中存储的程序代码,以执行根据本发明实施例的行人检测方法的相应步骤,并且用于实现根据本发明实施例的行人检测装置400中的待处理图像获取模块410、第一检测模块420、第二检测模块430、第三检测模块440、重叠计算模块450和过滤模块460。
在一个实施例中,所述程序代码被所述处理器530运行时使所述行人检测系统500执行以下步骤:获取待处理图像;检测待处理图像中的行人,以获得行人信息,其中,行人信息包括多个行人框;检测待处理图像中的行人的头部,以获得头部信息,其中,头部信息包括与多个行人框中的至少部分行人框一一对应的头部位置;检测待处理图像中的行人的肩部,以获得肩部信息,其中,肩部信息包括与至少部分行人框一一对应的左肩位置和右肩位置;根据与至少部分行人框一一对应的头部位置、左肩位置和右肩位置计算与至少部分行人框一一对应的头肩部位的重叠情况;以及根据重叠情况过滤行人框,以获得行人检测结果。
在一个实施例中,所述程序代码被所述处理器530运行时使所述行人检测系统500所执行的检测待处理图像中的行人的头部,以获得头部信息的步骤包括:检测待处理图像中的行人的头部,以获得至少一个头部框;以及对于至少部分行人框中的每一个,从至少一个头部框中选择中心点与该行人框的中心点之间的距离小于预设头部阈值并且中心点距离该行人框的中心点最近的头部框作为与该行人框对应的头部框,并确定与该行人框对应的头部框的中心点为与该行人框对应的头部位置;所述程序代码被所述处理器530运行时使所述行人检测系统500所执行的检测待处理图像中的行人的肩部,以获得肩部信息的步骤包括:检测待处理图像中的行人的肩部,以确定至少一个左肩位置和至少一个右肩位置;从至少一个左肩位置中选择与该行人框的中心点之间的距离小于预设左肩阈值并且距离该行人框的中心点最近的左肩位置作为与该行人框对应的左肩位置;以及从至少一个右肩位置中选择与该行人框的中心点之间的距离小于预设右肩阈值并且距离该行人框的中心点最近的右肩位置作为与该行人框对应的右肩位置。
在一个实施例中,对于至少部分行人框中的每一个,与该行人框对应的头肩部位是以与该行人框对应的头部位置、左肩位置和右肩位置为顶点的头肩三角形。
在一个实施例中,行人信息还包括多个行人框中的每个行人框的行人置信度,头部信息还包括与至少部分行人框一一对应的头部位置的头部置信度,肩部信息还包括与至少部分行人框一一对应的左肩位置的左肩置信度和与至少部分行人框一一对应的右肩位置的右肩置信度,在所述程序代码被所述处理器530运行时使所述行人检测系统500所执行的根据重叠情况过滤行人框,以获得行人检测结果的步骤之前,所述程序代码被所述处理器530运行时还使所述行人检测系统500执行:对于至少部分行人框中的每一个,根据该行人框的行人置信度、与该行人框对应的头部位置的头部置信度、与该行人框对应的左肩位置的左肩置信度和与该行人框对应的右肩位置的右肩置信度,计算与该行人框对应的头肩三角形的三角形置信度;所述程序代码被所述处理器530运行时使所述行人检测系统500所执行的根据重叠情况过滤行人框,以获得行人检测结果的步骤包括:如果与至少部分行人框一一对应的头肩三角形中存在至少一组头肩三角形,其中至少一组头肩三角形中的每组头肩三角形包括重叠比例大于预设重叠阈值的多个头肩三角形,则对于至少一组头肩三角形中的每组头肩三角形,选择其中三角形置信度最高的头肩三角形之外的剩余头肩三角形;以及过滤多个行人框中的、与所选择的所有头肩三角形对应的行人框,以获得行人检测结果。
在一个实施例中,在所述程序代码被所述处理器530运行时使所述行人检测系统500所执行的检测待处理图像中的行人,以获得行人信息的步骤之前,所述程序代码被所述处理器530运行时还使所述行人检测系统500执行:利用第一卷积神经网络提取待处理图像的特征;所述程序代码被所述处理器530运行时使所述行人检测系统500所执行的检测待处理图像中的行人,以获得行人信息的步骤包括:将待处理图像的特征输入第二卷积神经网络,以获得行人信息;所述程序代码被所述处理器530运行时使所述行人检测系统500所执行的检测待处理图像中的行人的头部,以获得头部信息的步骤包括:将待处理图像的特征输入第三卷积神经网络,以获得至少一个头部框和每个头部框的头部置信度;以及从至少一个头部框中选择与至少部分行人框一一对应的头部框,以获得头部信息;所述程序代码被所述处理器530运行时使所述行人检测系统500所执行的检测待处理图像中的行人的肩部,以获得肩部信息的步骤包括:将待处理图像的特征输入第四卷积神经网络,以获得左肩特征图和右肩特征图,其中,左肩特征图与待处理图像大小一致并且所述左肩特征图的每个像素的像素值表示待处理图像的、与该像素坐标一致的像素属于左肩的左肩置信度,右肩特征图与待处理图像大小一致并且所述右肩特征图的每个像素的像素值表示待处理图像的、与该像素坐标一致的像素属于右肩的右肩置信度;以及从左肩特征图所指示的至少一个左肩位置中选择与至少部分行人框一一对应的左肩位置,并从右肩特征图所指示的至少一个右肩位置中选择与至少部分行人框一一对应的右肩位置,以获得肩部信息。
在一个实施例中,所述程序代码被所述处理器530运行时还使所述行人检测系统500执行:获取训练图像和标注数据,其中,标注数据包括训练图像中的每个行人所对应的行人框、头部框、左肩位置和右肩位置;以训练图像中的每个行人所对应的行人框作为利用第一卷积神经网络和第二卷积神经网络对训练图像进行处理所获得的行人框的目标值构建第一损失函数,以训练图像中的每个行人所对应的头部框作为利用第一卷积神经网络和第三卷积神经网络对训练图像进行处理所获得的头部框的目标值构建第二损失函数,以训练图像中的每个行人所对应的左肩位置和右肩位置作为利用第一卷积神经网络和第四节卷积神经网络对训练图像进行处理所获得的左肩位置和右肩位置的目标值构建第三损失函数;以及至少利用第一损失函数、第二损失函数和第三损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络和第四卷积神经网络中的参数进行训练。
在一个实施例中,标注数据还包括训练图像中的每个行人所对应的脸部框;所述程序代码被所述处理器530运行时还使所述行人检测系统500执行:以训练图像中的每个行人所对应的脸部框作为利用第一卷积神经网络和第五卷积神经网络对训练图像进行处理所获得的脸部框的目标值构建第四损失函数,其中,第一卷积神经网络的输出层与第五卷积神经网络的输入层连接;所述程序代码被所述处理器530运行时使所述行人检测系统500所执行的至少利用第一损失函数、第二损失函数和第三损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络和第四卷积神经网络中的参数进行训练的步骤包括:利用第一损失函数、第二损失函数、第三损失函数和第四损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络、第四卷积神经网络和第五卷积神经网络中的参数进行训练。
此外,根据本发明实施例,还提供了一种存储介质,在所述存储介质上存储了程序指令,在所述程序指令被计算机或处理器运行时用于执行本发明实施例的行人检测方法的相应步骤,并且用于实现根据本发明实施例的行人检测装置中的相应模块。所述存储介质例如可以包括智能电话的存储卡、平板电脑的存储部件、个人计算机的硬盘、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器、或者上述存储介质的任意组合。
在一个实施例中,所述计算机程序指令在被计算机或处理器运行时可以使得计算机或处理器实现根据本发明实施例的行人检测装置的各个功能模块,并且/或者可以执行根据本发明实施例的行人检测方法。
在一个实施例中,所述计算机程序指令在被计算机运行时使所述计算机执行以下步骤:获取待处理图像;检测待处理图像中的行人,以获得行人信息,其中,行人信息包括多个行人框;检测待处理图像中的行人的头部,以获得头部信息,其中,头部信息包括与多个行人框中的至少部分行人框一一对应的头部位置;检测待处理图像中的行人的肩部,以获得肩部信息,其中,肩部信息包括与至少部分行人框一一对应的左肩位置和右肩位置;根据与至少部分行人框一一对应的头部位置、左肩位置和右肩位置计算与至少部分行人框一一对应的头肩部位的重叠情况;以及根据重叠情况过滤行人框,以获得行人检测结果。
在一个实施例中,所述计算机程序指令在被计算机运行时使所述计算机所执行的检测待处理图像中的行人的头部,以获得头部信息的步骤包括:检测待处理图像中的行人的头部,以获得至少一个头部框;以及对于至少部分行人框中的每一个,从至少一个头部框中选择中心点与该行人框的中心点之间的距离小于预设头部阈值并且中心点距离该行人框的中心点最近的头部框作为与该行人框对应的头部框,并确定与该行人框对应的头部框的中心点为与该行人框对应的头部位置;所述计算机程序指令在被计算机运行时使所述计算机所执行的检测待处理图像中的行人的肩部,以获得肩部信息的步骤包括:检测待处理图像中的行人的肩部,以确定至少一个左肩位置和至少一个右肩位置;从至少一个左肩位置中选择与该行人框的中心点之间的距离小于预设左肩阈值并且距离该行人框的中心点最近的左肩位置作为与该行人框对应的左肩位置;以及从至少一个右肩位置中选择与该行人框的中心点之间的距离小于预设右肩阈值并且距离该行人框的中心点最近的右肩位置作为与该行人框对应的右肩位置。
在一个实施例中,对于至少部分行人框中的每一个,与该行人框对应的头肩部位是以与该行人框对应的头部位置、左肩位置和右肩位置为顶点的头肩三角形。
在一个实施例中,行人信息还包括多个行人框中的每个行人框的行人置信度,头部信息还包括与至少部分行人框一一对应的头部位置的头部置信度,肩部信息还包括与至少部分行人框一一对应的左肩位置的左肩置信度和与至少部分行人框一一对应的右肩位置的右肩置信度,在所述计算机程序指令在被计算机运行时使所述计算机所执行的根据重叠情况过滤行人框,以获得行人检测结果的步骤之前,所述计算机程序指令在被计算机运行时还使所述计算机执行:对于至少部分行人框中的每一个,根据该行人框的行人置信度、与该行人框对应的头部位置的头部置信度、与该行人框对应的左肩位置的左肩置信度和与该行人框对应的右肩位置的右肩置信度,计算与该行人框对应的头肩三角形的三角形置信度;所述计算机程序指令在被计算机运行时使所述计算机所执行的根据重叠情况过滤行人框,以获得行人检测结果的步骤包括:如果与至少部分行人框一一对应的头肩三角形中存在至少一组头肩三角形,其中至少一组头肩三角形中的每组头肩三角形包括重叠比例大于预设重叠阈值的多个头肩三角形,则对于至少一组头肩三角形中的每组头肩三角形,选择其中三角形置信度最高的头肩三角形之外的剩余头肩三角形;以及过滤多个行人框中的、与所选择的所有头肩三角形对应的行人框,以获得行人检测结果。
在一个实施例中,在所述计算机程序指令在被计算机运行时使所述计算机所执行的检测待处理图像中的行人,以获得行人信息的步骤之前,所述计算机程序指令在被计算机运行时还使所述计算机执行:利用第一卷积神经网络提取待处理图像的特征;所述计算机程序指令在被计算机运行时使所述计算机所执行的检测待处理图像中的行人,以获得行人信息的步骤包括:将待处理图像的特征输入第二卷积神经网络,以获得行人信息;所述计算机程序指令在被计算机运行时使所述计算机所执行的检测待处理图像中的行人的头部,以获得头部信息的步骤包括:将待处理图像的特征输入第三卷积神经网络,以获得至少一个头部框和每个头部框的头部置信度;以及从至少一个头部框中选择与至少部分行人框一一对应的头部框,以获得头部信息;所述计算机程序指令在被计算机运行时使所述计算机所执行的检测待处理图像中的行人的肩部,以获得肩部信息的步骤包括:将待处理图像的特征输入第四卷积神经网络,以获得左肩特征图和右肩特征图,其中,左肩特征图与待处理图像大小一致并且所述左肩特征图的每个像素的像素值表示待处理图像的、与该像素坐标一致的像素属于左肩的左肩置信度,右肩特征图与待处理图像大小一致并且所述右肩特征图的每个像素的像素值表示待处理图像的、与该像素坐标一致的像素属于右肩的右肩置信度;以及从左肩特征图所指示的至少一个左肩位置中选择与至少部分行人框一一对应的左肩位置,并从右肩特征图所指示的至少一个右肩位置中选择与至少部分行人框一一对应的右肩位置,以获得肩部信息。
在一个实施例中,所述计算机程序指令在被计算机运行时还使所述计算机执行:获取训练图像和标注数据,其中,标注数据包括训练图像中的每个行人所对应的行人框、头部框、左肩位置和右肩位置;以训练图像中的每个行人所对应的行人框作为利用第一卷积神经网络和第二卷积神经网络对训练图像进行处理所获得的行人框的目标值构建第一损失函数,以训练图像中的每个行人所对应的头部框作为利用第一卷积神经网络和第三卷积神经网络对训练图像进行处理所获得的头部框的目标值构建第二损失函数,以训练图像中的每个行人所对应的左肩位置和右肩位置作为利用第一卷积神经网络和第四卷积神经网络对训练图像进行处理所获得的左肩位置和右肩位置的目标值构建第三损失函数;以及至少利用第一损失函数、第二损失函数和第三损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络和第四卷积神经网络中的参数进行训练。
在一个实施例中,标注数据还包括训练图像中的每个行人所对应的脸部框;所述计算机程序指令在被计算机运行时还使所述计算机执行:以训练图像中的每个行人所对应的脸部框作为利用第一卷积神经网络和第五卷积神经网络对训练图像进行处理所获得的脸部框的目标值构建第四损失函数,其中,第一卷积神经网络的输出层与第五卷积神经网络的输入层连接;所述计算机程序指令在被计算机运行时使所述计算机所执行的至少利用第一损失函数、第二损失函数和第三损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络和第四卷积神经网络中的参数进行训练的步骤包括:利用第一损失函数、第二损失函数、第三损失函数和第四损失函数对第一卷积神经网络、第二卷积神经网络、第三卷积神经网络、第四卷积神经网络和第五卷积神经网络中的参数进行训练。
根据本发明实施例的行人检测系统中的各模块可以通过根据本发明实施例的实施行人检测的电子设备的处理器运行在存储器中存储的计算机程序指令来实现,或者可以在根据本发明实施例的计算机程序产品的计算机可读存储介质中存储的计算机指令被计算机运行时实现。
根据本发明实施例的行人检测方法及装置,由于基于头肩部位的重叠情况而非行人框的重叠情况来过滤行人框,因此可以避免用某一行人的行人框过滤掉其他行人的行人框的问题,从而可以减少行人检测中的假阴性,提高行人检测精度。
尽管这里已经参考附图描述了示例实施例,应理解上述示例实施例仅仅是示例性的,并且不意图将本发明的范围限制于此。本领域普通技术人员可以在其中进行各种改变和修改,而不偏离本发明的范围和精神。所有这些改变和修改意在被包括在所附权利要求所要求的本发明的范围之内。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个设备,或一些特征可以忽略,或不执行。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该本发明的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如相应的权利要求书所反映的那样,其发明点在于可以用少于某个公开的单个实施例的所有特征的特征来解决相应的技术问题。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域的技术人员可以理解,除了特征之间相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的行人检测装置中的一些模块的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上所述,仅为本发明的具体实施方式或对具体实施方式的说明,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。本发明的保护范围应以权利要求的保护范围为准。

Claims (14)

1.一种行人检测方法,包括:
获取待处理图像;
检测所述待处理图像中的行人,以获得行人信息,其中,所述行人信息包括多个行人框;
检测所述待处理图像中的行人的头部,以获得头部信息,其中,所述头部信息包括与所述多个行人框中的至少部分行人框一一对应的头部位置;
检测所述待处理图像中的行人的肩部,以获得肩部信息,其中,所述肩部信息包括与所述至少部分行人框一一对应的左肩位置和右肩位置;
根据与所述至少部分行人框一一对应的头部位置、左肩位置和右肩位置计算与所述至少部分行人框一一对应的头肩部位的重叠情况;以及
根据所述重叠情况过滤行人框,以获得行人检测结果。
2.如权利要求1所述的行人检测方法,其中,
所述检测所述待处理图像中的行人的头部,以获得头部信息包括:
检测所述待处理图像中的行人的头部,以获得至少一个头部框;以及
对于所述至少部分行人框中的每一个,从所述至少一个头部框中选择中心点与该行人框的中心点之间的距离小于预设头部阈值并且中心点距离该行人框的中心点最近的头部框作为与该行人框对应的头部框,并确定与该行人框对应的头部框的中心点为与该行人框对应的头部位置;
所述检测所述待处理图像中的行人的肩部,以获得肩部信息包括:
检测所述待处理图像中的行人的肩部,以确定至少一个左肩位置和至少一个右肩位置;
从所述至少一个左肩位置中选择与该行人框的中心点之间的距离小于预设左肩阈值并且距离该行人框的中心点最近的左肩位置作为与该行人框对应的左肩位置;以及
从所述至少一个右肩位置中选择与该行人框的中心点之间的距离小于预设右肩阈值并且距离该行人框的中心点最近的右肩位置作为与该行人框对应的右肩位置。
3.如权利要求1所述的行人检测方法,其中,对于所述至少部分行人框中的每一个,与该行人框对应的头肩部位是以与该行人框对应的头部位置、左肩位置和右肩位置为顶点的头肩三角形。
4.如权利要求3所述的行人检测方法,其中,所述行人信息还包括所述多个行人框中的每个行人框的行人置信度,所述头部信息还包括与所述至少部分行人框一一对应的头部位置的头部置信度,所述肩部信息还包括与所述至少部分行人框一一对应的左肩位置的左肩置信度和与所述至少部分行人框一一对应的右肩位置的右肩置信度,
在所述根据所述重叠情况过滤行人框,以获得行人检测结果之前,所述行人检测方法还包括:
对于所述至少部分行人框中的每一个,根据该行人框的行人置信度、与该行人框对应的头部位置的头部置信度、与该行人框对应的左肩位置的左肩置信度和与该行人框对应的右肩位置的右肩置信度,计算与该行人框对应的头肩三角形的三角形置信度;
所述根据所述重叠情况过滤行人框,以获得行人检测结果包括:
如果与所述至少部分行人框一一对应的头肩三角形中存在至少一组头肩三角形,其中所述至少一组头肩三角形中的每组头肩三角形包括重叠比例大于预设重叠阈值的多个头肩三角形,则对于所述至少一组头肩三角形中的每组头肩三角形,选择其中三角形置信度最高的头肩三角形之外的剩余头肩三角形;以及
过滤所述多个行人框中的、与所选择的所有头肩三角形对应的行人框,以获得所述行人检测结果。
5.如权利要求1所述的行人检测方法,其中,
在所述检测所述待处理图像中的行人,以获得行人信息之前,所述行人检测方法还包括:
利用第一卷积神经网络提取所述待处理图像的特征;
所述检测所述待处理图像中的行人,以获得行人信息包括:
将所述待处理图像的特征输入第二卷积神经网络,以获得所述行人信息;
所述检测所述待处理图像中的行人的头部,以获得头部信息包括:
将所述待处理图像的特征输入第三卷积神经网络,以获得至少一个头部框和每个头部框的头部置信度;以及
从所述至少一个头部框中选择与所述至少部分行人框一一对应的头部框,以获得所述头部信息;
所述检测所述待处理图像中的行人的肩部,以获得肩部信息包括:
将所述待处理图像的特征输入第四卷积神经网络,以获得左肩特征图和右肩特征图,其中,所述左肩特征图与所述待处理图像大小一致并且所述左肩特征图中的每个像素的像素值表示所述待处理图像的、与该像素坐标一致的像素属于左肩的左肩置信度,所述右肩特征图与所述待处理图像大小一致并且所述右肩特征图中的每个像素的像素值表示所述待处理图像的、与该像素坐标一致的像素属于右肩的右肩置信度;以及
从所述左肩特征图所指示的至少一个左肩位置中选择与所述至少部分行人框一一对应的左肩位置,并从所述右肩特征图所指示的至少一个右肩位置中选择与所述至少部分行人框一一对应的右肩位置,以获得所述肩部信息。
6.如权利要求5所述的行人检测方法,其中,所述行人检测方法还包括:
获取训练图像和标注数据,其中,所述标注数据包括所述训练图像中的每个行人所对应的行人框、头部框、左肩位置和右肩位置;
以所述训练图像中的每个行人所对应的行人框作为利用所述第一卷积神经网络和所述第二卷积神经网络对所述训练图像进行处理所获得的行人框的目标值构建第一损失函数,以所述训练图像中的每个行人所对应的头部框作为利用所述第一卷积神经网络和所述第三卷积神经网络对所述训练图像进行处理所获得的头部框的目标值构建第二损失函数,以所述训练图像中的每个行人所对应的左肩位置和右肩位置作为利用所述第一卷积神经网络和所述第四卷积神经网络对所述训练图像进行处理所获得的左肩位置和右肩位置的目标值构建第三损失函数;以及
至少利用所述第一损失函数、所述第二损失函数和所述第三损失函数对所述第一卷积神经网络、所述第二卷积神经网络、所述第三卷积神经网络和所述第四卷积神经网络中的参数进行训练。
7.如权利要求6所述的行人检测方法,其中,所述标注数据还包括所述训练图像中的每个行人所对应的脸部框;
所述行人检测方法还包括:
以所述训练图像中的每个行人所对应的脸部框作为利用所述第一卷积神经网络和第五卷积神经网络对所述训练图像进行处理所获得的脸部框的目标值构建第四损失函数,其中,所述第一卷积神经网络的输出层与所述第五卷积神经网络的输入层连接;
所述至少利用所述第一损失函数、所述第二损失函数和所述第三损失函数对所述第一卷积神经网络、所述第二卷积神经网络、所述第三卷积神经网络和所述第四卷积神经网络中的参数进行训练包括:
利用所述第一损失函数、所述第二损失函数、所述第三损失函数和所述第四损失函数对所述第一卷积神经网络、所述第二卷积神经网络、所述第三卷积神经网络、所述第四卷积神经网络和所述第五卷积神经网络中的参数进行训练。
8.一种行人检测装置,包括:
待处理图像获取模块,用于获取待处理图像;
第一检测模块,用于检测所述待处理图像中的行人,以获得行人信息,其中,所述行人信息包括多个行人框;
第二检测模块,用于检测所述待处理图像中的行人的头部,以获得头部信息,其中,所述头部信息包括与所述多个行人框中的至少部分行人框一一对应的头部位置;
第三检测模块,用于检测所述待处理图像中的行人的肩部,以获得肩部信息,其中,所述肩部信息包括与所述至少部分行人框一一对应的左肩位置和右肩位置;
重叠计算模块,用于根据与所述至少部分行人框一一对应的头部位置、左肩位置和右肩位置计算与所述至少部分行人框一一对应的头肩部位的重叠情况;以及
过滤模块,用于根据所述重叠情况过滤行人框,以获得行人检测结果。
9.如权利要求8所述的行人检测装置,其中,
所述第二检测模块包括:
头部检测子模块,用于检测所述待处理图像中的行人的头部,以获得至少一个头部框;以及
头部框选择子模块,用于对于所述至少部分行人框中的每一个,从所述至少一个头部框中选择中心点与该行人框的中心点之间的距离小于预设头部阈值并且中心点距离该行人框的中心点最近的头部框作为与该行人框对应的头部框,并确定与该行人框对应的头部框的中心点为与该行人框对应的头部位置;
所述第三检测模块包括:
肩部检测子模块,用于检测所述待处理图像中的行人的肩部,以确定至少一个左肩位置和至少一个右肩位置;
左肩选择子模块,用于从所述至少一个左肩位置中选择与该行人框的中心点之间的距离小于预设左肩阈值并且距离该行人框的中心点最近的左肩位置作为与该行人框对应的左肩位置;以及
右肩选择子模块,用于从所述至少一个右肩位置中选择与该行人框的中心点之间的距离小于预设右肩阈值并且距离该行人框的中心点最近的右肩位置作为与该行人框对应的右肩位置。
10.如权利要求8所述的行人检测装置,其中,对于所述至少部分行人框中的每一个,与该行人框对应的头肩部位是以与该行人框对应的头部位置、左肩位置和右肩位置为顶点的头肩三角形。
11.如权利要求10所述的行人检测装置,其中,所述行人信息还包括所述多个行人框中的每个行人框的行人置信度,所述头部信息还包括与所述至少部分行人框一一对应的头部位置的头部置信度,所述肩部信息还包括与所述至少部分行人框一一对应的左肩位置的左肩置信度和与所述至少部分行人框一一对应的右肩位置的右肩置信度,
所述行人检测装置还包括:
置信度计算模块,用于对于所述至少部分行人框中的每一个,根据该行人框的行人置信度、与该行人框对应的头部位置的头部置信度、与该行人框对应的左肩位置的左肩置信度和与该行人框对应的右肩位置的右肩置信度,计算与该行人框对应的头肩三角形的三角形置信度;
所述过滤模块包括:
三角形选择子模块,用于如果与所述至少部分行人框一一对应的头肩三角形中存在至少一组头肩三角形,其中所述至少一组头肩三角形中的每组头肩三角形包括重叠比例大于预设重叠阈值的多个头肩三角形,则对于所述至少一组头肩三角形中的每组头肩三角形,选择其中三角形置信度最高的头肩三角形之外的剩余头肩三角形;以及
过滤子模块,用于过滤所述多个行人框中的、与所选择的所有头肩三角形对应的行人框,以获得所述行人检测结果。
12.如权利要求8所述的行人检测装置,其中,
所述行人检测装置还包括:
特征提取模块,用于在所述第一检测模块检测所述待处理图像中的行人以获得行人信息之前,利用第一卷积神经网络提取所述待处理图像的特征;
所述第一检测模块包括:
第一输入子模块,用于将所述待处理图像的特征输入第二卷积神经网络,以获得所述行人信息;
所述第二检测模块包括:
第二输入子模块,用于将所述待处理图像的特征输入第三卷积神经网络,以获得至少一个头部框和每个头部框的头部置信度;以及
第一选择子模块,用于从所述至少一个头部框中选择与所述至少部分行人框一一对应的头部框,以获得所述头部信息;
所述第三检测模块包括:
第三输入子模块,用于将所述待处理图像的特征输入第四卷积神经网络,以获得左肩特征图和右肩特征图,其中,所述左肩特征图与所述待处理图像大小一致并且所述左肩特征图中的每个像素的像素值表示所述待处理图像的、与该像素坐标一致的像素属于左肩的左肩置信度,所述右肩特征图与所述待处理图像大小一致并且所述右肩特征图中的每个像素的像素值表示所述待处理图像的、与该像素坐标一致的像素属于右肩的右肩置信度;以及
第二选择子模块,用于从所述左肩特征图所指示的至少一个左肩位置中选择与所述至少部分行人框一一对应的左肩位置,并从所述右肩特征图所指示的至少一个右肩位置中选择与所述至少部分行人框一一对应的右肩位置,以获得所述肩部信息。
13.如权利要求12所述的行人检测装置,其中,所述行人检测装置还包括:
训练图像获取模块,用于获取训练图像和标注数据,其中,所述标注数据包括所述训练图像中的每个行人所对应的行人框、头部框、左肩位置和右肩位置;
第一构建模块,用于以所述训练图像中的每个行人所对应的行人框作为利用所述第一卷积神经网络和所述第二卷积神经网络对所述训练图像进行处理所获得的行人框的目标值构建第一损失函数,以所述训练图像中的每个行人所对应的头部框作为利用所述第一卷积神经网络和所述第三卷积神经网络对所述训练图像进行处理所获得的头部框的目标值构建第二损失函数,以所述训练图像中的每个行人所对应的左肩位置和右肩位置作为利用所述第一卷积神经网络和所述第四卷积神经网络对所述训练图像进行处理所获得的左肩位置和右肩位置的目标值构建第三损失函数;以及
训练模块,用于至少利用所述第一损失函数、所述第二损失函数和所述第三损失函数对所述第一卷积神经网络、所述第二卷积神经网络、所述第三卷积神经网络和所述第四卷积神经网络中的参数进行训练。
14.如权利要求13所述的行人检测装置,其中,所述标注数据还包括所述训练图像中的每个行人所对应的脸部框;
所述行人检测装置还包括:
第二构建模块,用于以所述训练图像中的每个行人所对应的脸部框作为利用所述第一卷积神经网络和第五卷积神经网络对所述训练图像进行处理所获得的脸部框的目标值构建第四损失函数,其中,所述第一卷积神经网络的输出层与所述第五卷积神经网络的输入层连接;
所述训练模块包括:
训练子模块,用于利用所述第一损失函数、所述第二损失函数、所述第三损失函数和所述第四损失函数对所述第一卷积神经网络、所述第二卷积神经网络、所述第三卷积神经网络、所述第四卷积神经网络和所述第五卷积神经网络中的参数进行训练。
CN201611249204.4A 2016-12-29 2016-12-29 行人检测方法和装置 Active CN108256404B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611249204.4A CN108256404B (zh) 2016-12-29 2016-12-29 行人检测方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611249204.4A CN108256404B (zh) 2016-12-29 2016-12-29 行人检测方法和装置

Publications (2)

Publication Number Publication Date
CN108256404A true CN108256404A (zh) 2018-07-06
CN108256404B CN108256404B (zh) 2021-12-10

Family

ID=62721636

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611249204.4A Active CN108256404B (zh) 2016-12-29 2016-12-29 行人检测方法和装置

Country Status (1)

Country Link
CN (1) CN108256404B (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109410601A (zh) * 2018-12-04 2019-03-01 北京英泰智科技股份有限公司 交通信号灯控制方法、装置、电子设备及存储介质
CN109492576A (zh) * 2018-11-07 2019-03-19 北京旷视科技有限公司 图像识别方法、装置及电子设备
CN109766796A (zh) * 2018-12-20 2019-05-17 西华大学 一种面向密集人群的深度行人检测方法
CN110210302A (zh) * 2019-04-26 2019-09-06 平安科技(深圳)有限公司 多目标跟踪方法、装置、计算机设备及存储介质
CN110298302A (zh) * 2019-06-25 2019-10-01 腾讯科技(深圳)有限公司 一种人体目标检测方法及相关设备
CN110298318A (zh) * 2019-07-01 2019-10-01 北京中星微电子有限公司 人头人体联合检测方法、装置和电子设备
CN110443147A (zh) * 2019-07-10 2019-11-12 广州市讯码通讯科技有限公司 一种坐姿识别方法、系统和存储介质
CN110599456A (zh) * 2019-08-13 2019-12-20 杭州智团信息技术有限公司 一种医学图像的特定区域的提取方法
CN110969045A (zh) * 2018-09-28 2020-04-07 杭州海康威视数字技术股份有限公司 一种行为检测方法、装置、电子设备和存储介质
WO2020103068A1 (en) * 2018-11-22 2020-05-28 Polycom, Inc. Joint upper-body and face detection using multi-task cascaded convolutional networks
CN111368688A (zh) * 2020-02-28 2020-07-03 深圳市商汤科技有限公司 行人监测方法及相关产品
CN111476160A (zh) * 2020-04-07 2020-07-31 杭州视在科技有限公司 损失函数优化方法、模型训练方法、目标检测方法及介质
CN112926500A (zh) * 2021-03-22 2021-06-08 重庆邮电大学 一种结合头部和整体信息的行人检测方法
CN113642520A (zh) * 2021-08-31 2021-11-12 中国人民解放军国防科技大学 一种带有头部信息的双任务行人检测方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040183906A1 (en) * 2003-03-20 2004-09-23 Nobuharu Nagaoka Device for monitoring around vehicle
CN103310194A (zh) * 2013-06-07 2013-09-18 太原理工大学 视频中基于头顶像素点梯度方向的行人头肩部检测方法
CN104166861A (zh) * 2014-08-11 2014-11-26 叶茂 一种行人检测方法
US20150178557A1 (en) * 2013-12-19 2015-06-25 Institute For Information Industry Pedestrian detection system and method
US20150235093A1 (en) * 2012-09-26 2015-08-20 Hitachi Automotive Systems, Ltd. Moving Object Recognition Apparatus
CN105023008A (zh) * 2015-08-10 2015-11-04 河海大学常州校区 基于视觉显著性及多特征的行人再识别方法
CN105139425A (zh) * 2015-08-28 2015-12-09 浙江宇视科技有限公司 一种人数统计方法及装置
CN105205486A (zh) * 2015-09-15 2015-12-30 浙江宇视科技有限公司 一种车标识别方法及装置
CN105844234A (zh) * 2016-03-21 2016-08-10 商汤集团有限公司 一种基于头肩检测的人数统计的方法及设备
CN106056060A (zh) * 2016-05-26 2016-10-26 天津艾思科尔科技有限公司 一种视频图像中蒙面纱检测的方法及系统
CN106127120A (zh) * 2016-06-16 2016-11-16 北京市商汤科技开发有限公司 姿势估计方法和装置、计算机系统

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040183906A1 (en) * 2003-03-20 2004-09-23 Nobuharu Nagaoka Device for monitoring around vehicle
US20150235093A1 (en) * 2012-09-26 2015-08-20 Hitachi Automotive Systems, Ltd. Moving Object Recognition Apparatus
CN103310194A (zh) * 2013-06-07 2013-09-18 太原理工大学 视频中基于头顶像素点梯度方向的行人头肩部检测方法
US20150178557A1 (en) * 2013-12-19 2015-06-25 Institute For Information Industry Pedestrian detection system and method
CN104166861A (zh) * 2014-08-11 2014-11-26 叶茂 一种行人检测方法
CN105023008A (zh) * 2015-08-10 2015-11-04 河海大学常州校区 基于视觉显著性及多特征的行人再识别方法
CN105139425A (zh) * 2015-08-28 2015-12-09 浙江宇视科技有限公司 一种人数统计方法及装置
CN105205486A (zh) * 2015-09-15 2015-12-30 浙江宇视科技有限公司 一种车标识别方法及装置
CN105844234A (zh) * 2016-03-21 2016-08-10 商汤集团有限公司 一种基于头肩检测的人数统计的方法及设备
CN106056060A (zh) * 2016-05-26 2016-10-26 天津艾思科尔科技有限公司 一种视频图像中蒙面纱检测的方法及系统
CN106127120A (zh) * 2016-06-16 2016-11-16 北京市商汤科技开发有限公司 姿势估计方法和装置、计算机系统

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
QI CHEN ET AL: "Part-based deep network for pedestrian detection in surveillance videos", 《2015 VISUAL COMMUNICATIONS AND IMAGE PROCESSING (VCIP)》 *
周治平等: "特征回归与检测结合的人数统计方法", 《计算机辅助设计与图形学学报》 *
王梦来等: "基于CNN的监控视频事件检测", 《自动化学报》 *
苏松志等: "《行人检测:理论与实践》", 31 March 2016 *

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110969045A (zh) * 2018-09-28 2020-04-07 杭州海康威视数字技术股份有限公司 一种行为检测方法、装置、电子设备和存储介质
CN109492576A (zh) * 2018-11-07 2019-03-19 北京旷视科技有限公司 图像识别方法、装置及电子设备
US11775834B2 (en) 2018-11-22 2023-10-03 Polycom, Llc Joint upper-body and face detection using multi-task cascaded convolutional networks
WO2020103068A1 (en) * 2018-11-22 2020-05-28 Polycom, Inc. Joint upper-body and face detection using multi-task cascaded convolutional networks
CN109410601A (zh) * 2018-12-04 2019-03-01 北京英泰智科技股份有限公司 交通信号灯控制方法、装置、电子设备及存储介质
CN109766796A (zh) * 2018-12-20 2019-05-17 西华大学 一种面向密集人群的深度行人检测方法
CN109766796B (zh) * 2018-12-20 2023-04-18 西华大学 一种面向密集人群的深度行人检测方法
WO2020215552A1 (zh) * 2019-04-26 2020-10-29 平安科技(深圳)有限公司 多目标跟踪方法、装置、计算机设备及存储介质
CN110210302A (zh) * 2019-04-26 2019-09-06 平安科技(深圳)有限公司 多目标跟踪方法、装置、计算机设备及存储介质
CN110210302B (zh) * 2019-04-26 2023-06-20 平安科技(深圳)有限公司 多目标跟踪方法、装置、计算机设备及存储介质
CN110298302A (zh) * 2019-06-25 2019-10-01 腾讯科技(深圳)有限公司 一种人体目标检测方法及相关设备
CN110298302B (zh) * 2019-06-25 2023-09-08 腾讯科技(深圳)有限公司 一种人体目标检测方法及相关设备
CN110298318A (zh) * 2019-07-01 2019-10-01 北京中星微电子有限公司 人头人体联合检测方法、装置和电子设备
CN110298318B (zh) * 2019-07-01 2023-09-29 北京中星微电子有限公司 人头人体联合检测方法、装置和电子设备
CN110443147A (zh) * 2019-07-10 2019-11-12 广州市讯码通讯科技有限公司 一种坐姿识别方法、系统和存储介质
CN110599456A (zh) * 2019-08-13 2019-12-20 杭州智团信息技术有限公司 一种医学图像的特定区域的提取方法
CN111368688A (zh) * 2020-02-28 2020-07-03 深圳市商汤科技有限公司 行人监测方法及相关产品
CN111476160A (zh) * 2020-04-07 2020-07-31 杭州视在科技有限公司 损失函数优化方法、模型训练方法、目标检测方法及介质
CN112926500A (zh) * 2021-03-22 2021-06-08 重庆邮电大学 一种结合头部和整体信息的行人检测方法
CN113642520A (zh) * 2021-08-31 2021-11-12 中国人民解放军国防科技大学 一种带有头部信息的双任务行人检测方法
CN113642520B (zh) * 2021-08-31 2023-05-30 中国人民解放军国防科技大学 一种带有头部信息的双任务行人检测方法

Also Published As

Publication number Publication date
CN108256404B (zh) 2021-12-10

Similar Documents

Publication Publication Date Title
CN108256404A (zh) 行人检测方法和装置
CN109711243B (zh) 一种基于深度学习的静态三维人脸活体检测方法
US11501523B2 (en) Goods sensing system and method for goods sensing based on image monitoring
CN105976400B (zh) 基于神经网络模型的目标跟踪方法及装置
CN108629791A (zh) 行人跟踪方法和装置及跨摄像头行人跟踪方法和装置
CN109670452A (zh) 人脸检测方法、装置、电子设备和人脸检测模型
CN105938559B (zh) 使用卷积神经网络的数字图像处理
CN105518709B (zh) 用于识别人脸的方法、系统和计算机程序产品
CN107808111A (zh) 用于行人检测和姿态估计的方法和装置
CN107644190A (zh) 行人监控方法和装置
CN107657249A (zh) 多尺度特征行人重识别的方法、装置、存储介质及处理器
CN109492638A (zh) 文本检测方法、装置及电子设备
CN110458895A (zh) 图像坐标系的转换方法、装置、设备及存储介质
CN108875481A (zh) 用于行人检测的方法、装置、系统及存储介质
CN106845352B (zh) 行人检测方法和装置
US20150092981A1 (en) Apparatus and method for providing activity recognition based application service
CN107133627A (zh) 红外光斑中心点提取方法及装置
CN108875750A (zh) 物体检测方法、装置和系统及存储介质
CN109886951A (zh) 视频处理方法、装置及电子设备
CN108573268A (zh) 图像识别方法和装置、图像处理方法和装置及存储介质
CN108875932A (zh) 图像识别方法、装置和系统及存储介质
CN109389599A (zh) 一种基于深度学习的缺陷检测方法及装置
CN109919211A (zh) 商品识别方法、装置、系统和计算机可读介质
CN109584213A (zh) 一种多目标编号选定跟踪方法
CN108875517A (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