Methods, apparatus, devices, and storage media for remote assistance
By determining the parking attributes of the target vehicle and the status of adjacent lanes, the autonomous vehicle triggers a remote assistance request, which solves the problem of autonomous vehicles getting stuck due to temporarily parked vehicles or environmental errors, and improves the efficiency and safety of getting out of trouble.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING VOYAGER TECH CO LTD
- Filing Date
- 2024-11-29
- Publication Date
- 2026-05-29
AI Technical Summary
Autonomous vehicles struggle to extricate themselves efficiently when encountering temporarily parked vehicles or when they are stuck due to environmental perception errors, which affects traffic safety and reliability.
By determining the parking attributes of the target vehicle and the lane status of adjacent lanes, the autonomous vehicle triggers a remote assistance request to obtain the remote equipment's extrication strategy or information in order to achieve autonomous extrication.
It improves the efficiency of autonomous vehicles in getting out of trouble, and enhances traffic safety and reliability.
Smart Images

Figure CN122116671A_ABST
Abstract
Description
Technical Field
[0001] The exemplary embodiments disclosed herein generally relate to the field of computers, and particularly to methods, apparatus, devices, computer-readable storage media, and computer program products for remote assistance. Background Technology
[0002] Autonomous driving is a technology that uses computers to replace or assist human drivers in perceiving the vehicle's surroundings, planning the vehicle's trajectory, and controlling the vehicle to reach a designated destination.
[0003] During operation, autonomous vehicles may become stuck due to unforeseen circumstances and may be unable to extricate themselves from this situation independently. Therefore, efficiently assisting autonomous vehicles in overcoming these challenges is crucial for improving driving safety and reliability. Summary of the Invention
[0004] In a first aspect of this disclosure, a method for remote assistance is provided. The method includes: in response to an autonomous vehicle being in a stranded state, determining a parking attribute of a target vehicle associated with the stranded state, the parking attribute indicating whether the target vehicle is a temporarily parked vehicle; in response to the parking attribute of the target vehicle satisfying a first condition, determining a lane state of an adjacent lane of the autonomous vehicle, the lane state indicating the direction of travel and / or the traffic status of the adjacent lane; and in response to the lane state satisfying a second condition, triggering the sending of an assistance request associated with the stranded state to a remote device.
[0005] In a second aspect of this disclosure, an apparatus for remote assistance is provided. The apparatus includes: a first determining module configured to, in response to an autonomous vehicle being in a stranded state, determine a parking attribute of a target vehicle associated with the stranded state, the parking attribute indicating whether the target vehicle is a temporarily parked vehicle; a second determining module configured to, in response to the parking attribute of the target vehicle satisfying a first condition, determine a lane state of an adjacent lane of the autonomous vehicle, the lane state indicating the direction of travel and / or the traffic status of the adjacent lane; and a triggering module configured to, in response to the lane state satisfying a second condition, trigger the sending of an assistance request associated with the stranded state to a remote device.
[0006] In a third aspect of this disclosure, an electronic device is provided. The device includes at least one processing unit; and at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit. When executed by the at least one processing unit, the instructions cause the electronic device to perform the method of the first aspect.
[0007] In a fourth aspect of this disclosure, a computer-readable storage medium is provided. A computer program is stored on the medium, which, when executed by a processor, implements the method of the first aspect.
[0008] In a fifth aspect of this disclosure, a computer program product is provided, comprising a computer program, wherein the computer program, when executed by a processor, implements the method of the first aspect.
[0009] It should be understood that the description in this section is not intended to limit the key or essential features of the embodiments of this disclosure, nor is it intended to restrict the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0010] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. In the drawings, the same or similar reference numerals denote the same or similar elements, wherein:
[0011] Figure 1 A schematic diagram of an example environment in which embodiments of the present disclosure can be implemented is shown;
[0012] Figure 2 A flowchart illustrating an example process of remote assistance according to some embodiments of this disclosure is shown;
[0013] Figure 3 A flowchart illustrating an example process of remote assistance according to some embodiments of this disclosure is shown;
[0014] Figures 4A to 4D A schematic diagram illustrating an example scenario of remote suction according to some embodiments of the present disclosure is shown;
[0015] Figure 5 A flowchart illustrating a remote assistance process according to some embodiments of the present disclosure is shown;
[0016] Figure 6 A schematic structural block diagram of a device for remote assistance according to some embodiments of the present disclosure is shown; and
[0017] Figure 7 A block diagram of an electronic device that can implement one or more embodiments of the present disclosure is shown. Detailed Implementation
[0018] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0019] It should be noted that the headings of any section / subsection provided herein are not limiting. Various embodiments are described throughout this document, and embodiments of any type may be included under any section / subsection. Furthermore, embodiments described in any section / subsection may be combined in any way with any other embodiments described in the same section / subsection and / or different sections / subsections.
[0020] In the description of embodiments of this disclosure, the term "comprising" and similar terms should be understood as open-ended inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may also be included below. The terms "first", "second", etc., may refer to different or the same objects. Other explicit and implicit definitions may also be included below.
[0021] The embodiments of this disclosure may involve user data, data acquisition, and / or use. All of these aspects comply with applicable laws, regulations, and relevant provisions. In the embodiments of this disclosure, all data collection, acquisition, processing, manipulation, forwarding, and use are conducted with the user's knowledge and confirmation. Accordingly, in implementing the embodiments of this disclosure, the type, scope of use, and usage scenarios of any data or information that may be involved should be communicated to the user and their authorization obtained in accordance with relevant laws and regulations through appropriate means. The specific methods of notification and / or authorization may vary depending on the actual situation and application scenario, and the scope of this disclosure is not limited in this respect.
[0022] In this specification and the embodiments, any processing of personal information will be carried out only under the premise of legality (such as obtaining the consent of the personal information subject, or being necessary for the performance of a contract), and will only be carried out within the scope stipulated or agreed upon. A user's refusal to process personal information other than that necessary for basic functions will not affect the user's use of basic functions.
[0023] As used in this paper, the term "model" refers to a system that learns the relationship between inputs and outputs from training data, enabling it to generate corresponding outputs for a given input after training. Model generation can be based on machine learning techniques. Deep learning is a machine learning algorithm that uses multiple layers of processing units to process inputs and provide corresponding outputs. In this paper, "model" may also be referred to as a "machine learning model," a "machine learning network," or simply a "network," and these terms are used interchangeably.
[0024] As briefly mentioned earlier, due to the rapidly changing environment or errors in the vehicle's environmental perception system, obstacles may appear on the planned path that the autonomous vehicle (also known as an autonomous vehicle) cannot accurately identify, causing the autonomous vehicle to stop or be unable to continue driving.
[0025] One mode of failure for autonomous vehicles is called "stuck," which occurs when an autonomous vehicle is unable to continue its current path and comes to a stop. This can prevent the vehicle from completing its subsequent journey and may adversely affect traffic. For example, an autonomous vehicle may fail to recognize a parked vehicle, resulting in it being stuck.
[0026] In view of this, embodiments of the present disclosure provide an improved remote assistance scheme. In this scheme, if it is determined that the autonomous vehicle is in a stranded state, the parking attributes of the target vehicle associated with the stranded state are determined. The parking attributes indicate whether the target vehicle is a temporary parking vehicle. It is determined whether the parking attributes of the target vehicle satisfy a first condition. If the parking attributes of the target vehicle satisfy the first condition, the lane status of the adjacent lanes of the autonomous vehicle is determined. The lane status indicates the traffic direction and / or traffic status of the adjacent lanes. Then, it is determined whether the lane status satisfies a second condition. If the lane status satisfies the second condition, an assistance request associated with the stranded state is triggered and sent to a remote device.
[0027] Therefore, in situations where an autonomous vehicle is stranded due to a parked vehicle, embodiments of this disclosure can autonomously trigger a remote assistance request based on information such as the vehicle's parking attributes and lane status. In this way, embodiments of this disclosure can improve the efficiency of remote assistance, thereby enhancing the safety and reliability of the autonomous vehicle.
[0028] Example Environment
[0029] Figure 1A schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented is shown. As shown, environment 100 may include an autonomous vehicle 101. The autonomous vehicle 110 may be a vehicle with autonomous driving capability (or driverless capability), also known as an unmanned vehicle, autonomous driving vehicle, etc.
[0030] In some embodiments, the autonomous vehicle 101 can be any type of vehicle capable of carrying people and / or goods and moving via a power system such as an engine, including but not limited to cars, trucks, buses, electric vehicles, motorhomes, etc. The autonomous vehicle 101 can be an automated driving vehicle (also known as an autonomous vehicle) that integrates functions such as environmental perception, planning and decision-making, and multi-level assisted driving.
[0031] In environment 100, the autonomous vehicle 101 is equipped with electronic equipment 150, which can communicate with remote equipment 120. For example, electronic equipment 150 can communicate with remote equipment 120 via appropriate wireless communication methods. Electronic equipment 150 can be any device with computing capabilities, capable of generating a route to escape difficulties or executing corresponding commands based on path planning information issued by remote equipment 120.
[0032] In some embodiments, the remote device 120 may include, for example, a cloud device or an edge computing device. Such a remote device 120 may be configured to provide the autonomous vehicle 101 with supplemental perception information about the traffic environment and / or provide guidance for the stranded autonomous vehicle 101 to extricate itself from trouble.
[0033] In environment 100, assistant 110 can interact directly with remote device 120, or via an attachment device of remote device 120. Remote device 120 can present user interface 140 to assistant 110, allowing assistant 110 to view vehicle information or perform route planning, etc.
[0034] It should be understood that the structure and function of environment 100 are described for illustrative purposes only and do not imply any limitation on the scope of this disclosure.
[0035] Remote assistance to escape
[0036] Some exemplary embodiments of this disclosure will now be described in detail with reference to the accompanying drawings.
[0037] Figure 2 A flowchart of an example process 200 for assisting in getting out of trouble according to some embodiments of this disclosure is shown. For the convenience of discussion, the following will be combined with Figure 1 Some embodiments of this disclosure are described from the perspective of environment 100 and electronic device 150, but these are merely exemplary.
[0038] In box 202, if the autonomous vehicle 101 is in a trapped state, the electronic device 150 determines the parking attributes of the target vehicle associated with the trapped state. Generally, when the autonomous vehicle 101 is in a trapped state, the electronic device 150 may attempt to perform an escape operation to enable it to extricate itself from the trapped state, reducing the need to trigger remote assistance.
[0039] In some examples, such as Figure 3 As shown, Figure 3 A flowchart of an example process 300 for assisting in getting out of trouble according to some embodiments of the present disclosure is shown. At block 304, if it is determined that the autonomous vehicle 101 is in a trapped state, the electronic device 150 can perform an extrication operation for the autonomous vehicle 101. For example, it may attempt to perform path planning via the autonomous driving system, or attempt to determine an obstacle avoidance strategy via the autonomous driving system, etc. Of course, the above extrication operations are merely exemplary; in practical applications, any appropriate extrication strategy can be selected according to actual needs, and the embodiments of the present disclosure do not limit this.
[0040] In some cases, the autonomous vehicle 101 can successfully extricate itself from the entanglement state through an escape operation. If the escape operation fails, the electronic device 150 can determine the cause of the autonomous vehicle 101 becoming entangled. If it is determined that the autonomous vehicle 101 is entangled due to another vehicle, that vehicle can be identified as the target vehicle associated with the entanglement state. For example, if it is determined that a vehicle parked in front of the autonomous vehicle 101 caused the autonomous vehicle 101 to become entangled, that vehicle can be identified as the target vehicle. The electronic device 150 can determine the parking attributes of the target vehicle.
[0041] The parking attribute indicates whether the target vehicle is a temporary parking vehicle. A temporary parking vehicle can be understood as a vehicle that is temporarily (or briefly) parked without the driver leaving the vehicle. In some embodiments, the autonomous vehicle 101 may be deployed with an environmental perception system, which may be configured to perceive environmental information of the autonomous vehicle 101. The electronic device 150 can obtain the parking attribute of the target vehicle from the environmental perception system.
[0042] Continue to refer to Figure 2In box 204, electronic device 150 can determine whether the target vehicle is a temporarily parked vehicle based on its parking attributes. If it is determined that the target vehicle is a temporarily parked vehicle, process 200 can proceed to box 206. In box 206, electronic device 150 can trigger an assistance request related to the stranded state to remote device 120. This assistance request can request remote device 120 to assist in extricating the vehicle from the stranded state, such as requesting remote device 120 to verify whether the target vehicle is a temporarily parked vehicle, requesting remote device 120 to provide obstacle avoidance strategies, or requesting remote device 120 to instruct on driving strategies, etc.
[0043] In some examples, such as Figure 3 As shown, if it is determined in block 306 that the target vehicle is a temporarily parked vehicle, process 300 can proceed to block 308. In block 308, electronic device 150 can attempt to perform active obstacle avoidance operations, such as decelerating, detouring, or stopping and waiting. In block 310, electronic device 150 determines whether obstacle avoidance was successful. If it is determined that autonomous vehicle 101 successfully avoided the obstacle, electronic device 150 can end the process of the embodiment of this disclosure. If it is determined that autonomous vehicle 101 failed to avoid the obstacle, process 300 can proceed to block 330. In block 330, electronic device 150 triggers the sending of an assistance request to remote device 120.
[0044] In other examples, if it is determined in box 310 that the autonomous vehicle 101 has failed obstacle avoidance, process 300 may proceed to, for example, box 328 (not shown in the figure). In box 328, the electronic device may instruct the autonomous vehicle 101 to stop and wait. The electronic device 150 may determine whether the target vehicle has moved away after a predetermined time T1 (e.g., 3 seconds, 5 seconds, etc.) since the autonomous vehicle 101 switched to the trapped state (or from the time the target vehicle was detected). If it is determined that the target vehicle has not moved away, the vehicle remains stopped. The electronic device 150 may trigger an assistance request to the remote device 120. It is understood that in some cases, a temporarily stopped vehicle may move away on its own after a short stop, thereby freeing the autonomous vehicle from the trapped state; appropriate stopping and waiting can reduce the triggering of remote assistance.
[0045] Continue to refer to Figure 2 If it cannot be determined whether the target vehicle is a temporary parking vehicle in box 204, the electronic device 150 can determine that the parking attribute of the target vehicle meets the first condition, and process 200 proceeds to box 208. This first condition indicates that it is uncertain whether the target vehicle is a temporary parking vehicle. That is, if the parking attribute meets the first condition, it means that the electronic device 150 cannot determine whether the target vehicle is a temporary parking vehicle based on the parking attribute.
[0046] In box 208, electronic device 150 determines the lane status of adjacent lanes of autonomous vehicle 101. The lane status indicates the direction of travel and / or the traffic status of adjacent lanes. The direction of travel of adjacent lanes may be the same as or different from the direction of travel of the current lane of autonomous vehicle 101. The traffic status of adjacent lanes can indicate whether adjacent lanes are passable; for example, if it is determined that the adjacent lane is vacant or a vehicle in the adjacent lane is in motion, the adjacent lane is determined to be passable. If one or more stationary vehicles are detected in the adjacent lane, the adjacent lane is determined to be impassable.
[0047] In block 210, electronic device 150 determines whether the lane status of an adjacent lane meets a second condition. In some embodiments, the second condition may include at least one of the following: the travel direction of the adjacent lane is the same as the travel direction of the current lane where the autonomous vehicle is located, or the travel status of the adjacent lane is a passable state. Electronic device 150 can determine whether the travel direction of the adjacent lane is the same as the travel direction of the current lane based on the lane status of the adjacent lane, and can also determine whether the adjacent lane is in a passable state, such as determining whether the adjacent lane is vacant, whether a vehicle in the adjacent lane is in motion, etc. If it is determined that the travel direction of the adjacent lane is the same as the current lane, and it is determined that the adjacent lane is in a passable state, electronic device 150 can determine that the lane status of the adjacent lane meets the second condition.
[0048] As an example, such as Figure 4A As shown, Figure 4A A schematic diagram of an example scenario 400A for assisting in getting out of trouble according to some embodiments of the present disclosure is shown. Example scenario 400A shows lanes 403, 404, and 405. Autonomous vehicle 101 and target vehicle 402 are located in lane 405 (i.e., the current lane). Lane 404, which is adjacent to lane 405 on the left (i.e., the adjacent lane), is vacant, and the travel direction of lane 404 is the same as that of lane 405, indicating that autonomous vehicle 101 can change lanes to lane 404 to continue driving. Electronic device 150 can determine that the lane state of lane 404 meets a second condition.
[0049] If, in box 210, it is determined that the lane status of the adjacent lane meets the second condition, indicating that the travel direction of the adjacent lane is consistent with the travel direction of the current lane and the adjacent lane is passable, the autonomous vehicle 101 can change lanes to the adjacent lane, and process 200 proceeds to box 206. In box 206, the electronic device 150 triggers an assistance request associated with the stranded state to the remote device 120. For example, it requests the remote device 120 to provide obstacle avoidance guidance, or requests the remote device 120 to confirm whether it is permissible to change to the adjacent lane to continue driving.
[0050] In some embodiments, if it is determined in block 210 that the lane status of an adjacent lane does not meet the second condition, indicating that the travel direction of the adjacent lane is inconsistent with the travel direction of the current lane, or that the adjacent lane is impassable, the autonomous vehicle 101 cannot change lanes. In this case, process 200 proceeds to block 212. In block 212, electronic device 150 determines the driving scenario of autonomous vehicle 101. The driving scenario can indicate the traffic conditions of the environment in which autonomous vehicle 101 is located. In block 214, electronic device 150 determines whether the driving scenario of autonomous vehicle 101 is a queuing scenario. If it is determined in block 214 that the driving scenario of autonomous vehicle 101 is not a queuing scenario (i.e., a non-queuing scenario), process 200 proceeds to block 206. In block 206, electronic device 150 triggers the sending of an assistance request to a remote device. If it is determined in block 214 that the driving scenario of autonomous vehicle 101 is a queuing scenario, process 200 proceeds to block 216. In box 216, electronic device 150 executes driving strategies for queuing scenarios, such as stopping and waiting, or following the vehicle in front, etc.
[0051] Generally, in queuing scenarios, the current lane of autonomous vehicle 101 is usually not empty (e.g., there are multiple stationary vehicles), and adjacent lanes with the same direction of travel are usually also impassable (e.g., multiple stationary vehicles or multiple slow-moving vehicles). Conversely, if the road segment in front of the target vehicle is empty, it can be determined that the driving scenario of autonomous vehicle 101 is a non-queuing scenario. In some embodiments, electronic device 150 can determine whether the target road segment in the current lane of autonomous vehicle 101 is empty. The target road segment is located in front of the target vehicle in the direction of travel in the current lane; for example, the target road segment may include a road segment within a predetermined distance L1 (e.g., 100m) in front of the target vehicle. If it is determined that the target road segment is empty, electronic device 150 determines that the driving scenario of autonomous vehicle 101 is a non-queuing scenario.
[0052] Regarding the determination of whether the target road segment in the current lane is vacant, in some examples, electronic device 150 can determine whether the perception range of autonomous vehicle 101 can cover the target road segment. If it is determined that the perception range of autonomous vehicle 101 can cover the target road segment, electronic device 150 determines whether the target road segment is vacant based on the perception information of autonomous vehicle 101. As an example, such as Figure 3As shown, if it is determined in box 312 that the lane status does not meet the second condition, process 300 can proceed to box 314. In box 314, electronic device 150 determines whether the perception range of autonomous vehicle 101 can cover the target road segment. If the perception range of autonomous vehicle 101 can cover the target road segment, electronic device 150, based on the perception information of autonomous vehicle 101, senses whether the target road segment is in an idle state. If it is determined in box 314 that the target road segment is in an idle state, electronic device 150 determines that the driving scenario of autonomous vehicle 101 is a non-queue scenario, and process 300 proceeds to box 328. If it is determined in box 328 that the target vehicle has not left after a predetermined time T1, in box 330, electronic device 150 triggers the sending of an assistance request to remote device 120.
[0053] As another example, such as Figure 4A As shown, when the target vehicle 402 is relatively small, or when the target vehicle 402 is not directly in front of the autonomous vehicle 101, the perception range of the autonomous vehicle 101's environmental perception system (e.g., camera, radar, etc.) can cover the target road segment 406. In this case, the electronic device 150 can determine whether the target road segment 406 is in an idle state based on the perception information of the environmental perception system.
[0054] In some examples, electronic device 150 can determine whether at least one traffic participant has entered the target road segment. If it is determined that at least one traffic participant has entered the target road segment, electronic device 150 can determine that the target road segment is vacant. As an example, such as Figure 3 As shown in box 322, electronic device 150 can determine the movement trajectory of traffic participants in the environment where autonomous vehicle 101 is located. Based on the movement trajectory, it determines whether the traffic participant has entered the target road segment. If it is determined that the traffic participant has entered the target road segment, it can be determined that the target road segment is in an idle state, and thus it can be determined that the autonomous vehicle is in a non-queueing scenario.
[0055] As an example, such as Figure 4B As shown, Figure 4B A schematic diagram of an example scenario 400B for assisting in getting out of trouble according to some embodiments of the present disclosure is shown. In example scenario 400B, the target vehicle 407 located in front of the autonomous vehicle 101 is relatively large, and the perception range of the autonomous vehicle 101's environmental perception system cannot cover the target road segment 406. In this case, the electronic device 150 can determine that the autonomous vehicle 101 is in a queuing scenario and instruct the autonomous vehicle 101 to execute a queuing scenario driving strategy, such as stopping and waiting. If it is determined that a vehicle 408 located in the adjacent lane 404 on the left enters the target road segment within a predetermined time T3 (e.g., 20 seconds), the electronic device 150 can determine that the target road segment 406 is in an idle state, and thus determine that the autonomous vehicle 101 is in a non-queuing scenario.
[0056] In some embodiments, if the electronic device 150 determines that the lane status of an adjacent lane does not meet the second condition, it may be because the autonomous vehicle 101 is located in an intersection area, and the autonomous vehicle 101 may identify as having no adjacent lanes. Based on this, if it is determined that the lane status of an adjacent lane does not meet the second condition, the electronic device 150 can determine whether the autonomous vehicle 101 is located in an intersection area. If it is determined that the autonomous vehicle 101 is located in an intersection area, the electronic device 150 can trigger the sending of an assistance request to the remote device 120.
[0057] As an example, such as Figure 3 As shown, if it is determined in box 314 that the target road segment is not idle, process 300 can proceed to box 316. In box 316, electronic device 150 determines whether autonomous vehicle 101 is located in the intersection area. If it is determined in box 316 that autonomous vehicle 101 is located in the intersection area, process 300 proceeds to box 328. If it is determined that the target vehicle has not left after a predetermined time T1, electronic device 150 triggers the sending of an assistance request to remote device 120.
[0058] The intersection area here can include a preset range of the intersection. In some examples, such as... Figure 4C As shown, Figure 4C A schematic diagram of an example scenario 400C for assisting in getting out of trouble according to some embodiments of the present disclosure is shown. Example scenario 400C shows stop lines 411, 412, 413, 414 and extension lines 421, 422, 423, 424 of four roads. Stop lines 411, 412, 413, 414 and extension lines 421, 422, 423, 424 collectively define an intersection area 410. That is, the intersection area may include the area enclosed by multiple stop lines and their extensions. In other examples, the intersection area may also include a pedestrian crossing and the area enclosed by multiple pedestrian crossings. In yet another example, the intersection area may also include a paved or right-turn lane.
[0059] In some embodiments, the electronic device 150 may determine that the lane status of an adjacent lane does not meet the second condition because the autonomous vehicle 101 is located in a section of road where lane changing is prohibited, and the autonomous vehicle 101 may identify that there are no adjacent lanes. Based on this, if the lane status of an adjacent lane does not meet the second condition, the electronic device 150 can determine whether lane changing is permitted in the current lane where the autonomous vehicle 101 is located. If it is determined that lane changing is not permitted in the current lane, the electronic device 150 can trigger the sending of an assistance request to a remote device.
[0060] As an example, such as Figure 3As shown, if it is determined in box 316 that the autonomous vehicle 316 is not in the intersection area, process 300 can proceed to box 318. In box 318, the electronic device 150 can determine whether changing lanes is permitted in the current lane where the autonomous vehicle 101 is located. For example, the electronic device 150 can determine whether the traffic markings on both sides of the current lane are prohibited markings (e.g., solid white lines, solid yellow lines, double solid white lines, double solid yellow lines, etc.). If it is determined that both sides of the current lane are prohibited markings, the electronic device 150 can determine that changing lanes is not permitted in the current lane. If it is determined that at least one of the traffic markings on both sides of the current lane is not a prohibited marking (e.g., at least one traffic marking is a dashed yellow line or a dashed white line), the electronic device 150 determines that changing lanes is permitted in the current lane.
[0061] In some embodiments, if it is determined that lane changing is not permitted in the current lane, the electronic device 150 may determine whether a traffic light corresponding to the current lane is deployed within a predetermined distance L2 (e.g., the sensing distance of an environmental perception system) in front of the autonomous vehicle 101. Based on the determination of whether a traffic light corresponding to the current lane is deployed, a waiting time is determined. If it is determined that the waiting time of the autonomous vehicle 101 exceeds a predetermined time T2 (sometimes referred to herein as a first predetermined time), and the target vehicle has not left, the electronic device 150 triggers the sending of an assistance request to the remote device 120.
[0062] Regarding the determination of the waiting time, in some examples, if it is determined that a traffic light corresponding to the current lane is deployed within a predetermined distance L2 ahead of the autonomous vehicle 101, the electronic device 150 can switch the traffic light to indicate that the current lane allows straight-ahead travel and begin calculating the waiting time. For example, if an indicator light is detected ahead of the current lane, the waiting time can be calculated from when the indicator light switches to green. If the waiting time reaches a predetermined time T2 and the target vehicle has not left, the electronic device 150 can trigger an assistance request to the remote device 120. In other examples, if it is determined that no traffic light corresponding to the current lane is deployed within a predetermined distance L2 ahead of the autonomous vehicle 101, the electronic device 150 can calculate the waiting time from the moment the autonomous vehicle 101 stops. Of course, the electronic device 150 can also switch from the autonomous vehicle 101 to a trapped state, or start calculating the waiting time from when the autonomous vehicle 101 detects that the target vehicle has stopped.
[0063] In some embodiments, if the lane status does not meet the second condition, the electronic device 150 can determine the number of traffic participants changing from the current lane of the autonomous vehicle 101 to an adjacent lane. If the number of traffic participants changing from the current lane to an adjacent lane reaches a threshold, an assistance request is triggered to the remote device 120. If a certain number of traffic participants (e.g., vehicles) change from the current lane to an adjacent lane, it may indicate that the adjacent lane is passable. The electronic device 150 can trigger an assistance request to the remote device 120 to request the remote device 120 to assist in determining whether a lane change is permissible, or to request the remote device 120 to provide an obstacle avoidance strategy.
[0064] As an example, such as Figure 3 As shown, if it is determined in box 322 that no traffic participant has been detected entering the target road segment, process 300 can proceed to box 324. In box 324, electronic device 150 can determine that the number of traffic participants changing to adjacent lanes exceeds the number of autonomous vehicle 101 and the target vehicle. If it is determined that the number of such traffic participants exceeds a threshold, process 300 proceeds to box 328. If it is determined in box 328 that the target vehicle has not left after a predetermined time T1, in box 330, electronic device 150 triggers the sending of an assistance request to remote device 120.
[0065] As another example, such as Figure 4D As shown, Figure 4D A schematic diagram of an example scenario 400D for assisting in getting out of trouble according to some embodiments of this disclosure is shown. The threshold may be two traffic participants. Based on this, vehicle 431 changes lanes from behind autonomous vehicle 101 to lane 404, and then vehicle 431 passes autonomous vehicle 101 and target vehicle 402. Vehicle 432 changes lanes from behind autonomous vehicle 101 to lane 404, and then changes lanes from lane 404 to lane 403. Then vehicle 431 passes autonomous vehicle 101 and target vehicle 402. Electronic device 150 can determine that it has detected two traffic participants changing to adjacent lanes and passing autonomous vehicle 101 and target vehicle 402. Electronic device 150 can determine that the number of traffic participants changing to adjacent lanes and passing autonomous vehicle 101 and target vehicle 402 exceeds a threshold.
[0066] In some embodiments, if the lane condition does not meet the second condition, the electronic device 150 can switch from the autonomous vehicle 101 to a stranded state or start calculating the parking waiting time from the moment the autonomous vehicle 101 senses the target vehicle. If it is determined that the parking waiting time exceeds a predetermined time L2 (sometimes referred to herein as a second predetermined time), and the target vehicle has not moved, the electronic device 150 can trigger an assistance request to be sent to a remote device. The predetermined time L2 can be 10 seconds, 15 seconds, 20 seconds, etc. Embodiments of this disclosure do not limit this.
[0067] As an example, such as Figure 3 As shown, if it is determined in box 324 that the number of traffic participants changing to adjacent lanes does not exceed a threshold, process 300 can proceed to box 332. In box 332, electronic device 150 can determine the parking waiting time and determine whether the parking waiting time exceeds a predetermined time L2. If it is determined in box 332 that the parking waiting time exceeds the predetermined time L2, process 300 proceeds to box 330. In box 330, electronic device 150 triggers the sending of an assistance request to remote device 120. This assistance request may carry information related to the trapped state of autonomous vehicle 101, such as perception information captured by the environmental perception system, judgment logic that triggers the sending of an assistance request to remote device 120, etc., so that remote device 120 can quickly determine the cause of the trapped autonomous vehicle 120, thereby improving the extrication efficiency of autonomous vehicle 101.
[0068] It should also be noted that the aforementioned predetermined durations, distances, and thresholds are all exemplary. In practical applications, any appropriate duration, distance, or threshold can be selected according to actual needs. For example, a corresponding predetermined duration can be configured for each judgment logic that triggers the sending of an assistance request to the remote device 120. When the corresponding judgment logic determines that an assistance request needs to be triggered to the remote device 120, the electronic device 150 can determine whether the parking waiting time of the autonomous vehicle 101 exceeds the corresponding predetermined duration. If it exceeds the corresponding predetermined duration, an assistance request is triggered to the remote device 120.
[0069] In summary, according to the embodiments of this disclosure, when an autonomous vehicle is stranded due to a parked vehicle, the embodiments of this disclosure can autonomously trigger a remote assistance request based on information such as the vehicle's parking attributes and lane status. In this way, the embodiments of this disclosure can improve the efficiency of remote assistance, thereby enhancing the safety and reliability of the autonomous vehicle.
[0070] Example processes, apparatus and equipment
[0071] Figure 5 A flowchart of a process 500 for remote assistance according to some embodiments of the present disclosure is shown. Process 500 can be implemented at electronic device 150, or it can be implemented collaboratively by electronic device 150 and remote device 120.
[0072] In box 510, electronic device 150, in response to the autonomous vehicle being in a distressed state, determines the parking attributes of the target vehicle associated with the distressed state, the parking attributes indicating whether the target vehicle is a temporary parking vehicle.
[0073] In box 520, electronic device 150, in response to the target vehicle’s parking attributes satisfying a first condition, determines the lane status of the autonomous vehicle’s adjacent lanes, the lane status indicating the direction of travel and / or the state of travel of the adjacent lanes.
[0074] In box 530, electronic device 150, in response to the lane condition meeting the second condition, triggers the sending of an assistance request associated with the stranded state to a remote device.
[0075] In some embodiments, process 500 further includes: determining the driving scenario of the autonomous vehicle in response to the lane state not meeting the second condition; and triggering the sending of an assistance request to a remote device in response to the driving scenario being a non-queuing scenario.
[0076] In some embodiments, determining the driving scenario of an autonomous vehicle includes: determining whether the target road segment in the current lane where the autonomous vehicle is located is in an idle state, wherein the target road segment is located in front of the target vehicle in the direction of travel of the current lane; and in response to determining that the target road segment is in an idle state, determining that the driving scenario is a non-queuing scenario.
[0077] In some embodiments, determining whether a target road segment is in an idle state includes: in response to determining that the perception range of the autonomous vehicle can cover the target road segment, determining whether the target road segment is in an idle state based on the perception information of the autonomous vehicle.
[0078] In some embodiments, determining whether a target road segment is in an idle state includes: determining that the target road segment is in an idle state in response to determining that at least one traffic participant has entered the target road segment.
[0079] In some embodiments, process 500 further includes: in response to the lane state not meeting the second condition, determining whether the autonomous vehicle is located in an intersection area, the intersection area including a preset range of the intersection; and in response to determining that the autonomous vehicle is located in the intersection area, triggering the sending of an assistance request to a remote device.
[0080] In some embodiments, process 500 further includes: in response to the lane state not meeting the second condition, determining whether lane changing is permitted in the current lane where the autonomous vehicle is located; and based on the determination that lane changing is not permitted in the current lane, triggering the sending of an assistance request to a remote device.
[0081] In some embodiments, triggering the sending of an assistance request to a remote device based on determining that changing lanes is not allowed in the current lane includes: in response to determining that changing lanes is not allowed in the current lane, determining whether a traffic light corresponding to the current lane is deployed within a predetermined distance ahead of the autonomous vehicle; determining a parking waiting time based on the determination result of whether a traffic light corresponding to the current lane is deployed; and in response to the parking waiting time exceeding a first predetermined time and the target vehicle not leaving, triggering the sending of an assistance request to a remote device.
[0082] In some embodiments, process 500 further includes: in response to the lane state not meeting the second condition, determining the number of traffic participants changing from the current lane where the autonomous vehicle is located to an adjacent lane; and in response to the number of traffic participants reaching a threshold, triggering the sending of an assistance request to a remote device.
[0083] In some embodiments, process 500 further includes: in response to the lane state not meeting the second condition and the target vehicle not leaving after a second predetermined period of time after the autonomous vehicle switches to the trapped state, triggering the sending of an assistance request to a remote device; or in response to the lane state not meeting the second condition and the target vehicle not leaving after a second predetermined period of time after the autonomous vehicle senses the target vehicle, triggering the sending of an assistance request to a remote device.
[0084] In some embodiments, process 500 further includes: in response to a parking attribute indicating that the target vehicle is a temporary parking vehicle, triggering the sending of an assistance request to a remote device.
[0085] Embodiments of this disclosure also provide corresponding apparatus for implementing the above methods or processes. Figure 6 A schematic structural block diagram of a device 600 for remote assistance according to some embodiments of the present disclosure is shown. Device 600 may be implemented in or included in electronic device 150. Various modules / components in device 600 may be implemented by hardware, software, firmware, or any combination thereof.
[0086] like Figure 6 As shown, the device 600 includes a first determining module 610, a second determining module 620, and a triggering module 630. The first determining module 610 is configured to, in response to the autonomous vehicle being in a stranded state, determine the parking attributes of a target vehicle associated with the stranded state, the parking attributes indicating whether the target vehicle is a temporarily parked vehicle. The second determining module 620 is configured to, in response to the target vehicle's parking attributes satisfying a first condition, determine the lane status of the autonomous vehicle's adjacent lanes, the lane status indicating the traffic direction and / or traffic status of the adjacent lanes. The triggering module 630 is configured to, in response to the lane status satisfying a second condition, trigger the sending of an assistance request associated with the stranded state to a remote device.
[0087] In some embodiments, the apparatus 600 further includes: a queuing scenario determination module, configured to determine the driving scenario of the autonomous vehicle in response to the lane state not meeting the second condition; and to trigger the sending of an assistance request to a remote device in response to the driving scenario being a non-queuing scenario.
[0088] In some embodiments, the queuing scenario determination module is further configured to: determine whether the target road segment in the current lane where the autonomous vehicle is located is in an idle state, wherein the target road segment is located in front of the target vehicle in the direction of travel of the current lane; and in response to determining that the target road segment is in an idle state, determine that the driving scenario is a non-queuing scenario.
[0089] In some embodiments, the queuing scenario determination module is further configured to: in response to determining that the perception range of the autonomous vehicle can cover the target road segment, determine whether the target road segment is in an idle state based on the perception information of the autonomous vehicle.
[0090] In some embodiments, the queuing scenario determination module is further configured to: determine that the target road segment is in an idle state in response to determining that at least one traffic participant has entered the target road segment.
[0091] In some embodiments, the device 600 further includes: an intersection area determination module, configured to determine whether the autonomous vehicle is located in an intersection area, the intersection area including a preset range of the intersection, in response to the lane state not meeting the second condition; and to trigger sending an assistance request to a remote device in response to determining that the autonomous vehicle is located in the intersection area.
[0092] In some embodiments, the apparatus 600 further includes: a lane change determination module, configured to determine whether lane changing is permitted in the current lane where the autonomous vehicle is located in response to a lane state not meeting a second condition; and to trigger an assistance request to a remote device based on the determination that lane changing is not permitted in the current lane.
[0093] In some embodiments, the lane change determination module is further configured to: in response to determining that lane change is not allowed in the current lane, determine whether a traffic light corresponding to the current lane is deployed within a predetermined distance ahead of the autonomous vehicle; determine a parking waiting time based on the determination result of whether a traffic light corresponding to the current lane is deployed; and in response to the parking waiting time exceeding a first predetermined time and the target vehicle not leaving, trigger the sending of an assistance request to a remote device.
[0094] In some embodiments, the apparatus 600 further includes: a participant determination module configured to determine the number of traffic participants changing from the current lane where the autonomous vehicle is located to an adjacent lane in response to the lane state not meeting the second condition; and to trigger the sending of an assistance request to a remote device in response to the number of traffic participants reaching a threshold.
[0095] In some embodiments, the device 600 further includes a duration determination module configured to trigger sending an assistance request to a remote device in response to the lane state not meeting the second condition and the target vehicle not leaving after a second predetermined duration following the autonomous vehicle switching to the stranded state, or in response to the lane state not meeting the second condition and the target vehicle not leaving after a second predetermined duration following the autonomous vehicle sensing the target vehicle.
[0096] In some embodiments, the triggering module 630 is further configured to: trigger the sending of an assistance request to a remote device in response to a parking attribute indicating that the target vehicle is a temporary parking vehicle.
[0097] The units and / or modules included in device 600 can be implemented in various ways, including software, hardware, firmware, or any combination thereof. In some embodiments, one or more units and / or modules can be implemented using software and / or firmware, such as machine-executable instructions stored on a storage medium. In addition to or as an alternative to machine-executable instructions, some or all of the units and / or modules in device 600 can be implemented at least partially by one or more hardware logic components. By way of example and not limitation, exemplary types of hardware logic components that can be used include field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), complex programmable logic devices (CPLDs), and so on.
[0098] Figure 7 A block diagram of an electronic device 700 in which one or more embodiments of the present disclosure may be implemented is shown. It should be understood that... Figure 7 The electronic device 700 shown is merely exemplary and should not be construed as limiting the functionality and scope of the embodiments described herein. Figure 7 The illustrated electronic device 700 may include or be implemented as Figure 1 Electronic devices 150 or Figure 6 Device 600.
[0099] like Figure 7 As shown, electronic device 700 is in the form of a general-purpose electronic device. Components of electronic device 700 may include, but are not limited to, one or more processors or processing units 710, memory 720, storage device 730, one or more communication units 740, one or more input devices 750, and one or more output devices 760. Processing unit 710 may be a physical or virtual processor and is capable of performing various processes according to programs stored in memory 720. In a multiprocessor system, multiple processing units execute computer-executable instructions in parallel to improve the parallel processing capability of electronic device 700.
[0100] Electronic device 700 typically includes multiple computer storage media. Such media can be any accessible media that is accessible to electronic device 700, including but not limited to volatile and non-volatile media, removable and non-removable media. Memory 720 can be volatile memory (e.g., registers, cache, random access memory (RAM)), non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. Storage device 730 can be removable or non-removable media and can include machine-readable media, such as flash drives, disks, or any other media that can be used to store information and / or data and can be accessed within electronic device 700.
[0101] Electronic device 700 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not explicitly stated... Figure 7 As shown, disk drives for reading from or writing to removable, non-volatile disks (e.g., "floppy disks") and optical disk drives for reading from or writing to removable, non-volatile optical disks can be provided. In these cases, each drive can be connected to a bus (not shown) via one or more data media interfaces. Memory 720 may include computer program product 725 having one or more program modules configured to perform various methods or actions of various embodiments of this disclosure.
[0102] The communication unit 740 enables communication with other electronic devices via a communication medium. Additionally, the functionality of the components of the electronic device 700 can be implemented using a single computing cluster or multiple computing machines capable of communicating via communication connections. Therefore, the electronic device 700 can operate in a networked environment using logical connections to one or more other servers, network personal computers (PCs), or another network node.
[0103] Input device 750 can be one or more input devices, such as a mouse, keyboard, trackball, etc. Output device 760 can be one or more output devices, such as a monitor, speaker, printer, etc. Electronic device 700 can also communicate with one or more external devices (not shown) via communication unit 740 as needed. These external devices include storage devices, display devices, etc., and can communicate with one or more devices that enable user interaction with electronic device 700, or with any device that enables electronic device 700 to communicate with one or more other electronic devices (e.g., network card, modem, etc.). Such communication can be performed via input / output (I / O) interface (not shown).
[0104] According to an exemplary implementation of this disclosure, a computer-readable storage medium is provided that stores computer-executable instructions thereon, wherein the computer-executable instructions are executed by a processor to implement the methods described above. According to an exemplary implementation of this disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, which are executed by a processor to implement the methods described above.
[0105] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatuses, devices, and computer program products implemented according to this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
[0106] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processing unit of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0107] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions that execute on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0108] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0109] Various implementations of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is chosen to best explain the principles, practical applications, or improvements to technology in the market, or to enable others skilled in the art to understand the various implementations disclosed herein.
Claims
1. A method for remote assistance, comprising: In response to an autonomous vehicle being in a distressed state, the parking attributes of a target vehicle associated with the distressed state are determined, the parking attributes indicating whether the target vehicle is a temporary parking vehicle; In response to the parking attribute of the target vehicle satisfying a first condition, the lane status of the adjacent lane of the autonomous vehicle is determined, the lane status indicating the travel direction and / or travel status of the adjacent lane; as well as In response to the lane status meeting the second condition, an assistance request associated with the stranded state is triggered and sent to a remote device.
2. The method according to claim 1, further comprising: In response to the lane state not meeting the second condition, the driving scenario of the autonomous vehicle is determined; as well as In response to the driving scenario being a non-queuing scenario, the assistance request is sent to the remote device.
3. The method according to claim 2, wherein determining the driving scenario of the autonomous vehicle includes: Determine whether the target road segment in the current lane where the autonomous vehicle is located is in an empty state, wherein the target road segment is located in front of the target vehicle in the direction of travel of the current lane; as well as In response to determining that the target road segment is in an idle state, the driving scenario is determined to be the non-queuing scenario.
4. The method according to claim 3, wherein determining whether the target road segment is in an idle state includes: In response to determining that the perception range of the autonomous vehicle can cover the target road segment, the system determines whether the target road segment is in an idle state based on the perception information of the autonomous vehicle.
5. The method according to claim 3, wherein determining whether the target road segment is in an idle state comprises: In response to determining that at least one traffic participant has entered the target road segment, the target road segment is determined to be in an idle state.
6. The method according to claim 1, further comprising: In response to the lane status not meeting the second condition, it is determined whether the autonomous vehicle is located in the intersection area, the intersection area including a preset range of the intersection; as well as In response to determining that the autonomous vehicle is located in the intersection area, the assistance request is sent to the remote device.
7. The method according to claim 1, further comprising: In response to the lane status not meeting the second condition, determine whether the current lane where the autonomous vehicle is located allows lane changing; as well as Based on the determination that lane changing is not allowed in the current lane, the assistance request is sent to the remote device.
8. The method of claim 7, wherein triggering the sending of the assistance request to the remote device based on determining that lane changing is not permitted in the current lane comprises: In response to determining that lane changing is not allowed in the current lane, determine whether there is a traffic light corresponding to the current lane deployed within a predetermined distance ahead of the autonomous vehicle; Based on the determination of whether a traffic light corresponding to the current lane is deployed, the parking waiting time is determined; as well as In response to the parking waiting time exceeding a first predetermined time and the target vehicle not leaving, the assistance request is sent to the remote device.
9. The method according to claim 1, further comprising: In response to the lane status not meeting the second condition, the number of traffic participants that changed from the current lane where the autonomous vehicle is located to an adjacent lane is determined; as well as In response to the number of traffic participants reaching a threshold, the assistance request is triggered and sent to the remote device.
10. The method according to claim 1, further comprising: In response to the lane status not meeting the second condition, and the target vehicle not leaving after a second predetermined time period following the autonomous vehicle switching to the stranded state, the assistance request is triggered and sent to the remote device, or In response to the lane condition not meeting the second condition, and the target vehicle not leaving after a second predetermined time period after the autonomous vehicle senses the target vehicle, the assistance request is triggered to be sent to the remote device.
11. The method according to claim 1, further comprising: In response to the parking attribute indicating that the target vehicle is a temporary parking vehicle, the assistance request is sent to the remote device.
12. An apparatus for remote assistance, comprising: The first determining module is configured to, in response to an autonomous vehicle being in a distressed state, determine the parking attributes of a target vehicle associated with the distressed state, the parking attributes indicating whether the target vehicle is a temporary parking vehicle. The second determining module is configured to determine the lane status of the adjacent lane of the autonomous vehicle in response to the parking attribute of the target vehicle satisfying a first condition, wherein the lane status indicates the traffic direction and / or traffic status of the adjacent lane. as well as The triggering module is configured to trigger the sending of an assistance request associated with the stranded state to a remote device in response to the lane state meeting a second condition.
13. An electronic device, comprising: At least one processing unit; as well as At least one memory, coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, which, when executed by the at least one processing unit, cause the electronic device to perform the method according to any one of claims 1 to 11.
14. A computer-readable storage medium having a computer program stored thereon, the computer program being executable by a processor to implement the method according to any one of claims 1 to 11.
15. A computer program product comprising a computer program, wherein the computer program, when executed by a processor, implements the method according to any one of claims 1 to 11.