目标行人检测方法、装置及电子设备与流程

文档序号:16211172发布日期:2018-12-08 07:45阅读:203来源:国知局
目标行人检测方法、装置及电子设备与流程

本发明涉及计算机视觉领域,尤其是涉及一种目标行人检测方法、装置及电子设备。

背景技术

计算机视觉系统在事故预防中起重要的作用,行人检测是计算机视觉领域的研究热点,被广泛地应用于辅助驾驶方面以预防交通事故。

目前的行人检测方法通常通过标记行车前方所有的行人以辅助司机驾驶,这样的方式所检测出的行人不具备针对性,甚至在行人较多的情况下会对司机造成视觉干扰,用户体验较差。



技术实现要素:

有鉴于此,本发明的目的在于提供一种目标行人检测方法、装置及电子设备,能够有针对性地筛选目标行人,从而有效地辅助司机驾驶,以提升用户体验。

第一方面,本发明实施例提供了一种目标行人检测方法,该方法包括:获取车辆当前前方视角的环境图像;通过预先建立的行人检测模型,提取出环境图像中的行人;根据预先设定的行人与车速的对应关系,从行人中筛选出与车辆的当前车速对应的目标行人。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,行人检测模型是基于ssd(singleshotmultiboxdetector,目标检测算法)模型建立的,行人检测模型的priorbox参数与行人宽高比和行人尺度有关;且,行人检测模型的损失函数为focalloss函数。

结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,行人检测模型的训练过程包括:获取训练数据;将训练数据输入至行人检测模型,通过随机梯度下降法对行人检测模型进行训练,直至行人检测模型的损失函数收敛至预设阈值时,结束训练。

结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,行人检测模型在训练之前,上述方法还包括:采用迁移学习法对基于ssd模型建立的行人检测模型进行初始化,以得到符合预设参数范围的行人检测模型的参数初始值。

结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,从行人中筛选出与车辆的当前车速对应的目标行人的步骤,包括:通过预先设定的第一对应表,查找与车辆的当前车速对应的距离范围;其中,第一对应表中存储有车速与距离范围的对应关系;根据距离范围确定目标区域;判断每个行人是否位于目标区域;将位于目标区域的行人确定为目标行人。

结合第一方面的第四种可能的实施方式,本发明实施例提供了第一方面的第五种可能的实施方式,其中,判断每个行人是否位于目标区域的步骤,包括:获取每个行人在环境图像中的身长数据;基于每个行人的身长数据以及预先设定的第二对应表,确定每个行人与车辆之间的距离值;其中,第二对应表中存储有行人身长与距离值的对应关系;逐一判断每个行人与车辆之间的距离值是否在上述距离范围内;如果是,确定行人位于目标区域。

第二方面,本发明实施例提供了一种目标行人检测装置,该装置包括:图像获取模块,用于获取车辆当前前方视角的环境图像;行人提取模块,用于通过预先建立的行人检测模型,提取出环境图像中的行人;行人确定模块,用于根据预先设定的行人与车速的对应关系,从行人中筛选出与车辆的当前车速对应的目标行人。

结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,行人确定模块用于:通过预先设定的第一对应表,查找与车辆的当前车速对应的距离范围;其中,第一对应表中存储有车速与距离范围的对应关系;根据距离范围确定目标区域;判断每个行人是否位于目标区域;将位于目标区域的行人确定为目标行人。

第三方面,本发明实施例提供了一种电子设备,包括存储器和处理器,存储器中存储有可在处理器上运行的计算机程序,处理器执行计算机程序时实现第一方面至第一方面的第五种可能的实施方式中任一项所述的方法的步骤。

第四方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,其中,计算机程序被处理器运行时执行上述第一方面至第一方面的第五种可能的实施方式中任一项所述的方法的步骤。

本发明实施例提供了一种目标行人检测方法、装置及电子设备,首先获取车辆当前前方视角的环境图像;进而通过预先建立的行人检测模型,提取出环境图像中的行人;最终根据预先设定的行人与车速的对应关系,从行人中筛选出与车辆的当前车速对应的目标行人。本发明实施例提供的上述方式能够有针对性地筛选目标行人,从而有效地辅助司机驾驶,以提升用户体验。

本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种目标行人检测方法的流程图;

图2为本发明实施例提供的另一种目标行人检测方法的流程图;

图3为本发明实施例提供的一种目标行人检测装置的结构框图;

图4为本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前行人检测方法通常将行车前方的行人全部标记出来提醒司机,然而这样的检测方式不具有针对性,甚至在行人较多的情况下会干扰司机的视觉,影响司机的判断,使得用户体验较差。基于此,本发明实施例提供的一种目标行人检测方法、装置及电子设备,能够有针对性地筛选目标行人,从而有效地辅助司机驾驶,以提升用户体验。

为便于对本实施例进行理解,首先对本发明实施例所公开的一种目标行人检测方法进行详细介绍,参见图1所示的一种目标行人检测方法的流程图,该方法包括:

步骤s102,获取车辆当前前方视角的环境图像;具体的,可通过截取行车记录仪视频重的每一帧图像而实时的获取前述环境图像。

