一种城市道路路口的行人预警方法、装置及电子设备与流程

文档序号:29462179发布日期:2022-04-02 01:52阅读:159来源:国知局
一种城市道路路口的行人预警方法、装置及电子设备与流程

1.本发明属于城市道路路口行人预警技术领域,具体涉及一种城市道路路口的行人预警方法、装置及电子设备。


背景技术:

2.随着人们生活水平的提高,车辆在人们生活中的使用频率越来越高,车辆给人们生活带来便捷性的同时,也带来了交通事故;目前,道路车辆与行人发生碰撞而引发交通事故的情况频繁发生,给人们的生命财产安全带来有巨大的损失。
3.据国家统计局的统计数据显示,截至2018年底,全国交通事故数据已经超过24万起,因各项交通事故造成的人员死亡人数达到了6万多人,造成的受伤人数约为26万人,直接造成的国家经济损失高达13亿人民币;同时,随着我国汽车保有量的逐年增长,这一问题正逐步加重,尤其体现在城市道路交通中,城市道路车流量大,道路路口人流量大,发生交通事故的风险也更高,据交通调查数据显示,40%的交通事故发生在交叉路口,其中28%发生在无控制交叉路口,无控制交叉路口未规定各行驶方向车辆的路权,也缺少行人与非机动车过街信号,极易导致机动车与行人及其他传统道路使用者在道路交汇处发生争夺道路使用权的情况,因此,无控制交叉口相比于信号交叉口存在着更多潜在的交通冲突,是发生交通事故的频发区域。
4.另外,某些道路交叉路口间距较长,路段最高限速较高,为保证机动车辆的通行效率往往较少设置控制行人通行的相关设施,当行人的等待时间超过可承受范围时,往往会出现强行过街等不遵守交通规则的行为,尤其是随着我国各地逐渐开始提倡“斑马线处礼让行人”,使得许多行人忽视了驾驶员需要反映时间,车辆最短刹车距离的基本事实,当强行通过时,导致驾驶员无法及时刹车,从而引发交通事故;因此,如何实现道路路口行人通行的碰撞预警,以减少交通事故的发生成为一个亟待解决的问题。


技术实现要素:

5.本发明的目的是提供一种基于城市道路路口的行人预警方法、装置及电子设备,以解决现有的城市道路路口发生交通事故的风险较高的问题。
6.为了实现上述目的,本发明采用以下技术方案:第一方面,本发明提供了一种城市道路路口的行人预警方法,应用于安装有发光指示牌、语音预警器和斑马线警示灯的道路路口,其中,所述方法包括:获取路口两侧任一车辆的车速、任一车辆的驾驶人员的人脸图像、位于所述任一车辆行驶方向前方的行人图像、行人在第一时刻时所处的第一位置以及行人在第二时刻时所处的第二位置,其中,所述行人图像包括基于双目相机拍摄的第一图像和第二图像;对所述人脸图像中的人脸进行角度检测,得到驾驶人员的头部姿态角;基于所述第一时刻、所述第二时刻、所述第一位置以及所述第二位置,得出行人的移动速度;
利用训练后的目标检测模型,对所述第一图像和所述第二图像进行目标检测,得到所述第一图像和所述第二图像中目标检测框的中心点坐标;获取所述双目相机的相机参数,其中,所述相机参数包括相机焦距以及基线长度;根据所述中心点坐标和所述相机参数,计算得到行人相对于任一车辆的纵向距离;对所述第一图像或所述第二图像进行灭点检测,得出所述第一图像或所述第二图像中的灭点坐标;根据所述灭点坐标,对所述双目相机进行标定处理,得到所述双目相机内参数矩阵;根据所述内参数矩阵和所述纵向距离,得到行人相对于任一车辆的横向距离;根据所述纵向距离以及所述横向距离,计算得到行人图像中的行人面积;以所述车速、所述头部姿态角、所述移动速度以及所述行人面积为输入数据,并利用模糊算法对所述输入数据进行模糊预警,以得出所述任一车辆相对于行人的碰撞预警等级;根据所述碰撞预警等级,向所述任一车辆内的驾驶人员发出碰撞预警提示,以及控制位于路口处的发光指示牌、语音预警器和斑马线警示灯进行碰撞预警提示。
7.基于上述公开的内容,本发明同时采集了行人数据、车辆数据以及驾驶人员数据,并对前述数据进行数据分析,得出了行人状态、车辆状态以及驾驶人员状态,同时,结合模糊算法,对前述数据进行模糊预警,以构建出基于前述数据的模糊预警机制,其实质为:以行人速度、车速、行人面积(代表着行人距离车辆的远近,面积越大,距离车辆越近)和驾驶人员的状态(即头部姿态角可反映驾驶人员的驾驶状态,可评判其是否注意到行人)四个方面为判断依据,来对行人通过路口时的碰撞风险进行预警,从而输出不同的碰撞预警等级,以便向车辆的驾驶人员发出碰撞预警提示,以及结合路口处的发光指示牌、语音预警器以及斑马线警示灯向行人发出预警提示;通过上述设计,本发明综合考虑了影响行人安全的因素,准确得出了行人通过路口时的碰撞预警等级,并可实现对驾驶人员以及行人的双向预警,由此,即可实现行人预警的准确性以及时效性,从而有效降低路口发生交通事故的风险。
8.在一个可能的设计中,对所述第一图像进行灭点检测,得出所述第一图像中的灭点坐标,包括:对所述第一图像进行边缘检测,得到第一图像经横向以及纵向边缘检测后的各个初始边缘点的图像灰度值;将图像灰度值大于第一预设阈值的初始边缘点作为最终边缘点;将所述最终边缘点进行霍夫变换,得到初始检测直线;根据所述初始检测直线,在霍夫空间中查找出与所述初始检测直线对应的目标边缘点,其中,所述目标边缘点与所述初始检测直线之间的距离小于预设像素,且每个目标边缘点的灰度值大于第二预设阈值;利用最小二乘法对所述目标边缘点进行线性拟合,得到目标检测直线;基于所述目标检测直线,构建灭点检测矩阵;利用奇异值分解算法对所述灭点检测矩阵进行矩阵分解,得到所述灭点坐标。
9.基于上述公开的内容,本发明利用霍夫变换来检测第一图像中的直线,作出初始检测直线,然后基于该初始检测直线,在霍夫空间中进行直线的修正,也就是查找出与所述初始检测直线对应的目标边缘点,并对目标边缘点进行线性拟合,从而得到修正后的直线(也就是目标检测直线),最后,通过目标检测直线构建灭点检测矩阵(可以但不限于以目标检测直线为起点,构建多条与之平行的直线,然后提取各直线的参数,从而组成灭点检测矩阵),并对灭点检测矩阵进行奇异分解,即可得出第一图像中灭点的坐标;由此,该方法检测灭点误差小,鲁棒性好,效率高,可提高灭点检测的准确性。
10.在一个可能的设计中,以所述车速、所述头部姿态角、所述移动速度以及所述行人面积为输入数据,并利用模糊算法对所述输入数据进行模糊预警,以得出任一车辆相对于行人的碰撞预警等级,包括:确定所述输入数据中每个输入数据的论域,并对每个输入数据的论域进行模糊化处理,得到每个输入数据对应的模糊子集;基于每个输入数据对应的模糊子集,确定每个输入数据对应的隶属度函数;确定模糊输出量,并确定出所述模糊输出量对应的论域以及模糊子集,以便基于所述模糊输出量的模糊子集,确定出模糊输出量的隶属度函数,其中,所述模糊输出量为所述碰撞预警等级;基于所述模糊输出量的隶属度函数和每个输入数据对应的隶属度函数,建立模糊规则;根据所述模糊规则对所述输入数据进行模糊推理,得到所述任一车辆相对于行人的碰撞预警等级。
11.基于上述公开的内容,本发明公开了模糊预警的具体过程,即确定各输入数据和模糊输出量的论域、模糊子集以及隶属度函数,以便基于输入数据与模糊输出量的隶属度函数构建模糊规则,最后,基于构建的模糊规则,对输入数据进行模糊推理,即可得出碰撞预警等级。
12.在一个可能的设计中,所述头部姿态角包括俯仰角和偏航角,其中,所述车速的论域为[0,120],所述俯仰角的论域为[-60,60],所述偏航角的论域为[-60,60],所述移动速度的论域为[0,15],所述行人面积的论域为[0,11500],所述车速、所述俯仰角、所述偏航角、所述移动速度以及所述行人面积分别对应有3个模糊子集,且所述车速、所述移动速度和所述行人面积分别采用三角型隶属度函数,所述俯仰角、所述偏航角和所述模糊输出量分别采用高斯隶属度函数。
[0013]
在一个可能的设计中,获取行人在第一时刻时所处的第一位置,包括:获取在所述第一时刻时,三个不处于同一直线上的激光雷达到行人之间的距离;以每个激光雷达为圆心,每个激光雷达到行人之间的距离为半径,构建出三个相交的距离检测圆;计算三个相交的距离检测圆中共同相交区域的端点坐标;根据所述端点坐标,并利用三角质心算法计算得出所述第一位置。
[0014]
基于上述公开的内容,本发明利用三个激光雷达进行行人定位,即利用三角定位法确定行人坐标,最后,由于实际测量中存在误差,三个激光雷达构建的距离检测圆并不交于一点,因此,本发明再利用三角质心算法来进行误差消除,从而基于三个距离检测圆的共
同相交区域的端点坐标,来计算出行人的第一位置。
[0015]
在一个可能的设计中,基于所述第一时刻、所述第二时刻、所述第一位置以及所述第二位置,得出行人的移动速度,包括:根据所述第一位置以及所述第二位置,计算得到行人的移动距离;计算所述第一时刻与所述第二时刻的时间差的绝对值,作为移动时间;根据所述移动距离以及所述移动时间,得到所述移动速度。
[0016]
在一个可能的设计中,所述碰撞预警等级包括安全、警告和危险,其中,根据所述碰撞预警等级,控制位于路口处的发光指示牌、语音预警器和斑马线警示灯进行碰撞预警提示,包括:若所述碰撞预警等级为安全,则控制所述发光指示牌以及所述斑马线警示灯发出常亮绿色光信号;若所述碰撞预警等级为警告,则控制所述发光指示牌以及所述斑马线警示灯发出常亮黄色光信号,并控制所述语音预警器发出第一语音警告;若所述碰撞预警等级为危险,则控制所述发光指示牌以及所述斑马线警示灯发出闪烁红色光信号,且控制所述语音预警器发出第二语音警告。
[0017]
基于上述公开的内容,本发明利用不同颜色的光信号,并结合语音信号来对行人作为预警提示,同时,光信号还可对任一车辆的驾驶人员起到明显的警示作用,由此,利用声光预警,可提高预警效果,从而进一步的降低发生交通事故的风险。
[0018]
第二方面,本发明提供了一种城市道路路口的行人预警装置,包括:数据获取单元,用于获取路口两侧任一车辆的车速、任一车辆的驾驶人员的人脸图像、位于所述任一车辆行驶方向前方的行人图像、行人在第一时刻时所处的第一位置以及行人在第二时刻时所处的第二位置,其中,所述行人图像包括基于双目相机拍摄的第一图像和第二图像;角度检测单元,用于对所述人脸图像中的人脸进行角度检测,得到驾驶人员的头部姿态角;速度计算单元,用于基于所述第一时刻、所述第二时刻、所述第一位置以及所述第二位置,得出行人的移动速度;行人识别单元,用于利用训练后的目标检测模型,对所述第一图像和所述第二图像进行目标检测,得到所述第一图像和所述第二图像中目标检测框的中心点坐标;行人识别单元,用于获取所述双目相机的相机参数,其中,所述相机参数包括相机焦距以及基线长度;行人识别单元,用于根据所述中心点坐标和所述相机参数,计算得到行人相对于任一车辆的纵向距离;行人识别单元,用于对所述第一图像或所述第二图像进行灭点检测,得出所述第一图像或所述第二图像中的灭点坐标;行人识别单元,用于根据所述灭点坐标,对所述双目相机进行标定处理,得到所述双目相机内参数矩阵;行人识别单元,用于根据所述内参数矩阵和所述纵向距离,得到行人相对于任一车辆的横向距离;
行人识别单元,还用于根据所述纵向距离以及所述横向距离,计算得到行人图像中的行人面积;模糊推理单元,用于以所述车速、所述头部姿态角、所述移动速度以及所述行人面积为输入数据,并利用模糊算法对所述输入数据进行模糊预警,以得出所述任一车辆相对于行人的碰撞预警等级;预警单元,用于根据所述碰撞预警等级,向所述任一车辆内的驾驶人员发出碰撞预警提示,以及控制位于路口处的发光指示牌、语音预警器和斑马线警示灯进行碰撞预警提示。
[0019]
第三方面,本发明提供了另一种城市道路路口的行人预警装置,以装置为电子设备为例,包括依次通信相连的存储器、处理器和收发器,其中,所述存储器用于存储计算机程序,所述收发器用于收发消息,所述处理器用于读取所述计算机程序,执行如第一方面或第一方面中任意一种可能设计的所述城市道路路口的行人预警方法。
[0020]
第四方面,本发明提供了一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,执行如第一方面或第一方面中任意一种可能设计的所述城市道路路口的行人预警方法。
[0021]
第五方面,本发明提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使所述计算机执行如第一方面或第一方面中任意一种可能设计的所述城市道路路口的行人预警方法。
附图说明
[0022]
图1为本发明提供的城市道路路口的行人预警系统的架构示意图;图2为本发明提供的城市道路路口的行人预警方法的步骤流程示意图;图3为本发明提供的第一位置的检测原理示意图;图4为本发明提供的发光指示牌、语音预警器以及斑马线警示灯的布置结构示意图;图5为本发明提供的基于城市道路路口的行人预警装置的结构示意图;图6为本发明提供的电子设备的结构示意图;图7为本发明提供的部分模糊规则表。
[0023]
附图标记:10-语音预警器;20-发光指示牌;30-斑马线警示灯;40-斑马线。
具体实施方式
[0024]
下面结合附图及具体实施例来对本发明作进一步阐述。在此需要说明的是,对于这些实施例方式的说明虽然是用于帮助理解本发明,但并不构成对本发明的限定。本文公开的特定结构和功能细节仅用于描述本发明的示例实施例。然而,可用很多备选的形式来体现本发明,并且不应当理解为本发明限制在本文阐述的实施例中。
[0025]
应当理解,尽管本文可能使用术语第一、第二等等来描述各种单元,但是这些单元不应当受到这些术语的限制。这些术语仅用于区分一个单元和另一个单元。例如可以将第一单元称作第二单元,并且类似地可以将第二单元称作第一单元,同时不脱离本发明的示例实施例的范围。
[0026]
应当理解,对于本文中可能出现的术语“和/或”,其仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,单独存在b,同时存在a和b三种情况;对于本文中可能出现的术语“/和”,其是描述另一种关联对象关系,表示可以存在两种关系,例如,a/和b,可以表示:单独存在a,单独存在a和b两种情况;另外,对于本文中可能出现的字符“/”,一般表示前后关联对象是一种“或”关系。
[0027]
实施例参见图1所示,为本技术提供一种系统架构,其中,该系统包括服务器、图像采集设备(包括一双目相机和一摄像头)、车速检测设备(如测速仪,安装在道路路口两侧,如距离路口70m处)、行人位置检测设备(包括三个不共线的激光雷达)以及预警提示设备(包括安装于路口处的发光指示牌、语音预警器以及安装于斑马线处的斑马线警示灯),其中,双目相机安装于车辆内,用于拍摄车辆前方,获取行人图像,摄像头安装于车内,且拍摄方向朝向车辆驾驶人员,以获得驾驶人员的人脸图像,三个激光雷达安装于路口处,用于测量行人在不同时刻的位置,以得出行人的移动速度。
[0028]
在本实施例中,图像采集设备、车速检测设备、行人位置检测设备以及预警提示设备均通信连接服务器,服务器在接收到车速、行人图像、人脸图像以及行人在不同时刻的位置信息后,即可使用本实施例所提供的方法进行数据分析,以得出行人状态、车辆状态以及驾驶人员状态,同时,服务器还会结合模糊算法,对前述数据进行模糊预警,以构建出基于前述数据的模糊预警机制,从而以前述数据为判断依据,实现行人通过路口时的碰撞预警,并利用预警提示设备对行人和驾驶人员进行相应的预警提示,同时,也可向车辆的车载电脑发出预警提示信息,以便在车内对驾驶人员进行碰撞预警提示;由此,该系统综合考虑了影响行人安全的因素,可准确的得出行人通过路口时的碰撞预警等级,并可实现对驾驶人员以及行人的双向预警,从而保证了行人预警的准确性以及时效性,有效的降低了路口发生交通事故的风险。
[0029]
参见图2所示,本实施例第一方面所提供的城市道路路口的行人预警方法,可预先在待预警的路口安装发光指示牌和语音预警器,并在该路口的斑马线处安装斑马线警示灯,以便在得出碰撞预警等级后,基于前述设备进行可视化预警,即本方法适用于行人在通过各个道路路口时的风险预警,其中,该方法可以但不限于在服务器侧运行,其运行步骤如下述步骤s1~s6所示。
[0030]
s1. 获取路口两侧任一车辆的车速、任一车辆的驾驶人员的人脸图像、位于所述任一车辆行驶方向前方的行人图像、行人在第一时刻时所处的第一位置以及行人在第二时刻时所处的第二位置;具体应用时,车速可由布置在路口两侧的测速仪测量得出,也可通过连接车辆的车载电脑,由车载电脑将车辆速度实时上传至服务器,而人脸图像和行人图像则是安装在该任一车辆内的双目相机(拍摄方向朝向车辆前方)以及摄像头(拍摄方向朝向驾驶人员)拍摄得出,并实时上传至服务器。
[0031]
可选的,对于行人在第一时刻所处的第一位置,以及在第二时刻所处的第二位置,均是借助安装在路口且不处于同一直线的三个激光雷达,并基于三角定位原理计算得出,由于两个位置获取原理一致,下述以第一位置为例,来阐述具体的位置定位过程,如下述步骤s11~s14所示。
[0032]
s11. 获取在所述第一时刻时,三个不处于同一直线上的激光雷达到行人之间的
距离;具体的,激光雷达测量到行人的距离可由其发出激光到接收反射回来的激光之间的时间间隔,以及激光传播速度得出。
[0033]
在得到各个激光雷达在第一时刻与行人的距离后,即可利用三角定位方法实现行人位置确定,如下述步骤s12和步骤s13所示。
[0034]
s12. 以每个激光雷达为圆心,每个激光雷达到行人之间的距离为半径,构建出三个相交的距离检测圆。
[0035]
s13. 计算三个相交的距离检测圆中共同相交区域的端点坐标;具体应用时,三个距离检测圆的共同交点则代表行人位置,即共同交点的坐标,则为行人位置坐标,但是,由于在实际测量中存在误差,使得三个距离检测圆难以交于一点,即如图3所示,因此,为实现行人的准确定位,本实施例使用三角质心算法对其进行误差调整,从而基于三个相交的距离检测圆中共同相交区域的端点坐标,来计算得到行人的实际位置坐标,其计算过程如下述步骤s14所示。
[0036]
s14. 根据所述端点坐标,并利用三角质心算法计算得出所述第一位置;具体应用时,参见图1所示,假设三个距离检测圆共同相交区域为区域abc,因此,根据圆的方程,可求出区域abc的三个端点坐标(下述称为端点a,端点b和端点c),那么根据三角质心算法,即可以端点a、b和c为顶点建立一三角型,而行人实际位置则是三角型的质心,因此,根据三角型的质心计算公式,即可得出行人的实际位置(也就是图3中的d点)。
[0037]
假设端点a的坐标为(x1,y1),端点b的坐标为(x2,y2),端点c的坐标为(x3,y3),那么其质心d的横坐标为:(x1+x2+x3)/3,纵坐标为:(y1+y2+y3)/3,即第一位置的横坐标为:(x1+x2+x3)/3,纵坐标为:(y1+y2+y3)/3;当然,第二位置的计算与前述第一位置原理相同,于此不再赘述。
[0038]
在本实施例中,第一时刻所表示的时间早于所述第二时刻,且可预设第一时刻与第二时刻之间相差2~5秒,优选的,三个激光雷达可间隔4s进行距离的测量。
[0039]
在采集得到车辆数据(即车速)、行人数据(即行人图像以及行人在不同时刻的位置)以及驾驶人员数据(即驾驶人员的人脸图像)后,即可进行数据分析,以得出车辆状态、行人状态以及驾驶人员状态,其分析过程如下述步骤s2~s4所示。
[0040]
s2. 对所述人脸图像中的人脸进行角度检测,得到驾驶人员的头部姿态角;具体应用时,头部姿态角可反映出驾驶人员的驾驶状态,即注意力是否集中,正常来讲,驾驶人员注意力集中的情况下,其头部应不发生任何偏转,而一旦头部发生了偏转,即可认定为驾驶人员出现注意力不集中,从而无法注意到行人;在交通事故影响因素中,该因素为影响行人通行安全的重要因素之一,因此,本实施例将头部姿态角作为碰撞判断因素之一,可有效提高碰撞预警的准确性。
[0041]
可选的,头部姿态角可通过检测人脸图像中的特征点,然后对特征点进行坐标转换来得出,具体的,前述步骤s2的角度检测过程可以但不限于如下述步骤s21~s24所示。
[0042]
s21. 对人脸图像进行人脸特征点检测,得到n个人脸特征点坐标,其中,n为正整数;在本实施例中,人脸特征点检测是指给定人脸图像,定位出人脸面部的关键区域位置,包括眉毛、眼睛、鼻子、嘴巴和脸部轮廓等,具体实施时,可以但不限于使用:多任务级联卷积网络实现人脸特征点检测,即检测到人脸图像中的二维人脸标记框、二维人脸关键区域和/或二维人脸特征点等。
[0043]
在检测到人脸图像中的人脸特征点后,即可进行坐标转换,其原理为:头部姿态估计可以视为多点透视问题,因此,可根据2d-3d特征点间的投影关系求解头部姿态参数,也就是将相机坐标系的人脸特征点坐标转换为世界坐标系中,得到头部姿态参数,其中,其具体转换过程如下述步骤s22所示。
[0044]
s22. 将n个人脸特征点坐标与三维人脸模型中对应的三维人脸特征点进行匹配;具体应用时,三维人脸模型可预先设置在服务器中;匹配完成后,即可进行坐标转换,如下述步骤s23所示。
[0045]
s23. 求解人脸特征点与对应三维人脸特征点的旋转关系矩阵;具体应用时,可以但不限于使用opencv(是一个基于apache2.0许可(开源)发行的跨平台计算机视觉和机器学习软件库)的solvepnp函数得出旋转向量,然后通过旋转向量得到旋转关系矩阵。
[0046]
在得到旋转关系矩阵后,即可根据旋转关系矩阵求解出驾驶人员的头部姿态数据,如下述步骤s24所示。
[0047]
s24. 根据旋转关系矩阵求解得到头部姿态角;具体应用时,即头部姿态角包括俯仰角pitch,偏航角yaw和翻滚角roll。
[0048]
由此,通过前述步骤s21~s24,即可得到驾驶人员的头部姿态角,从而得出驾驶人员的驾驶状态;具体应用时,俯仰角表示人脸向上偏或向下偏转,偏航角表示人脸向右或向左偏转,因此,只要驾驶员的头部向上、向下、向右或向左发生了偏转,即可认定驾驶人员存在注意力不集中的问题,具体的,依据该数据进行碰撞预警的过程在下述步骤s5中进行详细阐述。
[0049]
可选的,举例前述人脸特征点可以但不限于为:左眼中心点坐标、右眼中心点坐标、鼻尖坐标、左嘴角坐标、右嘴角坐标以及下颌坐标。
[0050]
在得到驾驶人员的驾驶状态后,还需分析出行人状态,在本实施例中,行人状态主要包括行人的移动速度,以及行人与车辆之间的距离,其中,行人的移动速度由步骤s1中不同时刻时所处的位置计算得出,而行人与车辆之间的距离,则通过图像识别进行得出,二者的分析过程如下述步骤s3和步骤s4所示。
[0051]
s3. 基于所述第一时刻、所述第二时刻、所述第一位置以及所述第二位置,得出行人的移动速度;具体应用时,移动速度的具体计算过程如下述步骤s31~s33所示。
[0052]
s31. 根据所述第一位置以及所述第二位置,计算得到行人的移动距离;具体应用时,前述步骤s14已经计算得到了第一位置的坐标以及第二位置的坐标,因此,基于二者的坐标,即可计算出二者的距离。
[0053]
同时,第一时刻与第二时刻之间的时间差,即可作为移动时间,最后,在已知移动距离以及移动时间的条件下,即可求出行人的移动速度,如下述步骤s32和步骤s33所示。
[0054]
s32. 计算所述第一时刻与所述第二时刻的时间差的绝对值,作为移动时间。
[0055]
s33. 根据所述移动距离以及所述移动时间,得到所述移动速度。
[0056]
在得到行人的移动速度后,还需分析行人与车辆之间距离,以便将该参数也作为碰撞判断因素之一,其中,具体分析过程总结为下述步骤s4及其子步骤所示。
[0057]
s4. 对所述行人图像进行行人识别,得出行人图像中的行人面积;具体应用时,使用行人图像中的行人面积来表征其与对应车辆之间的距离,其中,距离越近,其面积越大,反之则越远,因此,通过计算行人图像中的行人面积,即可度量出行人与对应车辆之间的距
离。
[0058]
同时,在前述就已说明行人图像由安装在车内的双目相机拍摄得出,因此,其包含有两幅图像,即第一图像和第二图像,由此,即可基于第一图像和第二图像得出图像中行人的深度信息,从而基于深度信息以及相机参数计算出行人距离任一车辆的纵向距离,同时,再找到第一图像或第二图像的灭点,由灭点来标定双目相机,从而得出相机的内参数矩阵,最后,即可基于内参数矩阵以及纵向距离来计算出行人到任一车辆的横向距离;具体的,前述纵向距离以及横向距离的计算过程如下述步骤s41~s47所示。
[0059]
s41. 利用训练后的目标检测模型,对所述第一图像和所述第二图像进行目标检测,得到所述第一图像和所述第二图像中目标检测框的中心点坐标;具体应用时,可以但便于使用训练后的yolov3(you only look once,一种基于深度神经网络的对象识别和定位算法)目标检测模型实现第一图像以及第二图像中目标检测框中心点坐标的检测,其中,目标检测框也就是锚点框,也就是输出锚点框的中心点坐标。
[0060]
在得到第一图像和第二图像中目标检测框的中心点坐标后,即可基于两个中心点坐标,得出图像中行人的深度信息,其计算过程为:二者中心点坐标中横坐标的差值,即作为深度信息。
[0061]
在得出图像中行人的深度信息后,即可基于相机参数,来计算出行人相对于任一车辆的纵向距离,如下述步骤s42和步骤s43所示。
[0062]
s42. 获取所述双目相机的相机参数,其中,所述相机参数包括相机焦距以及基线长度;具体应用时,基线长度为双目相机中两个摄像头的中心距,而前述相机焦距以及基线长度可预设至服务器中。
[0063]
s43. 根据所述中心点坐标和所述相机参数,计算得到行人相对于任一车辆的纵向距离;具体的可以但不限于采用如下公式计算得到行人相对于任一车辆的纵向距离l1。
[0064]
l1=(fb)/(x1-x2),其中,f表示相机焦距,b表示基线长度,x1表示第一图像中目标检测框的中心点的横坐标,x2表示第二图像中目标检测框的中心点的横坐标,且第一图像为双目相机中左边摄像头拍摄的图像,第二图像为双目相机中右边摄像头拍摄的图像。
[0065]
在得到纵向距离后,还需计算出行人相对于任一车辆的横向距离,由此,才可计算得出行人图像中的行人面积,具体的,可使用第一图像或第二图像中的灭点,并基于灭点得出双目相机的内参数矩阵,由内参数矩阵求出双目相机的像素比,从而借助像素比来得出横向距离,具体的,其计算过程如下述步骤s44~s46所示。
[0066]
s44. 对所述第一图像或所述第二图像进行灭点检测,得出所述第一图像或所述第二图像中的灭点坐标;具体应用时,可根据第一图像或第二图像中的平行直线簇来实现图像中灭点的检测,下述以第一图像为例来阐述灭点检测的具体过程,其检测过程如下述步骤s441~s447。
[0067]
s441. 对所述第一图像进行边缘检测,得到第一图像经横向以及纵向边缘检测后的各个初始边缘点的图像灰度值;具体应用时,可以但不限于采用soble边缘检测算法进行边缘检测,即利用索贝尔算子(该算子包含两组3*3的矩阵)与第一图像作平面卷积运算,从而得出经横向以及纵向边缘检测后的图像灰度值,可选的,各个初始边缘点的图像灰度值由对应横向灰度以及纵向灰度相加得出;当然,在本实施例中,在进行步骤s441前,需先将第一图像进行灰度化。
[0068]
在得到第一图像中各个初始边缘点的图像灰度值后,即可进行二值化操作,即设定一个灰度阈值(也就是第一预设阈值),从而来得到较佳的边缘信息,其中,初始边缘点的二值化过程如下述步骤s442所示。
[0069]
s442. 将图像灰度值大于第一预设阈值的初始边缘点作为最终边缘点;具体应用时,第一预设阈值可预先设置在服务器中,其数值由具体使用而设定。
[0070]
在经过步骤s442得到最终边缘点后,即可利用霍夫变换算法进行直线检测,如下述步骤s443所示。
[0071]
s443. 将所述最终边缘点进行霍夫变换,得到初始检测直线;具体应用时,霍夫变换实质是将各个最终边缘点映射到霍夫空间,从而完成霍夫变换,其求解出的是直线的斜率以及截距,由此,即可得出第一图像中的初始检测直线。
[0072]
由于霍夫变换是一个全局算法,然而在霍夫空间中,其映射的参数均为离散值,精度较差,因此在得出初始检测直线后,为提高检测的鲁棒性以及准确性,还需对初始检测直线进行修正,也就是查找出与初始检测直线对应的目标边缘点,并对目标边缘点进行线性拟合,从而得到修正后的直线,其过程如下述步骤s444和步骤s445所示。
[0073]
s444. 根据所述初始检测直线,在霍夫空间中查找出与所述初始检测直线对应的目标边缘点,其中,所述目标边缘点与所述初始检测直线之间的距离小于预设像素,且每个目标边缘点的灰度值大于第二预设阈值;具体应用时,预设像素可以但不限于为3个像素点,而第二预设阈值可根据实际使用而具体设定,在此不作限定;在本实例中,初始检测直线的表达式通过霍夫变化已得出,因此,在得知各个目标边缘点的坐标后,即可利用点到直线的距离公式,求出其与初始检测直线的距离。
[0074]
在得出了初始检测直线对应的目标边缘点后,即可利用目标边缘点进行直线的修正,如下述步骤s445所示。
[0075]
s445. 利用最小二乘法对所述目标边缘点进行线性拟合,得到目标检测直线;在本实施例中,最小二乘法为常用的线性拟合方法,其原理不再赘述。
[0076]
在对初始检测直线进行修正,得到目标检测直线后,即可基于目标检测直线,构建出该直线在第一图像中的平行直线簇来实现图像中灭点的检测,其具体过程如下述步骤s446和步骤s447所示。
[0077]
s446. 基于所述目标检测直线,构建灭点检测矩阵;具体应用时,可通过如下步骤构建灭点检测矩阵:第一步:基于目标检测直线,构建目标检测直线在第一图像中的平行直线簇,可选的,可通过改变目标检测直线的常数项来构建出与目标检测直线平行的直线,从而组成平行直线簇;第二步:将平行直线簇中的各平行直线表达式中的参数作为矩阵元素,来组成一个m*3的矩阵,其中,m代表平行直线簇中直线的个数,而该m*3的矩阵则为灭点检测矩阵。
[0078]
在得到灭点检测矩阵后,即可对矩阵进行分解,从而求出第一图像中的灭点坐标,如下述步骤s447所示。
[0079]
s447. 利用奇异值分解算法对所述灭点检测矩阵进行矩阵分解,得到所述灭点坐标;具体应用时,利用奇异值分解算法进行矩阵分解得到的v矩阵中最后一列的值,则是第一图像中的灭点坐标值;在本实施例中,奇异值分解算法为矩阵分解的常用算法之一,其原理不再赘述。
[0080]
在得到第一图像中的灭点坐标后,即可基于灭点坐标对双目相机进行标定,从而得出双目相机的内参数矩阵,以便基于内参数矩阵以及纵向距离,求出行人相对于任一车辆的横向距离,如下述步骤s45和s46所示。
[0081]
s45. 根据所述灭点坐标,对所述双目相机进行标定处理,得到所述双目相机内参数矩阵;具体应用时,可以但不限于通过opencv和matlab软件实现相机的标定,从而得出相机的内参数矩阵。
[0082]
在得到双目相机的内参数矩阵后,即可基于内参数矩阵求取横向距离,如下述步骤s46所示。
[0083]
s46. 根据所述内参数矩阵和所述纵向距离,得到行人相对于任一车辆的横向距离;具体应用时,可根据内参数矩阵得出双目相机的像素比,从而基于像素比以及纵向距离,求出横向距离。
[0084]
在本实施例中,双目相机的内参数矩阵k为:上式中,代表焦距,表示像素在x方向的宽度,表示像素在y方向的宽度,和为主点的实际位置。
[0085]
因此,通过前述内参数矩阵,即可基于和来求出双目相机的像素比,而像素比为图像中一个像素的宽度与高度之比,因此,在得知了纵向距离(即高度)后,即可得出行人相对于任一车辆的横向距离。
[0086]
在得出行人相对于该任一车辆的纵向距离以及横向距离后,将二者相乘,即可得出行人面积,如下述步骤s47所示。
[0087]
s47. 根据所述纵向距离以及所述横向距离,计算得到行人图像中的行人面积。
[0088]
由此通过前述步骤s1~s4,即可完成对行人数据、车辆数据(即车速)以及驾驶人员数据的数据分析,最后,即可利用模糊算法对前述输入进行模糊处理,从而构建基于前述数据的模糊预警机制,从而得出行人通过路口时的碰撞预警等级,其中,其模糊处理过程如下述步骤s5以及各个子步骤所示。
[0089]
s5. 以所述车速、所述头部姿态角、所述移动速度以及所述行人面积为输入数据,并利用模糊算法对所述输入数据进行模糊预警,以得出所述任一车辆相对于行人的碰撞预警等级;具体应用时,其模糊预警过程如下述步骤s51~s55所示。
[0090]
s51. 确定所述输入数据中每个输入数据的论域,并对每个输入数据的论域进行模糊化处理,得到每个输入数据对应的模糊子集;具体的,由于驾驶人员在存在左右偏转和上下偏转时,才可认定为注意力不集中,因此,本实施例仅使用所述头部姿态角中的俯仰角和偏航角来进行模糊处理;可选的,举例所述车速的论域为[0,120](其涵盖城市道路最高限速),所述俯仰角的论域为[-60,60],所述偏航角的论域为[-60,60],所述移动速度的论域为[0,15],所述行人面积的论域为[0,11500],其中,将车速、俯仰角、偏航角、移动速度以及行人面积的论域进行模糊化处理,以将前述输入数据分别划分有3个模糊子集,具体如下:车速为三种模糊子集,俯仰角为三种模糊子集,偏航角为
三种模糊子集,移动速度为三种模糊子集,行人面积为三种模糊子集。
[0091]
在得到各个输入数据的模糊子集后,即可得出各个模糊子集对应的函数表达式,即得出各个输入数据的隶属度函数,如下述步骤s52所示。
[0092]
s52. 基于每个输入数据对应的模糊子集,确定每个输入数据对应的隶属度函数;具体应用时,举例所述车速、所述移动速度和所述行人面积分别采用三角型隶属度函数,所述俯仰角和所述偏航角分别采用高斯隶属度函数;可选的,举例可使用增量法或因素加权平均法来实现各个输入函数隶属度函数的确定。
[0093]
下述以车速为例,来列举其对应的三角型隶属度函数:前述式中,表示车速,当然,其余各个输入数据的隶属度函数不在逐一罗列,其原理与前述车速的隶属度函数生成方法相同。
[0094]
在确定各输入数据的隶属度函数后,还需确定模糊输出量,即输出何种数据,在本实施例中,模糊输出量为碰撞预警等级,同时,也需要确定对该碰撞预警等级的论域,并基于邻域得出其对应的模糊子集,以便得出模糊输出量的隶属度函数,其确定过程如下述步骤s53所示。
[0095]
s53. 确定模糊输出量,并确定出所述模糊输出量对应的论域以及模糊子集,以便基于所述模糊输出量的模糊子集,确定出模糊输出量的隶属度函数;具体应用时,模糊输出量的论域为[0.1],对应的模糊子集为,对应的隶属度函数为高斯隶属度函数,当然,其模糊子集的确定,以及隶属度函数的确定与前述输入数据一致,于此不再赘述。
[0096]
在得到各输入数据以及模糊输出量的隶属度函数后,即可确定模糊规则,即在不同车速、移动速度、偏航角、俯仰角以及行人面积的情况下,对应的碰撞预警等级,即如下述步骤s54所示。
[0097]
s54. 基于所述模糊输出量的隶属度函数和每个输入数据对应的隶属度函数,建立模糊规则;具体的,可以但不限于使用遗传算法生成基于输入数据(即车速、移动速度、俯仰角、偏航角和行人面积)与碰撞预警等级的模糊规则;为便于理解,本实施例罗列了部分模糊规则,具体参见图7所指示的模糊规则表。
[0098]
在建立得到输入数据与模糊输出量的模糊规则后,即可基于该模糊规则对输入数据进行模糊推理,从而得出任一车辆相对于行人的碰撞预警等级,如下述总部后s55所示。
[0099]
s55. 根据所述模糊规则对所述输入数据进行模糊推理,得到所述任一车辆相对于行人的碰撞预警等级;具体应用时,可利用mandani模糊推理算法实现模糊推理,并可借助matlab中的fuzzy工具箱实现该推理过程,从而输出模糊输出量。
[0100]
在本实施例中,输出的模糊输出量虽然是碰撞预警等级,但是由于模糊推理输出
的为一个具体的数值,因此,本实施例中可根据输出数值来进行等级的划分,以便最终得到三个碰撞预警等级;具体的,本实施例对输入数据的模糊推理,是通过检测到的行人面积所决策的,即面积越大,车辆距行人距离越近,危险程度越高,其判断准则如下述所示:前述式中,表示输出数值,分别表示小行人所占的面积、中行人所占的面积以及大行人所占的面积,当然,前述和在模糊规则以及模糊推理时所得到的。
[0101]
由此通过前述步骤s5及其各个子步骤,即可从车速、行人的移动速度、行人距离车辆的距离(即行人面积)以及驾驶人员状态(即头部姿态角)四个方面来综合分析行人通过路口时的风险,从而准确得出行人通过路口时的碰撞预警等级。
[0102]
在得到碰撞预警等级后,即可基于该碰撞预警等级来对驾驶人员以及行人作出预警提示,如下述步骤s6所示。
[0103]
s6. 根据所述碰撞预警等级,向所述任一车辆内的驾驶人员发出碰撞预警提示,以及控制位于路口处的发光指示牌、语音预警器和斑马线警示灯进行碰撞预警提示;具体的,可根据不同的碰撞预警等级来实现不同方式的预警,如下述举例所示:若所述碰撞预警等级为安全,则控制所述发光指示牌以及所述斑马线警示灯发出常亮绿色光信号;当然,语音预警器可不发出语音警告。
[0104]
若所述碰撞预警等级为警告,则控制所述发光指示牌以及所述斑马线警示灯发出常亮黄色光信号,并控制所述语音预警器发出第一语音警告;具体应用时,第一语音警告可以但不限于为:存在安全隐患,请注意规避。
[0105]
若所述碰撞预警等级为危险,则控制所述发光指示牌以及所述斑马线警示灯发出闪烁红色光信号,且控制所述语音预警器发出第二语音警告;具体应用时,第二语音警告可以但不限于为:危险 危险 危险,并伴随有报警声(如滴滴滴);同时,可随着车辆的靠近,红色光信号的闪烁频率逐渐加快。
[0106]
在本实施例中,举例向驾驶人员发出碰撞预警提示可以但不限于为:向车载电脑发送语音报警信息,通过车载音响进行播放,从而从车内提示驾驶人员;由此,即可从车内以及车外同时提示驾驶人员,从而保证预警效果。
[0107]
在具体应用时,参见图4所示,发光指示牌可采用三角指示牌,而斑马线警示灯设置在斑马线两侧,且沿行人行走方向依次布置,由此,即可从斑马线两侧实现光信号预警。
[0108]
通过前述设计,本发明利用不同颜色的光信号,并结合语音信号来对行人作为预警提示,同时,光信号还可对任一车辆的驾驶人员起到明显的警示作用,由此,利用声光预警,可提高预警效果,从而进一步的降低发生交通事故的风险。
[0109]
由此通过前述步骤s1~s6及其各个子步骤对城市道路路口的行人预警方法的详细描述,本发明综合考虑了车速、驾驶人员状态以及行人状态等影响行人安全的因素,准确得出了行人通过路口时的碰撞预警等级,并可实现对驾驶人员以及行人的双向预警,由此,即可实现行人预警的准确性以及时效性,从而有效降低路口发生交通事故的风险。
[0110]
如图5所示,本实施例第二方面提供了一种实现实施例第一方面中所述的城市道路路口的行人预警方法的硬件装置,包括:
数据获取单元,用于获取路口两侧任一车辆的车速、任一车辆的驾驶人员的人脸图像、位于所述任一车辆行驶方向前方的行人图像、行人在第一时刻时所处的第一位置以及行人在第二时刻时所处的第二位置,其中,所述行人图像包括基于双目相机拍摄的第一图像和第二图像。
[0111]
角度检测单元,用于对所述人脸图像中的人脸进行角度检测,得到驾驶人员的头部姿态角。
[0112]
速度计算单元,用于基于所述第一时刻、所述第二时刻、所述第一位置以及所述第二位置,得出行人的移动速度。
[0113]
行人识别单元,用于利用训练后的目标检测模型,对所述第一图像和所述第二图像进行目标检测,得到所述第一图像和所述第二图像中目标检测框的中心点坐标。
[0114]
行人识别单元,用于获取所述双目相机的相机参数,其中,所述相机参数包括相机焦距以及基线长度。
[0115]
行人识别单元,用于根据所述中心点坐标和所述相机参数,计算得到行人相对于任一车辆的纵向距离。
[0116]
行人识别单元,用于对所述第一图像或所述第二图像进行灭点检测,得出所述第一图像或所述第二图像中的灭点坐标。
[0117]
行人识别单元,用于根据所述灭点坐标,对所述双目相机进行标定处理,得到所述双目相机内参数矩阵。
[0118]
行人识别单元,用于根据所述内参数矩阵和所述纵向距离,得到行人相对于任一车辆的横向距离。
[0119]
行人识别单元,还用于根据所述纵向距离以及所述横向距离,计算得到行人图像中的行人面积。
[0120]
模糊推理单元,用于以所述车速、所述头部姿态角、所述移动速度以及所述行人面积为输入数据,并利用模糊算法对所述输入数据进行模糊预警,以得出所述任一车辆相对于行人的碰撞预警等级。
[0121]
预警单元,用于根据所述碰撞预警等级,向所述任一车辆内的驾驶人员发出碰撞预警提示,以及控制位于路口处的发光指示牌、语音预警器和斑马线警示灯进行碰撞预警提示。
[0122]
本实施例提供的硬件装置的工作过程、工作细节和技术效果,可以参见实施例第一方面,于此不再赘述。
[0123]
如图6所示,本实施例第三方面提供了另一种城市道路路口的行人预警装置,以装置为电子设备为例,包括:依次通信相连的存储器、处理器和收发器,其中,所述存储器用于存储计算机程序,所述收发器用于收发消息,所述处理器用于读取所述计算机程序,执行如实施例第一方面所述的城市道路路口的行人预警方法。
[0124]
具体举例的,所述存储器可以但不限于包括随机存取存储器(random access memory,ram)、只读存储器(read only memory ,rom)、闪存(flash memory)、先进先出存储器(first input first output,fifo)和/或先进后出存储器(first in last out,filo)等等;具体地,处理器可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器可以采用dsp(digital signal processing,数字信号处理)、fpga(field-
programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现;同时,处理器也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processing unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。
[0125]
在一些实施例中,处理器可以在集成有gpu(graphics processing unit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制,例如,所述处理器可以不限于采用型号为stm32f105系列的微处理器、精简指令集计算机(reduced instruction set computer,risc)微处理器、x86等架构处理器或集成嵌入式神经网络处理器(neural-network processing units,npu)的处理器;所述收发器可以但不限于为无线保真(wifi)无线收发器、蓝牙无线收发器、通用分组无线服务技术(general packet radio service,gprs)无线收发器、紫蜂协议(基于ieee1202.15.4标准的低功耗局域网协议,zigbee)无线收发器、3g收发器、4g收发器和/或5g收发器等。此外,所述装置还可以但不限于包括有电源模块、显示屏和其它必要的部件。
[0126]
本实施例提供的电子设备的工作过程、工作细节和技术效果,可以参见实施例第一方面,于此不再赘述。
[0127]
本实施例第四方面提供了一种存储包含有实施例第一方面所述的城市道路路口的行人预警方法的指令的存储介质,即所述存储介质上存储有指令,当所述指令在计算机上运行时,执行如第一方面所述的城市道路路口的行人预警方法。
[0128]
其中,所述存储介质是指存储数据的载体,可以但不限于包括软盘、光盘、硬盘、闪存、优盘和/或记忆棒(memory stick)等,所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。
[0129]
本实施例提供的存储介质的工作过程、工作细节和技术效果,可以参见实施例第一方面,于此不再赘述。
[0130]
本实施例第五方面提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使所述计算机执行如实施例第一方面所述的城市道路路口的行人预警方法,其中,所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。
[0131]
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1