CN113986100A - 一种用于虚拟仿真的车辆违规驾驶行为判定方法 - Google Patents

一种用于虚拟仿真的车辆违规驾驶行为判定方法 Download PDF

Info

Publication number
CN113986100A
CN113986100A CN202111267537.0A CN202111267537A CN113986100A CN 113986100 A CN113986100 A CN 113986100A CN 202111267537 A CN202111267537 A CN 202111267537A CN 113986100 A CN113986100 A CN 113986100A
Authority
CN
China
Prior art keywords
road section
vehicle
trigger
judging
road
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
CN202111267537.0A
Other languages
English (en)
Other versions
CN113986100B (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 Kaiyun Interactive Technology Co ltd
Original Assignee
Beijing Kaiyun Interactive 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 Kaiyun Interactive Technology Co ltd filed Critical Beijing Kaiyun Interactive Technology Co ltd
Priority to CN202111267537.0A priority Critical patent/CN113986100B/zh
Publication of CN113986100A publication Critical patent/CN113986100A/zh
Application granted granted Critical
Publication of CN113986100B publication Critical patent/CN113986100B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/449Object-oriented method invocation or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45529Embedded in an application, e.g. JavaScript in a Web browser
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Abstract

本发明公开了一种用于虚拟仿真的车辆违规驾驶行为判定方法,该方法引用面向对象的编程思想,把复杂的路况根据其构成部分的具体的用途加以拆分成多个独立的对象,具体分为三大类,分别为正常行驶路段、停车观望路段、停车位路段,再分别为每个对象根据其用途单独配置判定方法,这样就化繁为简,最终可以使任何路况都可以根据用途进行拆分再配置判定方法,从而达到增强灵活程度和适应能力的目的,以解决现有车辆驾驶虚拟仿真软件系统中,道路单一,适应性差,导致对违规驾驶操作判断不全面,存在局限性的问题。

Description

一种用于虚拟仿真的车辆违规驾驶行为判定方法
技术领域
本发明涉及虚拟仿真技术领域,尤其涉及一种用于虚拟仿真的车辆违规驾驶行为判定方法。
背景技术
现代交通的发达虽然给人们带来很多便利,但同时也增加许多安全隐患。行车规范不仅关系到自身生命安全,同时也是尊重他人生命的体现。
在现实驾驶过程中,驾驶人员经常会忽略甚至违反行车规范和交通规则,导致严重后果。如何减少车辆违规驾驶行为,关键在于利用现有的计算机技术开发安全驾驶虚拟仿真系统,事先培训驾驶人员的行车规范和安全意识。该虚拟仿真系统的核心是对车辆行驶过程中各种违规驾驶的判定。
目前,对于驾驶虚拟仿真系统的研究获得初步成果,例如车企、驾校、4S店等诸多地方的引用,虽然侧重点不同,但均涉及车辆行驶过程中对车辆状态的判定方法。
针对软件系统开发的现实需求,目前针对车辆行驶过程中车辆状态的判定具有很多方法,但这些方法大都存在一定的局限性:一是侧重点的问题,通常情况下很多判定方法较为简单,软件系统更侧重于车辆本身的表现,而对车辆在行车状态中的驾驶规则判定并不重视;二是不够灵活的问题,对于车辆行驶过程中驾驶规则的判定,更专注于某一固定路况的判定,对其它路况并不适用,无法用于日常道路行驶过程中的判定。
发明内容
有鉴于此,本发明提供了一种用于虚拟仿真的车辆违规驾驶行为判定方法,用以解决虚拟驾驶中对违规驾驶操作判断不全面以及存在局限性的问题。
本发明提供的一种用于虚拟仿真的车辆违规驾驶行为判定方法,包括如下步骤:
S1:将道路模型、指示牌模型、标线模型和红绿灯模型导入Unity软件;
S2:根据道路的用途对道路进行分类,分为正常行驶路段、停车观望路段和停车位路段;
S3:根据每个路段的交通规则,在每个路段上创建Trigger触发器,在每个Trigger触发器上添加包含判定方法的脚本,对每个触发器的Inspector面板上出现的Tyep类型选项进行配置;
S4:当车辆驶入路段后,触发该路段上的Trigger触发器,根据该Trigger触发器包含的判定方法,对车辆的违规驾驶行为进行判定。
在一种可能的实现方式中,在本发明提供的上述用于虚拟仿真的车辆违规驾驶行为判定方法中,步骤S3中,所述正常行驶路段的交通规则包括:禁止逆行;根据标线判断能否越线,越线包括超车和调头;禁止超速;禁止驶入禁行路段;按指定路线行驶;
所述停车观望路段的交通规则包括:在该路段内停车并等待预设时间进行观望;
所述停车位路段的交通规则包括:车辆熄火后,车辆的方向正确。
在一种可能的实现方式中,在本发明提供的上述用于虚拟仿真的车辆违规驾驶行为判定方法中,步骤S3中,Type代表路段的类型,包含Go、Parking和Stop三种类型;其中,
Go代表路段为正常行驶路段,leftRoad代表相邻路段,limitSpeed代表是否限速,若选择limitSpeed则在MaxSpeed属性中添加限速值,Is Allow Cross Line代表路段能否越线,BanRoads为一个数组,代表禁止驶入本路段的路段集合;
Stop代表路段为停车观望路段,若选择Stop则配置完成;
Parking代表路段为停车位路段,若选择Parking则配置完成。
在一种可能的实现方式中,在本发明提供的上述用于虚拟仿真的车辆违规驾驶行为判定方法中,步骤S3中,在每个Trigger触发器上添加的包含判定方法的脚本,具体包括:
Start()方法,在场景初始运行时调用一次,用于初始化判断条件“isNoCrossLine”;若本路段禁止越线且相邻路段禁止越线,则判断条件“isNoCrossLine”为true;若存在任一路段允许越线,则判断条件“isNoCrossLine”为false;判断条件“isNoCrossLine”作用在FixedUpdate方法中,为“是否开启越线检测”的前置条件;
OnTriggerEnter(Collider other)方法,在车辆驶入触发器所在路段时调用一次,用于设置判断条件“isCrossLineCheck”为true,设置判断条件“isEnter”条件为true,判断是否进入了禁行路段;
OnTriggerExit(Collider other)方法,在车辆驶出触发器所在路段时调用一次,当该路段的触发器类型为正常行驶路段时,用于设置判断条件“isEnter”为false,若相邻路段的触发器在此时也已经被触发,则设置相邻路段的触发器中的判断条件“isEnter”为true,设置最后离开的路段为本路段,停止计时器功能;当该路段的触发器类型为停车观察路段时,用于判断是否未停车观察,停止计时器功能;当该路段的触发器类型为停车位路段时,用于停止计时器功能;
FixedUpdate()方法,在整个场景过程中的每一帧都调用一次,当该路段的触发器类型为正常行驶路段时,用于开始或停止计时器,开始或停止相邻车道的越线检测,判断是否超速,判断是否未按规划路线行驶,判断是否越线;当该路段的触发器类型为停车观察路段时,用于开启或停止计时器;当该路段的触发器类型为停车位路段时,用于开启或停止计时器;
GetAngle(Transform target)方法,用于判断车辆和路段的夹角;
Timer()方法,当该路段的触发器类型为正常行驶路段时,用于判断是否逆行;当该路段的触发器类型为停车观察路段时,用于设置判断条件“isStop”为true;当该路段的触发器类型为停车位路段时,用于判断是否正确停车;
OnInspectorGUI()方法,用于在面板上设置路段类型及其属性,当选择一种类型时,对应出现选择类型的独有属性。
在一种可能的实现方式中,在本发明提供的上述用于虚拟仿真的车辆违规驾驶行为判定方法中,步骤S4中,各路段的判定方法,包括:
当车辆驶入正常行驶路段后,正常行驶路段上的触发器触发“进入状态”开启,触发的瞬间若本路段为车辆驶入状态,则触发“越线检测状态”开启;若上一个路段是本路段的BanRoads中的元素,则判定为驶入禁行路段;判断车辆行驶方向与本路段朝向之间的夹角是否大于第一预设角度,若否,则判定为顺行,若是,则进一步判断持续时间是否大于第一预设时间,若是,则判定为逆行,若否,则判定为顺行;若相邻两条车道都禁止越线,则直接判定为越线;若在顺行状态下,相邻车道允许越线,则车辆驶入相邻车道是被允许的,同时触发“相邻车道的逆行判定”开启;若在顺行状态下,相邻车道不允许越线,则车辆驶入相邻车道被直接判定为越线;若在本车道行驶的车辆在调头后驶入相邻车道,且相邻车道允许越线,则判定为没有越线;若调头时间超过第二预设时间,则判定为逆行;若车辆的当前行驶速度大于该路段的最大限速,则直接被判定为超速;每个路段对应一个序列号,若当前路段的序列号与任务路线要求的序列号不同,则判定为未按指定路线行驶;在车辆驶离本路段后,触发器触发“离开状态”开启;
当车辆驶入停车观望路段后,停车观望路段上的触发器触发“进入状态”开启,若触发后车辆的速度为零,且等待时间大于第三预设时间,则停车观望条件达成;
当车辆驶入停车位路段后,停车位路段上的触发器触发“进入状态”开启,若触发后车辆的速度为零,且车辆行驶方向与停车位路段朝向之间的夹角大于第二预设角度,则停车失败。
本发明提供的上述用于虚拟仿真的车辆违规驾驶行为判定方法,该方法引用面向对象的编程思想,把复杂的路况根据其构成部分的具体的用途加以拆分成多个独立的对象,具体分为三大类,分别为正常行驶路段、停车观望路段、停车位路段,再分别为每个对象根据其用途单独配置判定方法,这样就化繁为简,最终可以使任何路况都可以根据用途进行拆分再配置判定方法,从而达到增强灵活程度和适应能力的目的,以解决现有车辆驾驶虚拟仿真软件系统中,道路单一,适应性差,导致对违规驾驶操作判断不全面,存在局限性的问题。
附图说明
图1为本发明提供的一种用于虚拟仿真的车辆违规驾驶行为判定方法的流程图;
图2为正常行驶路段脚本配置示例图;
图3为停车观望路段脚本配置示例图;
图4为停车位路段脚本配置示例图。
具体实施方式
下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整的描述,显然,所描述的实施方式仅仅是作为例示,并非用于限制本发明。
本发明提供的一种用于虚拟仿真的车辆违规驾驶行为判定方法,如图1所示,包括如下步骤:
第一步,将道路模型、指示牌模型、标线模型和红绿灯模型导入Unity软件。
本发明采用Unity3D软件及C#语言实现。Unity是实时3D互动内容创作和运营平台,包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实;Unity平台可以提供一整套完善的软件解决方案,用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机、平板电脑、PC、游戏主机、增强现实和虚拟现实设备。
指示牌模型,例如,限速60的指示牌模型,对应地,后续第三步中脚本上会设置为限速且限速60km/h。标线模型,例如,标线是虚线,对应地,后续第三步中脚本上会设置成可越线。
不同场景包含的模型不同。例如,机场场景,一般包括机场道路模型、航站楼模型、廊桥模型、飞机模型以及各种车辆模型等。
第二步,根据道路的用途对道路进行分类,分为正常行驶路段、停车观望路段和停车位路段。
具体地,道路的用途一般包括行驶、停车和停车观望;其中,停车观望即行驶到该路段后需要停车并观望一段时间,一般针对机场内的行驶判定,主要是为了观察是否有飞机路过,需要躲避。
第三步,根据每个路段的交通规则,在每个路段上创建Trigger触发器,在每个Trigger触发器上添加包含判定方法的脚本,对每个触发器的Inspector面板上出现的Tyep类型选项进行配置。
具体地,选取一段真实的道路,根据这段真实的道路进行建模,然后对这一段真实的道路进行拆分,比如一段道路包含正常行驶路段和停车位路段,则需要添加两个Trigger触发器及其对应的判断方法的脚本,添加完后做相应的配置,配置完成后,车辆在其中行驶,每行驶到一个Trigger触发器,该Trigger触发器的相应判断方法就会被触发,这样整个道路经过拆分、添加判断方法后再组合,一整段道路的判断方法就生效了。
正常行驶路段的交通规则包括:禁止逆行、根据标线判断能否越线(越线包括超车和调头)、禁止超速、禁止驶入禁行路段以及按指定路线行驶。其中,禁止驶入禁行路段,就是代表车辆禁止驶入该路段,此处的判定是在车辆进入禁行路段的瞬间进行判断的,例如,在十字路口,是否是按交通规则从正确的路段驶入本路段的,此处正确与否的判定是在进入后一个路段的时间点进行判断的;按指定路线行驶,一般针对特殊环境,例如机场、驾考、导航这类需要按指定路线行驶的情况,如果这个规则是开启的,即使行驶符合一般的交通规则,但没按指定路线行驶,也会被判定为错误。停车观望路段的交通规则包括:在该路段内停车并等待预设时间进行观望,一般针对机场内的行驶判定,主要是为了观察是否有飞机路过,需要躲避。停车位路段的交通规则包括:车辆熄火后,车辆的方向正确,即停车是否规范。
需要说明的是,一个路段可能同时具有多种用途,比如,既可以正常行驶,也可以停车,并且行驶到该路段后需要停车观望,因此,需要将三个用途都添加到该路段上,即需要将三个Trigger触发器都添加到该段路上。
在每个路段上的每个Trigger触发器上添加的包含判定方法的脚本,具体包括:Start()方法、OnTriggerEnter(Collider other)方法、OnTriggerExit(Collider other)方法、FixedUpdate()方法、GetAngle(Transform target)方法、Timer()方法以及OnInspectorGUI()方法。下面对上述判定法的脚本分别进行详细说明。
Start()方法,在场景初始运行时调用一次,用于初始化判断条件“isNoCrossLine”;若本路段禁止越线且相邻路段禁止越线,则判断条件“isNoCrossLine”为“true”;若存在任一路段允许越线,则判断条件“isNoCrossLine”为“false”;判断条件“isNoCrossLine”作用在FixedUpdate方法中,为“是否开启越线检测”的前置条件。
OnTriggerEnter(Collider other)方法,在车辆驶入触发器所在路段时调用一次,用于设置判断条件“isCrossLineCheck”为“true”,设置判断条件“isEnter”条件为“true”,判断是否进入了禁行路段。
OnTriggerExit(Collider other)方法,在车辆驶出触发器所在路段时调用一次,当该路段的触发器类型为正常行驶路段时,用于设置判断条件“isEnter”为“false”,若相邻路段的触发器在此时也已经被触发,则设置相邻路段的触发器中的判断条件“isEnter”为“true”,设置最后离开的路段为本路段,停止计时器功能;当该路段的触发器类型为停车观察路段时,用于判断是否未停车观察,停止计时器功能;当该路段的触发器类型为停车位路段时,用于停止计时器功能。
FixedUpdate()方法,在整个场景过程中的每一帧都调用一次,当该路段的触发器类型为正常行驶路段时,用于开始或停止计时器,开始或停止相邻车道的越线检测,判断是否超速,判断是否未按规划路线行驶,判断是否越线;当该路段的触发器类型为停车观察路段时,用于开启或停止计时器;当该路段的触发器类型为停车位路段时,用于开启或停止计时器。
GetAngle(Transform target)方法,用于判断车辆和路段的夹角。
Timer()方法,当该路段的触发器类型为正常行驶路段时,用于判断是否逆行;当该路段的触发器类型为停车观察路段时,用于设置判断条件“isStop”为“true”;当该路段的触发器类型为停车位路段时,用于判断是否正确停车。
OnInspectorGUI()方法,用于在面板上设置路段类型及其属性,当选择一种类型时,对应出现选择类型的独有属性。
在每个路段上的每个Trigger触发器中添加包含判定方法的脚本后,在每个触发器的Inspector面板上会显示Tyep类型选项。Type代表路段的类型,包含Go、Parking和Stop三种类型;其中,如图2所示,Go代表路段为正常行驶路段,leftRoad代表相邻路段,limitSpeed代表是否限速,若选择limitSpeed则在MaxSpeed属性中添加限速值,Is AllowCross Line代表路段能否越线,BanRoads为一个数组,代表禁止驶入本路段的路段集合;如图3所示,Stop代表路段为停车观望路段,若选择Stop则配置完成;如图4所示,Parking代表路段为停车位路段,若选择Parking则配置完成。
第四步,当车辆驶入路段后,触发该路段上的Trigger触发器,根据该Trigger触发器包含的判定方法,对车辆的违规驾驶行为进行判定。
当车辆驶入路段后,其行为就会被监测,一旦有违规行为,就会被该路段的判定方法判定为违规,并记录其是何种违规驾驶行为。具体地,各路段的判定方法如下:
当车辆驶入正常行驶路段后,正常行驶路段上的触发器触发“进入状态”开启,“进入状态”只在开启瞬间调用一次,触发的瞬间如果本路段不允许越线,则“越线检测状态”开启;若本路段为“车辆驶入状态”,则会判定上一个路段是否在本路段的禁行路段集合(即BanRoads)中,如果上一个路段是本路段的BanRoads中的元素,则判定为驶入禁行路段;车辆在本路段内行驶,就会时刻判断车辆的行驶方向,行驶方向是判断车辆是否逆行以及是否越线的决定因素,逆行的判定方法为判断车辆行驶方向与本路段朝向之间的夹角是否大于第一预设角度,如果车辆行驶方向与本路段朝向之间的夹角小于或等于第一预设角度,则判定为顺行,如果车辆行驶方向与本路段朝向之间的夹角大于第一预设角度,则进一步判断持续时间是否大于第一预设时间,如果持续时间大于第一预设时间,则判定为逆行,如果持续时间小于或等于第一预设时间,则判定为顺行;越线的判定方法是首先判断相邻两条车道是否都禁止越线,如果相邻两条车道都禁止越线,则直接判定为越线;如果在顺行状态下,相邻车道允许越线,则车辆驶入相邻车道是被允许的,同时触发“相邻车道的逆行判定”开启;如果在顺行状态下,相邻车道不允许越线,则车辆驶入相邻车道被直接判定为越线;如果在本车道行驶的车辆在调头后驶入相邻车道,且相邻车道允许越线,则判定为没有越线;如果调头时间超过第二预设时间,则判定为逆行;超速的判定方法是判断车辆的当前行驶速度是否大于该路段的最大限速,如果车辆的当前行驶速度大于该路段的最大限速,则直接被判定为超速;每个路段对应一个序列号,未按指定路线行驶的判定方法是判断当前路段的序列号是否是任务路线要求的序列号,如果当前路段的序列号与任务路线要求的序列号不同,则判定为未按指定路线行驶;在车辆驶离本路段后,触发器触发“离开状态”开启,“离开状态”只在离开的瞬间调用一次,在这一瞬间会做一些条件的判定、初始化和停止规则判定的操作。
当车辆驶入停车观望路段后,停车观望路段上的触发器触发“进入状态”开启,根据车辆的速度和等待时间进行判定,如果触发后车辆的速度为零,且等待时间大于第三预设时间,则停车观望条件达成。
当车辆驶入停车位路段后,停车位路段上的触发器触发“进入状态”开启,根据车辆的速度和车辆与停车位的角度进行判定,如果触发后车辆的速度为零,且车辆行驶方向与停车位路段朝向之间的夹角大于第二预设角度,则停车失败。
本发明提供的上述用于虚拟仿真的车辆违规驾驶行为判定方法,引用面向对象的编程思想,直接把道路根据其不同用途分为多个独立的对象,再根据每个对象的用途单独配置判定方法,最终可以使任何路况都可以根据用途进行拆分再配置判定方法,从而达到增强灵活程度和适应能力的目的。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (5)

1.一种用于虚拟仿真的车辆违规驾驶行为判定方法,其特征在于,包括如下步骤:
S1:将道路模型、指示牌模型、标线模型和红绿灯模型导入Unity软件;
S2:根据道路的用途对道路进行分类,分为正常行驶路段、停车观望路段和停车位路段;
S3:根据每个路段的交通规则,在每个路段上创建Trigger触发器,在每个Trigger触发器上添加包含判定方法的脚本,对每个触发器的Inspector面板上出现的Tyep类型选项进行配置;
S4:当车辆驶入某路段后,触发该路段上的Trigger触发器,根据该Trigger触发器包含的判定方法,对车辆的违规驾驶行为进行判定。
2.如权利要求1所述的用于虚拟仿真的车辆违规驾驶行为判定方法,其特征在于,步骤S3中,所述正常行驶路段的交通规则包括:
禁止逆行;
根据标线判断能否越线,越线包括超车和调头;
禁止超速;
禁止驶入禁行路段;
按指定路线行驶;
所述停车观望路段的交通规则包括:在该路段内停车并等待预设时间进行观望;
所述停车位路段的交通规则包括:车辆熄火后,车辆的方向正确。
3.如权利要求1所述的用于虚拟仿真的车辆违规驾驶行为判定方法,其特征在于,步骤S3中,Type代表路段的类型,包含Go、Parking和Stop三种类型;其中,
Go代表路段为正常行驶路段,leftRoad代表相邻路段,limitSpeed代表是否限速,若选择limitSpeed则在MaxSpeed属性中添加限速值,Is Allow Cross Line代表路段能否越线,BanRoads为一个数组,代表禁止驶入本路段的路段集合;
Stop代表路段为停车观望路段,若选择Stop则配置完成;
Parking代表路段为停车位路段,若选择Parking则配置完成。
4.如权利要求3所述的用于虚拟仿真的车辆违规驾驶行为判定方法,其特征在于,步骤S3中,在每个Trigger触发器上添加的包含判定方法的脚本,具体包括:
Start()方法,在场景初始运行时调用一次,用于初始化判断条件;“isNoCrossLine”,若本路段禁止越线且相邻路段禁止越线,则判断条件“isNoCrossLine”为true;若存在任一路段允许越线,则判断条件“isNoCrossLine”为false;判断条件“isNoCrossLine”作用在FixedUpdate方法中,为“是否开启越线检测”的前置条件;
OnTriggerEnter(Collider other)方法,在车辆驶入触发器所在路段时调用一次,用于设置判断条件“isCrossLineCheck”为true,设置判断条件“isEnter”条件为true,判断是否进入了禁行路段;
OnTriggerExit(Collider other)方法,在车辆驶出触发器所在路段时调用一次,当该路段的触发器类型为正常行驶路段时,用于设置判断条件“isEnter”为false,若相邻路段的触发器在此时也已经被触发,则设置相邻路段的触发器中的判断条件“isEnter”为true,设置最后离开的路段为本路段,停止计时器功能;当该路段的触发器类型为停车观察路段时,用于判断是否未停车观察,停止计时器功能;当该路段的触发器类型为停车位路段时,用于停止计时器功能;
FixedUpdate()方法,在整个场景过程中的每一帧都调用一次,当该路段的触发器类型为正常行驶路段时,用于开始或停止计时器,开始或停止相邻车道的越线检测,判断是否超速,判断是否未按规划路线行驶,判断是否越线;当该路段的触发器类型为停车观察路段时,用于开启或停止计时器;当该路段的触发器类型为停车位路段时,用于开启或停止计时器;
GetAngle(Transform target)方法,用于判断车辆和路段的夹角;
Timer()方法,当该路段的触发器类型为正常行驶路段时,用于判断是否逆行;当该路段的触发器类型为停车观察路段时,用于设置判断条件“isStop”为true;当该路段的触发器类型为停车位路段时,用于判断是否正确停车;
OnInspectorGUI()方法,用于在面板上设置路段类型及其属性,当选择一种类型时,对应出现选择类型的独有属性。
5.如权利要求3所述的用于虚拟仿真的车辆违规驾驶行为判定方法,其特征在于,步骤S4中,各路段的判定方法,包括:
当车辆驶入正常行驶路段后,正常行驶路段上的触发器触发“进入状态”开启,触发的瞬间若本路段为车辆驶入状态,则触发“越线检测状态”开启;若上一个路段是本路段的BanRoads中的元素,则判定为驶入禁行路段;判断车辆行驶方向与本路段朝向之间的夹角是否大于第一预设角度,若否,则判定为顺行,若是,则进一步判断持续时间是否大于第一预设时间,若是,则判定为逆行,若否,则判定为顺行;若相邻两条车道都禁止越线,则直接判定为越线;若在顺行状态下,相邻车道允许越线,则车辆驶入相邻车道是被允许的,同时触发“相邻车道的逆行判定”开启;若在顺行状态下,相邻车道不允许越线,则车辆驶入相邻车道被直接判定为越线;若在本车道行驶的车辆在调头后驶入相邻车道,且相邻车道允许越线,则判定为没有越线;若调头时间超过第二预设时间,则判定为逆行;若车辆的当前行驶速度大于该路段的最大限速,则直接被判定为超速;每个路段对应一个序列号,若当前路段的序列号与任务路线要求的序列号不同,则判定为未按指定路线行驶;在车辆驶离本路段后,触发器触发“离开状态”开启;
当车辆驶入停车观望路段后,停车观望路段上的触发器触发“进入状态”开启,若触发后车辆的速度为零,且等待时间大于第三预设时间,则停车观望条件达成;
当车辆驶入停车位路段后,停车位路段上的触发器触发“进入状态”开启,若触发后车辆的速度为零,且车辆行驶方向与停车位路段朝向之间的夹角大于第二预设角度,则停车失败。
CN202111267537.0A 2021-10-29 2021-10-29 一种用于虚拟仿真的车辆违规驾驶行为判定方法 Active CN113986100B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111267537.0A CN113986100B (zh) 2021-10-29 2021-10-29 一种用于虚拟仿真的车辆违规驾驶行为判定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111267537.0A CN113986100B (zh) 2021-10-29 2021-10-29 一种用于虚拟仿真的车辆违规驾驶行为判定方法

Publications (2)

Publication Number Publication Date
CN113986100A true CN113986100A (zh) 2022-01-28
CN113986100B CN113986100B (zh) 2022-10-04

Family

ID=79743957

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111267537.0A Active CN113986100B (zh) 2021-10-29 2021-10-29 一种用于虚拟仿真的车辆违规驾驶行为判定方法

Country Status (1)

Country Link
CN (1) CN113986100B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1019596A (ja) * 1996-07-01 1998-01-23 Honda Motor Co Ltd 車両用ナビゲーション装置
EP1662456A1 (en) * 2004-11-24 2006-05-31 Harman Becker Automotive Systems GmbH Driver information system
CN109263647A (zh) * 2018-09-11 2019-01-25 浙江吉利控股集团有限公司 一种驾驶不良行为监控系统和方法
CN110276953A (zh) * 2019-06-28 2019-09-24 青岛无车承运服务中心有限公司 基于北斗定位系统的车辆违规行驶风险分析方法
US20190382016A1 (en) * 2018-06-18 2019-12-19 Toyota Motor Engineering & Manufacturing North America, Inc. One-way direction sensing system
CN110853358A (zh) * 2019-12-04 2020-02-28 上运车物联网科技(深圳)有限公司 基于驾驶行为处理保险的方法、物联网智能终端
JP2020123074A (ja) * 2019-01-29 2020-08-13 株式会社デンソーテン 違反検出装置、および違反検出方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1019596A (ja) * 1996-07-01 1998-01-23 Honda Motor Co Ltd 車両用ナビゲーション装置
EP1662456A1 (en) * 2004-11-24 2006-05-31 Harman Becker Automotive Systems GmbH Driver information system
US20190382016A1 (en) * 2018-06-18 2019-12-19 Toyota Motor Engineering & Manufacturing North America, Inc. One-way direction sensing system
CN109263647A (zh) * 2018-09-11 2019-01-25 浙江吉利控股集团有限公司 一种驾驶不良行为监控系统和方法
JP2020123074A (ja) * 2019-01-29 2020-08-13 株式会社デンソーテン 違反検出装置、および違反検出方法
CN110276953A (zh) * 2019-06-28 2019-09-24 青岛无车承运服务中心有限公司 基于北斗定位系统的车辆违规行驶风险分析方法
CN110853358A (zh) * 2019-12-04 2020-02-28 上运车物联网科技(深圳)有限公司 基于驾驶行为处理保险的方法、物联网智能终端

Also Published As

Publication number Publication date
CN113986100B (zh) 2022-10-04

Similar Documents

Publication Publication Date Title
CN113157578B (zh) 一种基于场景的自动驾驶仿真测试方法及装置
CN111680362B (zh) 一种自动驾驶仿真场景获取方法、装置、设备及存储介质
CN111506980A (zh) 对虚拟驾驶环境生成交通场景的方法及装置
US20060040239A1 (en) Driving simulator having articial intelligence profiles, replay, hazards, and other features
CN111813650B (zh) 可视化无人车决策控制仿真测试方法及系统
CN110606093A (zh) 车辆性能评测方法、装置、设备和存储介质
CN112819968B (zh) 基于混合现实的自动驾驶车辆的测试方法和装置
CN110147085B (zh) 一种自动驾驶的测试方法、测试装置及测试系统
CN109358627A (zh) 基于无人驾驶的驾驶辅助方法、装置、设备、介质和车辆
CN113535569B (zh) 自动驾驶的控制效果确定方法
CN115016318A (zh) 自动驾驶仿真测试场景描述语言的融合方法及系统
CN108734949A (zh) 无人驾驶车辆仿真平台构建方法、装置、设备及存储介质
TWI708696B (zh) 停車行為評估方法及系統
CN113986100B (zh) 一种用于虚拟仿真的车辆违规驾驶行为判定方法
CN111983934B (zh) 一种无人车仿真测试用例生成方法及系统
US10417358B2 (en) Method and apparatus of obtaining feature information of simulated agents
CN112527633A (zh) 一种场景库的自动驾驶仿真测试方法及装置
CN114114954A (zh) 一种无人设备的控制方法及装置
CN115857772A (zh) 显示方法及电子设备
CN115904156A (zh) 显示方法、电子设备及车辆
CN116519316A (zh) 基于行为树的自动驾驶测试方法、装置、存储介质及设备
CN108492552A (zh) 基于机动车电子标识的路口精细化显示方法及装置
CN112001097A (zh) 自动驾驶仿真结果的分析和可视化方法和计算机设备
CN113793523B (zh) 一种指挥交通的方法、装置、车载设备及车辆
CN111381517B (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