步骤s104,通过预先建立的行人检测模型,提取出环境图像中的行人;其中,预先建立的行人检测模型可以是通过引入行人特征改进诸如ssd(singleshotmultiboxdetector,目标检测算法)模型、r-fcn(region-fullconvolutionalnetwork,基于区域的全卷积网络)模型等物体检测模型的结构所建立的模型。相关技术中,通常采用背景差法、帧差法、光流法等方法进行行人检测,在面对行人多变的复杂场景时,准确性不高;本发明实施例通过前述行人检测模型来提取环境图像中的行人,能够不受应用场景的影响,有效提升行人检测的准确性。

步骤s106,根据预先设定的行人与车速的对应关系,从行人中筛选出与车辆的当前车速对应的目标行人。

本发明实施例提供了一种目标行人检测方法,首先获取车辆当前前方视角的环境图像;进而通过预先建立的行人检测模型,提取出环境图像中的行人;最终根据预先设定的行人与车速的对应关系,从行人中筛选出与车辆的当前车速对应的目标行人。本发明实施例提供的上述方法能够有针对性地筛选目标行人,从而有效地辅助司机驾驶,以提升用户体验。

进一步,为便于理解和实施上述步骤s104,也即通过预先建立的行人检测模型,提取出环境图像中的行人。本发明实施例首先提供了一种基于ssd模型建立的行人检测模型,对该行人检测模型进行训练后应用于提取环境图像中的行人;其中,该行人检测模型的priorbox参数与行人宽高比和行人尺度有关;也即引入行人的宽高比和尺度特征改进传统ssd模型中priorbox的参数,从而得到更适用于行人检测的行人检测模型。具体的,考虑到行人在环境图像中一般可标记为矩形框,可经过对诸如caltech行人数据库、daimler行人数据库等行人检测数据集中的行人的宽高比进行统计分析,计算得到行人宽高比的均值及方差。将priorbox中的ratio(也即,宽高比)参数改进调整为前述均值;将priorbox中的scale(也即,尺度)参数改进调整为前述方差。在实际应用时,若计算得到的方差很小,priorbox中的scale参数可不做调整;比如计算得到行人宽高比的均值为0.39,方差为0.013,则将priorbox的ratio参数调整为0.39,而scale参数不做调整。本发明实施例所提供的通过改进ssd模型priorbox的参数设置,而建立的行人检测模型,相较于传统的ssd模型能够提高行人检测的ap(averageprecision,平均正确率)。具体的,分别将一致的包含有行人的样本图像输入到传统的ssd模型和前述行人检测模型,统计传统的ssd模型和前述行人检测模型检测出行人的ap,得到如表1所示的结果,显示行人检测模型(也即,表1中modified-ssd)的ap为67.39,高于传统ssd模型(也即,表1中的original-ssd)的ap(也即,63.46)。

表1

此外,考虑到训练行人检测模型时存在正负样本比例悬殊造成训练不充分的问题,为提高行人检测的精度,将前述行人检测模型的损失函数设置为focalloss函数;其中,focalloss函数是crossentropy(也即,交叉熵)损失函数的扩展;采用focalloss函数不仅可以平衡正负样本的不均衡;还可以通过减少易分类样本的权重,使得模型在训练时更专注于难分类的样本;从而有效提升行人检测的精度。具体的,focalloss函数与crossentropy函数之间ap的对比,如下表2所示:

表2

进一步,为便于理解,本发明实施例还提供了一种上述行人检测模型的训练过程,该过程包括:

(1)获取训练数据;具体时,可通过caltech训练数据集中和usc数据集来获取训练数据;其中,caltech训练数据集是道路视频使用最多的行人数据集,采用车载摄像头拍摄,约10个小时左右,视频的分辨率为640×480,30帧/秒。标注了约250,000帧(约137分钟),350000个矩形框,2300个行人,另外还对矩形框之间的时间对应关系及其遮挡的情况进行标注。实际应用时,考虑到caltech训练数据集中相邻帧间的图像相似度较大,因此在通过caltech训练数据集获取训练数据时,采用跳帧抽取的方案,设置每隔3-5帧选取一张图像做为训练数据;usc是静态行人数据库,行人间不存在相互遮挡,拍摄角度为正面或者背面,包括各种视角的行人,将usc数据集做为训练数据,能够增加行人数据的多样性,有利于行人检测模型的训练。

(2)将训练数据输入至行人检测模型,通过随机梯度下降法对行人检测模型进行训练,直至行人检测模型的损失函数收敛至预设阈值时,结束训练;其中,随机梯度下降法是一种用于最小化损失函数的梯度下降法;在采用随机梯度下降法训练行人检测模型时,首先设置适于行人检测模型训练过程所需的超参数;其中,超参数包括学习率、训练样本的批次和迭代次数。具体的,本发明实施例提供了一组超参数,也即将前述学习率设置为1*e-4,将训练样本的批次设置为5次,将迭代次数设置为120000次。通过上述方式训练行人检测模型,能够让行人检测模型的损失函数快速收敛至预设阈值,比如0。此外,在实际应用时,在训练结束后还可以采用caltech测试数据集对行人检测模型进行测试,采用这样的方式能够更进一步的验证行人检测模型的训练效果。

进一步,为使上述行人检测模型的损失函数的收敛效果更佳,在训练行人检测模型之前,上述目标行人检测方法还包括:

采用迁移学习法对基于ssd模型建立的行人检测模型进行初始化,以得到符合预设参数范围的行人检测模型的参数初始值;其中,前述预设参数范围可以是基于经验值或者实际应用场景所确定的范围。具体的,上述采用迁移学习法对基于ssd模型建立的行人检测模型进行初始化的步骤包括:首先将vgg16模型在imagenet数据集上进行预训练;然后将完成预训练的vgg16模型在daimler数据集和inria数据集进行微调,得到分类模型;进而提取前述分类模型中的权重对行人检测模型中的vgg16部分的权重参数进行初始化;而对行人检测模型中的其余部分的权重采用均值为0,方差为0.02的正太分布进行随机初始化。通过权重迁移对行人检测模型进行初始化,相比于从零权重开始训练行人检测模型,能够提高行人检测模型的泛化能力。

进一步,在图1的基础上,本发明实施例提供了另一种目标行人检测方法的流程图,具体的参见图2,该方法包括以下步骤:

步骤s202,获取车辆当前前方视角的环境图像;

步骤s204,通过预先建立的行人检测模型,提取出环境图像中的行人;

步骤s206,通过预先设定的第一对应表,查找与车辆的当前车速对应的距离范围;其中,第一对应表中存储有车速与距离范围的对应关系;诸如,车速处于0~20km/h区间内对应的距离范围为0~7.32m;车速处于20~40km/h区间内对应的距离范围为7.32~20.92m。

步骤s208,根据距离范围确定目标区域;

步骤s210,判断每个行人是否位于目标区域;

步骤s212,将位于目标区域的行人确定为目标行人。

具体的,上述步骤s206,也即判断每个行人是否位于目标区域的步骤,包括:

步骤(1),获取每个行人在环境图像中的身长数据;

步骤(2),基于每个行人的身长数据以及预先设定的第二对应表,确定每个行人与车辆之间的距离值;其中,第二对应表中存储有行人身长与距离值的对应关系。本发明实施例还提供了一种确定行人身长与距离值的对应关系的具体实施方式,包括:通过行车记录仪获得环境图像,选取行人样本;计算该行人样本与行车记录仪之间的距离,记为d;获取行人样本的实际身高,记为h;以及获取该样本在环境图像中的身长数据,记为h;计算d、h、h这三者间的比例关系得到λ=(d*h)/h;将这一比例关系应用到环境图像中的所有行人,获取某一行人的实际身高hi和其在环境图像中的身长hi,即可确定该行人与车辆之间的距离di=hi*λ/hi,从而得到前述行人身长与距离值的对应关系。

步骤(3),逐一判断每个行人与车辆之间的距离值是否在距离范围内;

步骤(4),如果是,确定行人位于目标区域。

对应前述目标行人检测方法,本发明实施例还提供了一种目标行人检测装置,参见图3所示的一种目标行人检测装置的结构框图,该装置包括:

图像获取模块302,用于获取车辆当前前方视角的环境图像;

行人提取模块304,用于通过预先建立的行人检测模型,提取出环境图像中的行人;

行人确定模块306,用于根据预先设定的行人与车速的对应关系,从行人中筛选出与车辆的当前车速对应的目标行人。

本发明实施例提供的上述目标行人检测装置,首先通过图像获取模块获取车辆当前前方视角的环境图像;进而基于行人提取模块通过预先建立的行人检测模型,提取出环境图像中的行人;最终基于行人确定模块根据预先设定的行人与车速的对应关系,从行人中筛选出与车辆的当前车速对应的目标行人。这样的装置能够有针对性地筛选目标行人,从而有效地辅助司机驾驶,以提升用户体验。

具体的,上述行人确定模块306用于:通过预先设定的第一对应表,查找与车辆的当前车速对应的距离范围;其中,第一对应表中存储有车速与距离范围的对应关系;根据距离范围确定目标区域;判断每个行人是否位于目标区域;将位于目标区域的行人确定为目标行人。

本实施例所提供的装置,其实现原理及产生的技术效果和前述实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

进一步,本实施例还提供了一种电子设备,包括存储器和处理器,存储器中存储有可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述目标行人检测方法的步骤。

参见图4所示的一种电子设备的结构示意图,示出了电子设备400,包括:处理器40,存储器41,总线42和通信接口43,所述处理器40、通信接口43和存储器41通过总线42连接;处理器40用于执行存41中存储的可执行模块,例如计算机程序。

其中,存储器41可能包含高速随机存取存储器(ram,randomaccessmemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口43(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。

总线42可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

其中,存储器41用于存储程序401,所述处理器40在接收到执行指令后,执行所述程序401,前述本发明实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器40中,或者由处理器40实现。

处理器40可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器40中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器40可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现成可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器41,处理器40读取存储器41中的信息,结合其硬件完成上述方法的步骤。

进一步,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述任一项目标行人检测方法的步骤。具体实现可参见方法实施例,在此不再赘述。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1