The present disclosure relates to an automotive arithmetic system used for autonomous driving of a motor vehicle, for example.
A technique of environmental recognition inside and outside a vehicle using deep learning based on a neural network has also been applied to motor vehicles.
For example, Patent Document 1 discloses an estimation device that estimates an occupant's condition with respect to vehicle equipment and includes a memory and a processing unit. The memory stores a model constructed through deep learning using a neural network, and the processing unit receives an image including the equipment, estimates the occupant's condition using the model, and outputs first information indicating a skeleton position of a specific part of the occupant and second information indicating the occupant's condition with respect to the equipment.
Patent Document 1: Japanese Unexamined Patent Publication No. 2018-132996
In recent years, development of autonomous driving systems has been promoted nationally. In general, an autonomous driving system obtains information of a vehicle external environment using a camera or any other suitable means, and calculates a route that the motor vehicle should take based on the obtained information of the vehicle external environment. What is important for the route calculation is the recognition of the vehicle external environment, and use of deep learning for the recognition of the vehicle exterior environment has been considered.
As a concept of software design for functional safety of an arithmetic device that performs autonomous driving, for example, Functional Safety for Road Vehicles standard (ISO 26262) defines Automotive Safety Integrity Level (ASIL) as a hazard assessment index regarding the application of functional safety of a plurality of modules constituting a program. According to ASIL, development at a design level corresponding to a functional safety level from ASIL-A to ASIL-D is required.
However, the recognition of the vehicle external environment and the route calculation using deep learning are still under development, and are considered to remain at around ASIL-B. Therefore, in order to give a functional safety level of about ASIL-D to a motor vehicle having the autonomous driving function, it is insufficient to configure the arithmetic device only with the function using deep learning.
The present disclosure has been made in view of the foregoing background, and one aspect thereof is to improve the functional safety level of an automotive arithmetic system having the function of using deep learning.
In one aspect, the present disclosure is directed to an automotive arithmetic system mounted on a motor vehicle. The automotive arithmetic system includes: a main arithmetic device including a first route generation unit that estimates a vehicle external environment including a road and an obstacle using deep learning based on an output from an information acquisition device that acquires information of the vehicle external environment, and generates a first route on the road for avoiding the obstacle based on the estimated vehicle external environment, the main arithmetic device determining a target motion of the motor vehicle so that the motor vehicle travel on the first route and outputting a control signal for achieving the target motion to actuators that respectively generate a driving force, a braking force, and a steering angle; and a backup arithmetic device including a stop route generation unit that generates a third route, which is a travel route that the traveling motor vehicle takes until the motor vehicle stops at a stop position that satisfies a preset criterion, based on the output from the information acquisition device, the backup arithmetic device determining a backup target motion for causing the motor vehicle to travel on the third route and outputting a backup control signal for achieving the backup target motion to the actuators, wherein the automotive arithmetic system outputs the backup control signal to the actuators in preference to the control signal when the main arithmetic device fails.
According to this configuration, the backup control signal is outputted to the actuators in preference to the control signal when the main arithmetic device fails, so that the motor vehicle is moved to the stop position that satisfies the preset criterion. Thus, the motor vehicle can stop at a safe position in an emergency, for example. Specifically, a safety function that ensures safety can be achieved, and by extension, a functional safety level can be improved.
In one embodiment of the automotive arithmetic system, the main arithmetic device includes a second route generation unit that recognizes a target object outside the motor vehicle including the road and the obstacle based on the output from the information acquisition device according to a predetermined rule without using deep learning, specifies a safe area on the road for avoiding the obstacle based on the recognized target object outside the motor vehicle, and generates a second route that runs in the safe area, and the main arithmetic device determines a target motion of the motor vehicle so that the motor vehicle travel on the second route in place of the first route if the first route deviates from the safe area, and outputs a control signal for achieving the target motion to the actuators.
According to this configuration, the target object outside the vehicle is recognized according to the predetermined rule separately from the estimation of the vehicle external environment through deep learning. The “predetermined rule” mentioned herein is a method of recognizing a target and the like that has been adopted to the motor vehicles, and the function of recognizing the target object according to the predetermined rule has a functional safety level equivalent to ASIL-D. It can be said that the safe area calculated based on the result of recognition of the target based on this predetermined rule is a highly safe area.
If the first route calculated based on the vehicle external environment estimated through deep learning deviates from the safe area, the main arithmetic device outputs a control signal for achieving the target motion of the motor vehicle traveling on the second route to the actuators. This can improve the functional safety level of the arithmetic device having the function of using deep learning.
In one embodiment of the automotive arithmetic system, the main arithmetic device includes an area setting unit that recognizes a target object outside the motor vehicle including the road and the obstacle based on the output from the information acquisition device according to a predetermined rule without using deep learning, and sets a safe area on the road for avoiding the obstacle based on the recognized target object outside the motor vehicle, and the first route generation unit sets the first route so that the first route passes the safe area.
According to this configuration, the route generated by the first route generation unit also passes the safe area which is set based on the predetermined rule, which can improve the functional safety level.
As can be seen from the description herein, the present disclosure can improve the functional safety level of an arithmetic device having the function of using deep learning.
Exemplary embodiments will be described in detail below with reference to the drawings.
As will be described in detail below, the arithmetic system SY may include a vehicle external environment estimation unit 111, 311 and/or a vehicle external information acquisition device M1 (as further described in U.S. application Ser. No. 17/120,292 filed Dec. 14, 2020, and U.S. application Ser. No. 17/160,426 filed Jan. 28, 2021, the entire contents of each of which being incorporated herein by reference), a first arithmetic unit 110 that functions as a route generation unit (as further described in more detail in U.S. application Ser. No. 17/161,691, filed 29 Jan. 2021, U.S. application Ser. No. 17/161,686, filed 29 Jan. 2021, and U.S. application Ser. No. 17/161,683, the entire contents of each of which being incorporated herein by reference), a target motion determination unit 130 (as further described in more detail in U.S. application Ser. No. 17/159,178, filed Jan. 27, 2021, the entire contents of which being incorporated herein by reference), an energy management unit 140 (as further described in more detail in U.S. application Ser. No. 17/159,178, supra), a route searching unit 706 (as further described in more detail in U.S. application Ser. No. 17/159,178, supra), a vehicle state measurement unit 901 (as further described in PCT application WO2020184297A1 filed Mar. 3, 2020, the entire contents of which being incorporated herein by reference), a driver's operation recognition unit 902 (as further described in U.S. application Ser. No. 17/160,426 filed Jan. 28, 2021, the entire contents of which being incorporated herein by reference), a vehicle internal information acquisition device M2 (as further described in U.S. application Ser. No. 17/156,631 filed Jan. 25, 2021, the entire contents of which being incorporated herein by reference), and vehicle external environment model 704 (as further described in U.S. application Ser. No. 17/160,426, supra).
The arithmetic system SY determines a target motion of the motor vehicle 1 based on the outputs from a plurality of sensors and the like, and control the actuation of the devices.
A vehicle external information acquisition device M1 including sensors and the like that output information of an environment outside the motor vehicle 1 to the arithmetic system SY includes, for example: (1) a plurality of cameras 50 provided to a body or the like of the motor vehicle 1 to take images of a vehicle external environment; (2) a plurality of radars 51 provided to the body or the like of the vehicle 1 to detect targets or the like outside the vehicle; (3) a vehicle speed sensor 52 that detects an absolute velocity of the motor vehicle 1; (4) an accelerator position sensor 53 that detects how much an accelerator pedal of the motor vehicle 1 is depressed; (5) a steering angle sensor 54 that detects a rotational angle (steering angle) of a steering wheel of the motor vehicle 1; (6) a brake sensor 55 that detects how much a brake pedal of the motor vehicle 1 is depressed; and (7) a position sensor 56 that detects the position of the motor vehicle 1 (vehicle position information) using Global Positioning System (GPS).
The cameras 50 are arranged, for example, to be able to take images of the surroundings of the motor vehicle 1 at 360 degrees in the horizontal direction. Each of the cameras 50 generates image data by capturing an optical image showing the vehicle external environment. Each of the cameras 50 outputs the generated image data to a main arithmetic device 100. The cameras 50 are an example of a vehicle external information acquisition device that acquires information of the vehicle external environment.
The radars 51 are arranged so that their detection range covers 360 degrees of the motor vehicle 1 in the horizontal direction, just like the cameras 50. The type of the radars 51 is not particularly limited. For example, millimeter wave radars or infrared radars can be adopted. The radars 51 are an example of the vehicle external information acquisition device that acquires information of the vehicle external environment.
A vehicle internal information acquisition device M2 including sensors and the like that output information of an internal environment of the motor vehicle 1 to the arithmetic system SY includes: (1) an in-vehicle camera 58 provided for an in-vehicle mirror and/or dashboard of the motor vehicle 1 and captures an expression and posture of the driver and an environment inside the vehicle; and (2) an in-vehicle sensor 59 that acquires biological information (such as body temperature, heart rate, and respiration) of the driver.
Objects controlled by the arithmetic system SY include, for example, an engine 10, a brake 20, a steering 30, and a transmission 40. In the following description, for convenience of explanation, the objects controlled by the arithmetic system SY (including the engine 10, the brake 20, the steering 30, and the transmission 40) will be collectively referred to as “actuators AC.”
The engine 10 is a power drive source, and includes an internal combustion engine (a gasoline engine or a diesel engine). The arithmetic system SY outputs an engine output alteration signal to the engine 10 when the motor vehicle 1 needs to be accelerated or decelerated. The engine 10 is controlled by the degree of depression of the accelerator pedal by the driver during manual driving, but is controlled based on a target motion signal indicating a target motion outputted from the arithmetic system SY (will be hereinafter simply referred to as a “target motion signal”) during assisted driving and autonomous driving. Although not shown, a generator that generates electric power by the output of the engine 10 is connected to a rotational shaft of the engine 10.
The brake 20 is an electric brake. When the motor vehicle 1 needs to slow down, the arithmetic system SY outputs a brake request signal to the brake 20. The brake 20 that has received the brake request signal operates a brake actuator (not shown) based on the brake request signal to decelerate the motor vehicle 1. The brake 20 is controlled by the degree of depression of the brake pedal by the driver during the manual driving, but is controlled based on the target motion signal outputted from the arithmetic system SY during the assisted driving and the autonomous driving.
The steering 30 is an electric power steering (EPS). The arithmetic system SY outputs a steering direction alteration signal to the steering 30 when the traveling direction of the motor vehicle 1 needs to be changed. The steering 30 is controlled by the degree of handling of a steering wheel (a so-called wheel) by the driver during the manual driving, but is controlled based on the target motion signal outputted from the arithmetic system SY during the assisted driving or the autonomous driving.
The transmission 40 is a multi-speed transmission. The main arithmetic device 100 outputs a gear change signal to the transmission 40 in accordance with the driving force to be outputted. The transmission 40 is controlled by the handling of a shift lever by the driver and the degree of depression of the accelerator pedal by the driver during the manual driving, but is controlled based on the target motion calculated by the main arithmetic device 100 during the assisted driving and the autonomous driving.
During the manual driving, the arithmetic system SY outputs a control signal based on the output of the accelerator position sensor 53 or the like to the engine 10, for example. During the assisted driving or the autonomous driving, the arithmetic system SY sets a travel route of the motor vehicle 1, and outputs the control signal to the engine 10 and other actuators so that the motor vehicle 1 travels on the travel route.
<1. Configuration of Arithmetic System>
As shown in
When performing the assisted driving or the autonomous driving, the main arithmetic device 100 determines the target motion of the motor vehicle 1 based on the output from the vehicle external information acquisition device M1, and outputs a control signal for operating the actuators AC in accordance with the target motion.
The backup arithmetic device 300 generates a safe stop route (corresponding to a third route) based on the output from the vehicle external information acquisition device M1, and determines a backup target motion which is a target motion for causing the motor vehicle to travel on the safe stop route. Further, the backup arithmetic device 300 outputs a backup control signal which is a control signal for operating the actuators AC in accordance with the backup target motion. The safe stop route mentioned herein refers to a travel route that the traveling motor vehicle takes until the motor vehicle stops at a safe stop position TP that satisfies a preset criterion. The safe stop position TP is not particularly limited as long as it is a position at which the motor vehicle 1 can safely stop, for example. Examples of the safe stop position TP include a vehicle free area on a road where no motor vehicles 1 are passing and a road shoulder 8 (see
Each of the main arithmetic device 100 and the backup arithmetic device 300 is a microprocessor including one or more chips, and includes a CPU, a memory, and any other suitable elements. This configuration can reduce the risk of simultaneous failure of both devices. In a configuration example of
The monitoring unit 400 monitors the condition of the driver based on the output from the vehicle internal information acquisition device M2, and outputs the result to the abnormality detection unit 450.
The abnormality detection unit 450 is configured to be able to detect a failure of the main arithmetic device 100. A method of detecting the failure of the main arithmetic device 100 is not particularly limited. For example, applicable methods include a known hardware redundancy circuit (e.g., a dual core lockstep), monitoring of an operation result in a chip, monitoring of a flag register indicating an abnormality in a chip, a test circuit (logic build-in self-test (LBIST) circuit) in a chip, and mutual monitoring between chips. Further, the abnormality detection unit 450 is configured to be able to detect that the driver is in an abnormal state based on the information of the driver received from the vehicle internal information acquisition device M2.
The selector device 500, which is realized by, for example, a selector circuit, selects either the control signal outputted from the main arithmetic device 100 or the backup control signal outputted from the backup arithmetic device 300 based on the detection result of the abnormality detection unit 450, and outputs the selected signal to the actuators AC of the motor vehicle 1. Specifically, the selector device 500 selects and outputs the control signal outputted from the main arithmetic device 100 during a normal operation, and selects and outputs the backup control signal outputted from the backup arithmetic device 300 when either the main arithmetic device 100 or the driver is detected to be in an abnormal state.
Components of the arithmetic system SY will be described in further detail below.
—1-1. Configuration of Main Arithmetic Device—
The main arithmetic device 100 includes a first arithmetic unit 110, a second arithmetic unit 120, a target motion determination unit 130, and an energy management unit 140.
The first arithmetic unit 110 has the function of estimating the vehicle external environment using deep learning and generating a first route that is a route based on the estimated vehicle external environment. That is, the first arithmetic unit 110 functions as a first route generation unit. Specifically, the first arithmetic unit 110 includes a vehicle external environment estimation unit 111, a first safe area setting unit 112, and a first route calculation unit 113. The “first route” will be described by way of examples in the section “2. Operation of Arithmetic System” to be described later.
The vehicle external environment estimation unit 111 estimates the vehicle external environment through image recognition processing using deep learning based on the outputs of the cameras 50 and the radars 51. Specifically, the vehicle external environment estimation unit 111 constructs object identification information through deep learning based on image data from the cameras 50, and integrates the object identification information with positioning information from the radars to create a 3D map representing the vehicle external environment. Further, for example, estimation of objects' behavior based on deep learning is integrated with the 3D map to generate an environment model. The deep learning uses, for example, a multilayer neural network (deep neural network (DNN)). Examples of the multilayer neural network include a convolutional neural network (CNN).
The first safe area setting unit 112 sets a first safe area SA1 (see
Using reinforcement learning, the first route calculation unit 113 calculates a first candidate route that passes within the first safe area SA1 set by the first safe area setting unit 112. The reinforcement learning is the function of setting an evaluation function for the result of a series of simulation (the candidate route in this example), and giving a high rating to the simulation result that meets a certain purpose, or a low rating to the simulation result that does not meet the certain purpose, thereby learning a candidate route that meets the purpose. An actual calculation method will be described later.
The second arithmetic unit 120 has the function of recognizing an object outside the vehicle based on the output from the vehicle external information acquisition device M1 (e.g., the cameras 50 and the radars 51) according to a predetermined rule without using deep learning, and specifying a safe area based on the recognized object outside the vehicle. The second arithmetic unit 120 additionally has the function of generating a second route passing the specified safe area. That is, the second arithmetic unit 120 functions as a second route generation unit. Specifically, the second arithmetic unit 120 includes a target object recognition unit 121 (corresponding to an object recognition unit), a second safe area setting unit 122 (corresponding to a safe area setting unit), and a second route calculation unit 123.
The target object recognition unit 121 recognizes a target object based on a target object recognition rule (corresponding to a predetermined rule). Examples of the target object include traveling vehicles, parked vehicles, or pedestrians present on a road. The target object recognition unit 121 also recognizes a relative distance and/or a relative speed between the subject vehicle and the target object. The target object recognition unit 121 also recognizes a roadway (including a lane marker and the like) based on the outputs from the cameras 50 and the radars 51.
The second safe area setting unit 122 sets a second safe area SA2 as an area where a collision with the target object recognized by the target object recognition unit 121 can be avoided. The second safe area SA2 is set based on a predetermined rule, e.g., an area of several meters around the target object is considered as a range where the collision is unavoidable. The second safe area setting unit 122 is configured to be able to set the second safe area SA2 in consideration of the speed of traveling vehicles and/or the speed of pedestrians. Note that the “target object recognition rule” and the “predetermined rule” are obtained by applying, to a rule-based approach, a method of recognizing and avoiding the target object that has been adopted to the motor vehicles, and have a functional safety level equivalent to ASIL-D. Just like the first safe area SA1, the second safe area SA2 is what is called free space. For example, the free space is an area on the road without any dynamic obstacle, such as other vehicles or pedestrians, and any static obstacle, such as a median strip or traffic poles. The second safe area SA2 may include a space of the road shoulder 8 where the vehicle can stop in case of emergency.
The second route calculation unit 123 calculates a second route that passes within the second safe area SA2 set by the second safe area setting unit 122. An actual calculation method will be described later.
The target motion determination unit 130 receives the outputs from the first and second arithmetic units 110 and 120, and determines the target motion of the motor vehicle 1. Receiving information of the first and second safe areas SA1 and SA2 and information of the first and second candidate routes in particular, the target motion determination unit 130 determines the target motion of the motor vehicle 1. Specifically, the target motion determination unit 130 sets a route that the motor vehicle 1 should take, and determines the operation amount (e.g., an engine torque or the operation amount of the brake actuator) required for the actuators AC (mainly, the engine 10, the brake 20, the steering 30, and the transmission 40) to cause the motor vehicle 1 to travel on the route.
The energy management unit 140 calculates the amount of control of the actuators AC at the highest energy efficiency to achieve the target motion determined by the target motion determination unit 130. Specifically, for example, the energy management unit 140 calculates the timing of opening or closing intake/exhaust valves (not shown) and the timing of injecting the fuel from injectors (not shown) at the most improved fuel efficiency to achieve the engine torque determined by the target motion determination unit 130.
Data of the target motion determined by the target motion determination unit 130 and data of the control amount calculated by the energy management unit 140 are outputted to the selector device 500 as control signals for controlling the actuators AC.
—1-2. Configuration of Backup Arithmetic Device—
The backup arithmetic device 300 includes a backup arithmetic unit 310, a target motion determination unit 330, and an energy management unit 340.
The backup arithmetic unit 310 has the function of generating a safe route, which is a route to the safe stop position TP, based on the output from the vehicle external information acquisition device M1. That is, the backup arithmetic unit 310 functions as a stop route generation unit. Specifically, the backup arithmetic unit 310 includes a vehicle external environment estimation unit 311, a third safe area setting unit 312, and a safe route calculation unit 313. The “safe route” will be described by way of examples in the section “2. Operation of Arithmetic System” to be described later.
The vehicle external environment estimation unit 311 estimates the vehicle external environment using the data of the target object recognized by the target object recognition unit 121 of the second arithmetic unit 120. In addition, the vehicle external environment estimation unit 311 also recognizes a roadway (including a lane marker or the like) and a safe stop position TP at which the motor vehicle 1 can safely stop based on the output from the target object recognition unit 121. The safe stop position TP is not particularly limited as long as it is a position at which the motor vehicle 1 can safely stop. Examples of the safe stop position TP include a road shoulder 8 (see
The third safe area setting unit 312 sets a third safe area SA3 as an area where a collision with the target object recognized by the vehicle external environment estimation unit 311 can be avoided. The third safe area SA3 is set based on a predetermined rule, e.g., an area of several meters around the target object is considered as a range where the collision is unavoidable. The third safe area setting unit 312 and the second safe area setting unit 122 may be configured in the same manner. In this case, the third safe area SA3 and the second safe area SA2 may be designated as the same area. The second safe area setting unit 122 and the third safe area setting unit 312 may be realized by a common circuit. However, in an embodiment, the second and third safe area setting units 122 and 312 are separated from the viewpoint of increasing resistance to failure. The “predetermined rule” mentioned herein is also the same as the “predetermined rule” described above, and has a functional safety level equivalent to ASIL-D.
The safe route calculation unit 313 calculates a safe route RS which is a travel route that passes within the third safe area SA3 set by the third safe area setting unit 312 and reaches the safe stop position TP. An actual calculation method will be described later.
The target motion determination unit 330 receives the output from the backup arithmetic unit 310, and determines the target motion of the motor vehicle 1. Receiving information of the third safe area SA3 and information of the safe stop position TP in particular, the target motion determination unit 330 determines the target motion of the motor vehicle 1. Specifically, the target motion determination unit 330 sets a safe route that the motor vehicle 1 should take to reach the safe stop position TP, and determines the operation amount (e.g., an engine torque or the operation amount of the brake actuator) required for the actuators AC (mainly, the engine 10, the brake 20, and the steering 30) to cause the motor vehicle 1 to travel on the route.
The energy management unit 340 calculates the amount of control of the actuators AC (such as the engine 10 described later) at the highest safety level and the highest energy efficiency to achieve the target motion determined by the target motion determination unit 330, while taking whether the subject vehicle 1 and the driver are in an abnormal state or not into account. Specifically, for example, the energy management unit 340 calculates the timing of opening or closing intake/exhaust valves (not shown) and the timing of injecting the fuel from injectors (not shown) at the most improved fuel efficiency to achieve the engine torque determined by the target motion determination unit 330. For example, if the driver is in an abnormal state, the energy management unit 340 calculates a method of controlling the actuators AC that can reduce a burden on the driver as small as possible.
Data of the target motion determined by the target motion determination unit 330 and data of the control amount calculated by the energy management unit 340 are outputted to the selector device 500 as control signals for controlling the actuators AC.
<2. Operation of Arithmetic System>
The operation of the arithmetic system will be described below with reference to the drawings.
—2-1. Calculation of First Route and Second Route—
A method of calculating the first and second routes will be described below with reference to
Although the first safe area SA1 is not illustrated in the example of
First, as shown in
The grid area RW ranges from the periphery of the subject vehicle 1 to a predetermined distance ahead of the subject vehicle 1 along the roadway 5. The distance (longitudinal length) L is calculated based on the current vehicle speed of the subject vehicle 1. In the present embodiment, the distance L (L=V×t) is a distance that the vehicle is expected to travel at the current vehicle speed (V) for a predetermined fixed time t (e.g., three seconds). However, the distance L may be a predetermined fixed distance (e.g., 100 m) or may be a function of the vehicle speed (and acceleration). The width W of the grid area RW is set to be the width of the roadway 5.
The grid area RW is divided into a large number of rectangular grid sections by a plurality of grid lines extending along the extending direction X and width direction (lateral direction) Y of the roadway 5. Points of intersection of the grid lines in the X and Y directions are grid points Gn. Intervals in the X and Y directions between the grid points Gn are respectively set to fixed values. In the present embodiment, for example, the grid interval in the X direction is 10 m, and the grid interval in the Y direction is 0.875 m.
The grid interval may be a variable value according to the vehicle speed or the like. Since the roadway 5 shown in
Next, in the calculation of the second candidate route, the first route calculation unit 113 sets a predetermined grid point GT in the grid area RW as a target reach position PE, and sets the target speed at the target reach position PE (GT) in accordance with an external signal. The external signal is, for example, a guidance signal that guides the subject vehicle 1 to a destination (e.g., a parking area) transmitted from a navigation system (not shown) mounted on the subject vehicle 1.
Next, the first route calculation unit 113 executes arithmetic processing for route setting. In this arithmetic processing, the first route calculation unit 113 first executes candidate route calculation processing for calculating a plurality of first candidate routes R1m (m=1, 2, 3, . . . ). This processing is similar to the calculation of the candidate route using the existing state lattice method.
The outline of the calculation of the candidate routes will be described below. The first route calculation unit 113 creates candidate routes from the current position PS (start point) of the subject vehicle 1 to each grid point Gn (end point) in the grid area RW. The first route calculation unit 113 also sets speed information at the end point.
The start point and the end point are connected via one or more grid points Gn or no grid points Gn. For each of the first candidate routes R1m, the first route calculation unit 113 calculates position information by setting a route curve pattern that connects the grid points, and calculates a profile of speed change to be in conformity with a speed change pattern. The speed change pattern is generated as a combination of sharp acceleration (e.g., 0.3 G), slow acceleration (e.g., 0.1 G), constant vehicle speed, slow deceleration (e.g., −0.1 G), and sharp deceleration (e.g., −0.3 G), and is set not for each grid but for a predetermined length (e.g., 50 m to 100 m) of the first candidate route R1m.
Further, the first route calculation unit 113 sets sampling points SP for each candidate route, and calculates speed information at each sampling point SP.
Next, the first route calculation unit 113 calculates a route cost taken by the obtained first candidate routes R1m. In the calculation of the route cost of each first candidate route R1m, the first route calculation unit 113 calculates, for each sampling point SP, an inertia force Fi due to the motion of the vehicle 1, collision probability Pc with an obstacle (the other vehicle 3 in this example), and an impact force Fc applied to the occupant upon the collision (or a reaction force against the collision), and calculates external forces FC to be applied to the occupant based on these values, thereby obtaining the sum of the external forces FC (absolute values) at all the sampling points SP on the first candidate route R1m as the route cost (candidate route cost) EPm of the first candidate route R1m.
Then, the first route calculation unit 113 outputs all the first candidate routes R1m to the target motion determination unit 130 together with their route cost information.
The first route is set in this manner.
The second route is basically calculated in the same manner as the first route. As the second route, a route having the lowest route cost is selected and outputted to the target motion determination unit 130.
In one embodiment, the routes outputted to the target motion determination unit 130 include the first route calculated by the first arithmetic unit 110 and the second route calculated by the second arithmetic unit 120, but the target motion determination unit 130 basically adopts the first route. This is because the first route that is set using deep learning or reinforcement learning is more likely to be a route that reflects the driver's intention, i.e., a route that does not cause the driver to feel redundancy, such as being too cautious in avoiding the obstacle.
However, the recognition of the vehicle external environment using deep learning is still under development. That is, with an environment model constructed by using deep learning, accurate information can be calculated in a range similar to information on which the environment model is based. However, if an actual vehicle external environment greatly differs from the environment model, a vehicle external environment that is deviated from the actual vehicle external environment may be estimated.
For example,
As described above, in the recognition of the vehicle external environment using deep learning, the vehicle external environment deviating from the actual vehicle external environment may be estimated in some cases. Therefore, the function using deep learning is considered to be equivalent to ASIL-B in the functional safety level (ASIL) defined by Functional Safety for Road Vehicles standard (ISO 26262). Thus, some contrivance is required to improve the functional safety level.
Therefore, in one or more aspects of the disclosed subject matter, when the first route is within the second safe area SA2, the target motion determination unit 130 of the main arithmetic device 100 selects the first route as the route that the motor vehicle 1 (the subject vehicle 1) should take, and determines the target motion of the motor vehicle 1 so that the motor vehicle 1 takes the first route. On the other hand, when the first route deviates from the second safe area SA2, the target motion determination unit 130 does not select the first route as the route that the motor vehicle 1 should take. More specifically, if all of the plurality of first candidate routes R1n (n=1, 2, 3, . . . ) set as the candidate routes deviate from the second safe area SA2 in the calculation of the first route, the target motion determination unit 130 selects the second candidate route as the route that the motor vehicle 1 should take.
For example, suppose that the first candidate routes R11, R12, and R13 are set by the first route calculation unit 113 as illustrated in
On the other hand, suppose that the first candidate routes R14, R15, and R16 are set by the first route calculation unit 113 as illustrated in
The target object recognition unit 121 recognizes the target object based on the existing predetermined rule, and thus, can accurately recognize the size of the target object. In addition, the second safe area setting unit 122 sets the second safe area SA2 based on a predetermined rule, e.g., an area of several meters around the target object is considered as a range where the collision is unavoidable. Thus, the second candidate route is a route that can ensure a sufficient distance from the other vehicle 3 even when avoiding the collision with the other vehicle 3. Specifically, the function of the second arithmetic unit 120 can be equivalent to ASIL-D. Therefore, if all the plurality of first candidate routes R1n set as the candidate routes deviate from the second safe area SA2 in the calculation of the first route, the target motion determination unit 130 selects the second candidate route as the route that the motor vehicle 1 should take, so that the motor vehicle 1 can travel on a highly safe route. Accordingly, the main arithmetic device 100 having the function of using deep learning can improve the functional safety level.
—2-2. Calculation of Safe Route—
A method of calculating the safe route will be described below. As described above, the safe route is calculated by the backup arithmetic device 300.
Since the safe route is basically calculated in the same manner as the above-described second route, the differences will be mainly described below, and the description of the common configuration and operation may be omitted.
First, the setting of the grid area RW including the grid points Gn (n=1, 2, . . . , N) on the roadway 5 and the candidate route calculation processing for calculating a plurality of candidate routes can be executed by the common technique.
Then, the safe route calculation unit 313 calculates, among the candidate routes in the third safe area SA3 specified by the third safe area setting unit 312, a safe route that the motor vehicle 1 (the subject vehicle 1) should take.
As described above, the backup arithmetic device 300 sets the safe stop position TP, which is a position where the motor vehicle 1 can safely stop, and sets a travel route passing within the third safe area SA3 and heading to the safe stop position TP as the safe route RS (see
The safe route RS outputted by the backup arithmetic device 300 is used in an abnormal situation, for example, the case where a trouble such as a failure in the main arithmetic device 100 has occurred, or the case where the driver cannot continue driving any more. Therefore, the backup arithmetic device 300 may set the safe stop position TP and/or the safe route RS in consideration of the information about abnormality.
For example, if a failure in the main arithmetic device 100 is detected and the continuation of driving may possibly be hindered, it can be determined that the vehicle should sufficiently slow down and move to a place where the vehicle can stop as soon as possible. In such a case, for example, the backup arithmetic device 300 may set the road shoulder 8 where the vehicle can safely stop at the nearest distance as the safe stop position TP as shown in
If there is no road shoulder to which the vehicle can move, hazard lamps may be turned on to warn the nearby vehicles of the abnormal state, and then the vehicle may slow down and stop in the same lane.
For example, if the driver is found to be unable to drive due to a sudden illness or the like although the subject vehicle 1 is not in failure, a hospital or a nearest public facility may be set as the safe stop position TP in cooperation with the navigation system and GPS measurement results, and the vehicle may automatically travel to the set safe stop position TP while passing within the third safe area SA3 specified at the position of the subject vehicle 1. In this manner, the safe route calculation unit 313 may set the safe route RS while taking the abnormal state of the subject vehicle 1 and the condition of the driver into consideration.
—2-3. Processing Operation of Arithmetic System—
A processing operation of the arithmetic system SY for determining the driving route of the motor vehicle 1 will be described below with reference to the flowcharts of
As shown in
(A) Processing by Main Arithmetic Device
The processing by the main arithmetic device 100 in step S100 will be described below with reference to
First, in step S101, the main arithmetic device 100 reads information from the vehicle external information acquisition device M1 (the cameras 50, the radars 51, and the sensors 52 to 56).
Then, the main arithmetic device 100 (the first and second arithmetic units 110 and 120) calculates the first candidate route and the second candidate route in parallel.
In step S102, the first arithmetic unit 110 estimates the vehicle external environment using deep learning.
In the subsequent step S103, the first arithmetic unit 110 sets the first safe area SA1.
In the subsequent step S104, the first arithmetic unit 110 calculates a first candidate route using reinforcement learning, and outputs the first candidate route to the target motion determination unit 130.
In step S105, the second arithmetic unit 120 recognizes the target object based on a predetermined rule.
In step S106, the second arithmetic unit 120 sets the second safe area SA2.
In step S107, the second arithmetic unit 120 calculates a second candidate route based on a predetermined rule, and outputs the second candidate route to the target motion determination unit 130.
In the subsequent step S108, the target motion determination unit 130 determines whether or not the first candidate route received from the first arithmetic unit 110 is within the second safe area SA2. In this step S108, if there is a route which is entirely included in the second safe area SA2 among the first candidate routes received from the first arithmetic unit 110 (YES is selected), the flow proceeds to step S109. On the other hand, in step S108, if every first candidate route received from the first arithmetic unit 110 at least partially deviates from the second safe area SA2 (NO is selected), the flow proceeds to step S110.
In step S109, the target motion determination unit 130 selects the first candidate route as a route that the motor vehicle 1 should take. In step S110, the target motion determination unit 130 selects the second candidate route as a route that the motor vehicle 1 should take.
In the subsequent step S111, the target motion determination unit 130 calculates the target motion of the motor vehicle 1 based on the result of selection in step S109.
In the subsequent step S112, the energy management unit 140 sets the target control amount at the highest energy efficiency to achieve the target motion calculated in step S111. Specifically, for example, when outputting the required driving force determined by the target motion determination unit 130, the energy management unit 140 calculates the number of speeds of the transmission 40, the timing of opening or closing intake/exhaust valves (not shown), and the timing of injecting the fuel from injectors (not shown), so that the fuel consumption of the engine 10 is minimized. When outputting a target braking force, the energy management unit 140 generates the braking force by increasing the amount of regenerative power of the generator connected to the engine 10 or the driving load of a cooling compressor to minimize the engine brake. Further, the energy management unit 140 controls the vehicle speed and the steering angle so that the rolling resistance applied to the motor vehicle 1 during cornering is minimized. Specifically, the generation of the braking force and the timing of the steering are controlled so that rolling is induced in synchronization with pitching that lowers a front portion of the motor vehicle 1 to give rise to diagonal rolling. Giving rise to the diagonal rolling increases the load applied to the turning outer front wheel. This allows the vehicle to corner at a small steering angle, and can reduce the rolling resistance applied to the motor vehicle 1.
In the subsequent step S113, the main arithmetic device 100 controls the operation of the actuators AC so that the control amount of the actuators AC becomes the target control amount calculated in step S112. After step S113, the flow proceeds to step S300 in
(B) Processing by Backup Arithmetic Device
Referring to
First, in step S301, the backup arithmetic device 300 acquires information of a target object recognized based on the vehicle external information acquisition device M1. For example, the backup arithmetic device 300 acquires the information of the target object recognized by the target object recognition unit 121 of the second arithmetic unit 120. The backup arithmetic device 300 may have the function similar to that of the target object recognition unit 121 of the second arithmetic unit 120, and may acquire information of the target object recognized based on the vehicle external information acquisition device M1 by itself.
Next, in step S304, the backup arithmetic unit 310 searches for a free space where the vehicle can safely stop, and sets a safe stop position TP in the free space. Alternatively, the backup arithmetic unit 310 cooperates with GPS or the car navigation system, and acquires information of the nearest facility to be set as the safe stop position TP when the driver is in an abnormal state.
In step S305, the backup arithmetic unit 310 sets a third safe area SA3.
In the subsequent step S308, the target motion determination unit 130 selects a route within the third safe area SA3 from the safe routes received from the backup arithmetic unit 310, and sets the selected safe route as the route that the motor vehicle 1 should take.
In the subsequent step S311, the target motion determination unit 330 calculates a target motion for causing the motor vehicle 1 to travel the route selected in step S308.
In the subsequent step S312, the energy management unit 340 sets the target control amount at the highest energy efficiency to achieve the target motion calculated in step S311, and the flow proceeds to step S300 in
Returning to
In step S300, if no abnormality is detected by the abnormality detection unit 450 (NO is selected), the flow proceeds to “normal operation mode” in step S400. In the “normal operation mode” in step S400, the selector device 500 selects and outputs the control signal for achieving the target motion outputted from the main arithmetic device.
If the abnormality detection unit 450 has detected an abnormality in step S300 (YES is selected), the flow proceeds to a safe operation mode in step S500. In the “normal” operation mode in step S400, the selector device 500 selects and outputs the control signal for realizing the target motion output from the main arithmetic device.
In summary, the automotive arithmetic system SY mounted on the motor vehicle 1 includes the main arithmetic device 100, the backup arithmetic device 300, and the selector device 500. The main arithmetic device 100 includes the first route calculation unit 113 (corresponding to a route generation unit) that estimates the vehicle external environment using deep learning based on the output from the vehicle external information acquisition device M1 that acquires information of the vehicle external environment, and generates the first route based on the estimated vehicle external environment. The main arithmetic device 100 determines a target motion using the output of the first route calculation unit 113, and outputs a control signal for achieving the target motion. The backup arithmetic device 300 includes the safe route calculation unit 313 (corresponding to a safe route generation unit) that generates a safe route, which is a travel route on which the vehicle travels to the safe stop position TP where the vehicle can safely stop, based on the output from the vehicle external information acquisition device M1. The backup arithmetic device 300 determines a backup target motion for causing the vehicle to travel on the safe route, and outputs a backup control signal for achieving the backup target motion. The selector device 500 receives the control signal outputted from the main arithmetic device 100 and the backup control signal outputted from the backup arithmetic device 300, selects and outputs the control signal outputted from the main arithmetic device 100 during the normal operation, or selects and outputs the backup control signal outputted from the backup arithmetic device 300 when a failure of the main arithmetic device 100 is detected.
According to this configuration, the main arithmetic device 100 having the function of using deep learning can improve the functional safety level.
The foregoing embodiment is merely an example, and the scope of the present disclosure should not be interpreted in a limited manner. The scope of the present disclosure should be defined by the appended claims, and all the modifications and changes which fall within the scope of equivalents of the appended claims are within the scope of the present disclosure. That is, the present disclosure is not limited to the embodiment(s) described above, and any change can be made within the scope of the claims as appropriate.
For example, it has been described herein that the energy management unit 140 sets the target control amount at the highest energy efficiency to achieve the target motion after the target motion determination unit 130 has determined the target motion. However, the present disclosure is not limited thereto, and the energy management unit 140 may be omitted. Specifically, the target motion determination unit 130 may set the target control amount for achieving the target motion.
It has been described in the embodiment that the main arithmetic device 100 and the backup arithmetic device 300 are configured of different chips, for example, but the present disclosure is not limited thereto. For example, the main arithmetic device and the backup arithmetic device may be physically separated from each other and housed in the same housing or package.
In addition, the abnormality detection unit 450 may be configured to detect an abnormality in the output itself of the vehicle external information acquisition device M1 or the output itself of the vehicle internal information acquisition device M2. For example, the abnormality detection unit 450 may be configured to be able to detect a state where a problem has occurred in the route generation by the main arithmetic device 100, such as when the camera 50 has failed or no signals are inputted from the camera 50. The selector device 500 may be configured to select and output the backup control signal outputted from the backup arithmetic device 300 when the abnormality detection unit 450 has detected an abnormality in the output of the vehicle external information acquisition device M1 such as the camera 50.
It has been described in the embodiment that the selector device 500 is provided, but the present disclosure is not limited thereto. For example, the detection result of the abnormality detection unit 450 may be given to both of the main arithmetic device 100 and the backup arithmetic device 300. During the normal operation, the backup arithmetic device 300 stops outputting, and the main arithmetic device 100 outputs the control signal to the actuators AC. On the other hand, if a failure of the main arithmetic device is detected, the main arithmetic device 100 may stop outputting, and the backup arithmetic device 300 may output the backup control signal to the actuators AC.
Moreover, information of the safe area set by the second safe area setting unit 122 of the second arithmetic unit 120 may be given to the first route generation unit 705 of the first arithmetic unit 110. Then, the first route calculation unit 113 of the first arithmetic unit 110 may set the first route in consideration of the safe area set by the second safe area setting unit 122.
(Example Introduced to Actual System)
An example introduced into an actual system will be described below with reference to
—1. Outline—
First, the automotive arithmetic system SY of the present disclosure (will be hereinafter simply referred to as an “arithmetic system SY”) is functionally divided into: (1) a configuration (may be hereinafter referred to as a “cognitive block B1”) for recognizing the vehicle external environment and the vehicle internal environment (including the driver's condition); (2) a configuration (may be hereinafter referred to as a “determination block B2”) for considering various states and situations based on the recognition result of the cognitive block B1 and determining the operation of the motor vehicle 1; and (3) a configuration (may be hereinafter referred to as an “operation block B3”) for specifically generating signals and data to be transmitted to the actuators based on the determination in the determination block B2. One of the features of the present disclosure is that the cognitive block B1, the determination block B2, and the operation block B3 are integrated and realized into a single unit.
The arithmetic system SY includes: (1) a main arithmetic unit 700 including the cognitive block B1, the determination block B2, and the operation block B3 for realizing autonomous driving during the normal operation; (2) a safety function unit 800 that mainly functions to complement the cognitive block B1 and determination block B2 of the main arithmetic unit 700; and (3) a backup safety function unit 900 that causes the motor vehicle 1 to move to a safe position when an abnormal situation has occurred, such as a failure in the functions of the main arithmetic unit 700 and the safety function unit 800.
In the arithmetic system SY, the cognitive block B1 and determination block B2 of the main arithmetic unit 700 execute processing using various models constructed through deep learning using a neural network. The processing using such models enables driving control based on comprehensive determination of the state of the vehicle, the vehicle external environment, and the conditions of the driver, i.e., control of a large amount of input information in cooperation in real time. However, as described above, the recognition of the vehicle external environment and the route calculation using the deep learning are still under development, and considered to remain at around ASIL-B. Although ASIL information of each block is described as reference information in
Thus, the arithmetic system SY of the present disclosure assumes that the deep learning executed by the main arithmetic unit 700 may possibly lead to determination or processing deviating from a certain acceptable range (hereinafter simply referred to as “deviating processing”), and monitors the deviating processing. If the deviating processing is detected, the deviating processing is replaced or complemented with determination or processing by the safety function unit 800 having the functional safety level equivalent to ASIL-D.
Specifically, for example, the safety function unit 800 is configured to: (1) recognize an object outside of the vehicle (referred to as a “target object” in the present disclosure) based on a target recognition method which has been adopted to the motor vehicles; and (2) set a safe area which the vehicle can safely pass by a method that has been adopted to the motor vehicles, and then set a route passing the safe area as a travel route that the motor vehicle should take.
Through the so-called rule-based determination and processing, a functional safety level equivalent to ASIL-D can be realized.
Another feature of the arithmetic system SY is that the main arithmetic unit 700 and the safety function unit 800 perform processing for the same purpose (e.g., route generation) in parallel based on the same input information (including information acquired by the vehicle external information acquisition device M1 and the vehicle internal information acquisition device M2). This configuration makes it possible to monitor the deviating processing that is derived from the main arithmetic unit 700, and employ the determination or processing by the safety function unit 800, or cause the main arithmetic unit 700 to re-calculate, as necessary.
The main arithmetic unit 700 and the safety function unit 800 may be configured as one or more chips in which their functions are combined together (hereinafter, the combination may also be referred to as a “vehicle control function”), or the main arithmetic unit 700 and the safety function unit 800 may be configured as independent chips.
As an example of how to address the deviating processing by the main arithmetic unit 700, it has been described in the embodiment that a route, which is set by the main arithmetic unit 700 and deviates from the safe area set by the safety function unit 800, is replaced with a rule-based route generated by the safety function unit 800.
Further, the arithmetic system SY is provided with a backup safety function unit 900 (corresponding to the backup arithmetic device 300) to be able to address a situation in which both of the main arithmetic unit 700 and the safety function unit 800 fail. The backup safety function unit 900 has the function of generating a rule-based route based on the information outside the vehicle and executing the vehicle control until the vehicle stops at a safe position, as a separate configuration from the main arithmetic unit 700 and the safety function unit 800. Thus, in an embodiment, the main arithmetic unit 700 and the safety function unit 800 are configured as separate devices (chips).
Therefore, for example, even when the main arithmetic unit 700 and the safety function unit 800 are configured as a common chip and a failure occurs in the chip itself, the vehicle can stop at a safe place. In other words, the provision of the backup safety function unit 900 makes it possible to complement the failure of one of the vehicle control function or the backup function by the other, and secure the safety operation at the time of failure.
—2. Configuration—
A specific configuration of the arithmetic system SY will be described below with reference to
The arithmetic system SY receives, as input signals, data acquired by the vehicle external information acquisition device M1 that acquires the information of the environment outside the motor vehicle, and data acquired by the vehicle internal information acquisition device M2 that acquires the information on the environment inside the motor vehicle. The arithmetic system SY may receive, as the input signal, information inputted from a system or a service connected to an external network (e.g., the Internet), such as the cloud computing (referred to as “EXTERNAL INPUT” in
Examples of the vehicle external information acquisition device M1 include (1) a plurality of cameras 50, (2) a plurality of radars 51, (3) a mechanical sensor 520 such as a vehicle speed sensor 52, (4) a driver input unit 530 such as an accelerator position sensor 53, a steering angle sensor 54, and a brake sensor 55, and (5) a position sensor 56 including a positioning system such as GPS.
Examples of the vehicle internal information acquisition device M2 include an in-vehicle camera 58 and an in-vehicle sensor 59. The in-vehicle sensor 59 includes, for example, a sensor that detects a driver's operation of various operation objects such as an accelerator pedal, a brake pedal, a steering wheel, and various switches. The vehicle internal information acquisition device M2 is not shown in
—2-1. Main Arithmetic Unit—
A configuration example of the main arithmetic unit 700 and the route generation using deep learning by the main arithmetic unit 700 will be described below.
As shown in
In a non-limiting example, a process is described about how a learned model is trained, according to the present teachings. The example will be in the context of a vehicle external environment estimation circuitry (e.g., a trained model saved in a memory and applied by a computer). However, other aspects of the trained model for controlling steering, braking, etc., are implemented in similar processes. Hereinafter, as part of a process for determining how a computing device 1000 calculates a route path (R2, R13, R12, R11, or RS for example on a road 5 illustrated in
First, by referring to
The computing device 1000 may include a data extraction network 2000 and a data analysis network 3000. Further, to be illustrated in
Below, an aspect of calculating a safe route (e.g. R13), around a protection zone that surrounds the obstacle will be explained. Moreover, the specific aspect is to learn a model to detect obstacles (e.g., vehicle 1) on a roadway, and also estimate relative distance to a superimposed protection range that has been electronically superimposed about the vehicle 3 in the image. To begin with, a first embodiment of the present disclosure will be presented.
First, the computing device 1000 may acquire at least one subject image that includes a superimposed protection zone about the subject vehicle 3. By referring to
After the subject image is acquired, in order to generate a source vector to be inputted to the data analysis network 3000, the computing device 1000 may instruct the data extraction network 2000 to generate the source vector including (i) an apparent distance, which is a distance from a front of vehicle 1 to a back of the protection zone surrounding vehicle 3, and (ii) an apparent size, which is a size of the protection zone.
In order to generate the source vector, the computing device 1000 may instruct at least part of the data extraction network 2000 to detect the obstacle 3 (vehicle) and protection zone. Specifically, the computing device 1000 may instruct the first feature extracting layer 2100 to apply at least one first convolutional operation to the subject image, to thereby generate at least one subject feature map. Thereafter, the computing device 1000 may instruct the ROI pooling layer 2200 to generate one or more ROI-Pooled feature maps by pooling regions on the subject feature map, corresponding to ROIs on the subject image which have been acquired from a Region Proposal Network (RPN) interworking with the data extraction network 2000. And, the computing device 1000 may instruct the first outputting layer 2300 to generate at least one estimated obstacle location and one estimated protection zone region. That is, the first outputting layer 2300 may perform a classification and a regression on the subject image, by applying at least one first Fully-Connected (FC) operation to the ROI-Pooled feature maps, to generate each of the estimated obstacle location and protection zone region, including information on coordinates of each of bounding boxes. Herein, the bounding boxes may include the obstacle and a region around the obstacle (protection zone).
After such detecting processes are completed, by using the estimated obstacle location and the estimated protection zone location, the computing device 1000 may instruct the data vectorizing layer 2400 to subtract a y-axis coordinate (distance in this case) of an upper bound of the obstacle from a y-axis coordinate of the closer boundary of the protection zone to generate the apparent distance, and multiply a distance of the protection zone and a horizontal width of the protection zone to generate the apparent size of the protection zone.
After the apparent distance and the apparent size are acquired, the computing device 1000 may instruct the data vectorizing layer 2400 to generate at least one source vector including the apparent distance and the apparent size as its at least part of components.
Then, the computing device 1000 may instruct the data analysis network 3000 to calculate an estimated actual protection zone by using the source vector. Herein, the second feature extracting layer 3100 of the data analysis network 3000 may apply second convolutional operation to the source vector to generate at least one source feature map, and the second outputting layer 3200 of the data analysis network 3000 may perform a regression, by applying at least one FC operation to the source feature map, to thereby calculate the estimated protection zone.
As shown above, the computing device 1000 may include two neural networks, i.e., the data extraction network 2000 and the data analysis network 3000. The two neural networks should be trained to perform the processes properly, and thus below it is described how to train the two neural networks by referring to
First, by referring to
Herein, the data vectorizing layer 2400 may have been implemented by using a rule-based algorithm, not a neural network algorithm. In this case, the data vectorizing layer 2400 may not need to be trained, and may just be able to perform properly by using its settings inputted by a manager.
As an example, the first feature extracting layer 2100, the ROI pooling layer 2200 and the first outputting layer 2300 may be acquired by applying a transfer learning, which is a well-known prior art, to an existing object detection network such as VGG or ResNet, etc.
Second, by referring to
After performing such training processes, the computing device 1000 can properly calculate the estimated protection zone by using the subject image including the scene photographed from the front of the subject roadway.
Hereafter, another embodiment will be presented. A second embodiment is similar to the first embodiment, but different from the first embodiment in that the source vector thereof further includes a tilt angle, which is an angle between an optical axis of a camera which has been used for photographing the subject image (e.g., the subject obstacle) and a distance to the obstacle. Also, in order to calculate the tilt angle to be included in the source vector, the data extraction network of the second embodiment may be slightly different from that of the first one. In order to use the second embodiment, it should be assumed that information on a principal point and focal lengths of the camera are provided.
Specifically, in the second embodiment, the data extraction network 2000 may have been trained to further detect lines of a road in the subject image, to thereby detect at least one vanishing point of the subject image. Herein, the lines of the road may denote lines representing boundaries of the road located on the obstacle in the subject image, and the vanishing point may denote where extended lines generated by extending the lines of the road, which are parallel in the real world, are gathered. As an example, through processes performed by the first feature extracting layer 2100, the ROI pooling layer 220 and the first outputting layer 2300, the lines of the road may be detected.
After the lines of the road are detected, the data vectorizing layer 240 may find at least one point where the most extended lines are gathered, and determine it as the vanishing point. Thereafter, the data vectorizing layer 2400 may calculate the tilt angle by referring to information on the vanishing point, the principal point and the focal lengths of the camera by using a following formula:
θtilt=atan 2(vy−cy,fy)
In the formula, vy may denote a y-axis (distance direction) coordinate of the vanishing point, cy may denote a y-axis coordinate of the principal point, and fy may denote a y-axis focal length. Using such formula to calculate the tilt angle is a well-known prior art, thus more specific explanation is omitted.
After the tilt angle is calculated, the data vectorizing layer 2400 may set the tilt angle as a component of the source vector, and the data analysis network 3000 may use such source vector to calculate the estimated protection zone. In this case, the data analysis network 3000 may have been trained by using the source vectors for training additionally including tilt angles for training.
For a third embodiment which is mostly similar to the first one, some information acquired from a subject obstacle DB storing information on subject obstacles, including the subject obstacle, can be used for generating the source vector. That is, the computing device 1000 may acquire structure information on a structure of the subject vehicle, e.g., 4 doors, vehicle base length of a certain number of feet, from the subject vehicle DB. Or, the computing device 1000 may acquire topography information on a topography of a region around the subject vehicle, e.g., hill, flat, bridge, etc., from location information for the particular roadway. Herein, at least one of the structure information and the topography information can be added to the source vector by the data vectorizing layer 2400, and the data analysis network 3000, which has been trained by using the source vectors for training additionally including corresponding information, i.e., at least one of the structure information and the topography information, may use such source vector to calculate the estimated protection zone.
As a fourth embodiment, the source vector, generated by using any of the first to the third embodiments, can be concatenated channel-wise to the subject image or its corresponding subject segmented feature map, which has been generated by applying an image segmentation operation thereto, to thereby generate a concatenated source feature map, and the data analysis network 3000 may use the concatenated source feature map to calculate the estimated protection zone. An example configuration of the concatenated source feature map may be shown in
The result of recognition by the object recognition unit 701 is transmitted to a map generation unit 702. The map generation unit 702 divides an area around the subject vehicle into a plurality of areas (e.g., front, right, left, and rear areas), and performs map generation processing for each area. In the map generation processing, the object information recognized by the cameras 50 and the object information recognized by the radars 51 are integrated together for each area and reflected on the map.
The vehicle external environment estimation unit 703 (corresponding to the vehicle external environment estimation unit 111) uses the map generated by the map generation unit 702 to estimate the vehicle external environment through image recognition processing using deep learning. Specifically, the vehicle external environment estimation unit 703 generates a 3D map representing the vehicle external environment through the image recognition processing based on an environment model 704 constructed using deep learning. In the deep learning, a multilayer neural network (e.g., a deep neural network (DNN)) is used. Examples of the multilayer neural network include a convolutional neural network (CNN). More specifically, the vehicle external environment estimation unit 703 (1) combines the maps for the areas and generates the integrated map representing the surroundings of the subject vehicle 1, (2) estimates the displacements of the distances, directions, and relative speeds of moving objects within the integrated map with respect to the subject vehicle 1, and (3) incorporates the result into the vehicle external environment model 704. In addition, the vehicle external environment estimation unit 703 (4) estimates the position of the subject vehicle 1 on the integrated map based on a combination of highly accurate map information taken from the inside or outside of the vehicle, positional information obtained by the GPS or the like, vehicle speed information, and six-axis information, and (5) calculates the route costs described above, and (6) incorporates the result into the external environment model 704 together with the motion information of the subject vehicle 1 obtained by the various sensors. Through the series of processing, the external environment model 704 is updated by the vehicle external environment estimation unit 703 as needed, and is used for the route generation by the route generation unit 705.
The signals of the positioning system such as the GPS, and the data, e.g., for car navigation transmitted from the external network are transmitted to a route searching unit 706. The route searching unit 706 searches for a wide-area route of the vehicle using the signals of the positioning system such as the GPS or the data, for example, for the navigation system transmitted from the external network.
The route generation unit 705 generates the travel route of the vehicle based on the external environment model 704 and the output from the route searching unit 706. A specific route searching method by the main arithmetic unit 700 has been described as a calculation method of the first route in the section of “2-1. Calculation of First Route and Second Route” of the embodiment. The function described so far is an example of the route generation by deep learning, and is route generation that realizes a functional safety level equivalent to ASIL-B.
—2-2. Safety Function Unit—
A configuration of the safety function unit 800 and rule-based route generation by the safety function unit 800 will be described below.
As shown in
The object recognized by the object recognition unit 801 is classified into a moving object or a stationary object. In
The routes generated by the main arithmetic unit 700 and the safety function unit 800 are sent to the target motion determination unit 730, and an optimum target motion is determined in accordance with the result of comparison between the routes. For example, as described in the embodiment, when the route generated by the main arithmetic unit 700 deviates from the safe area searched by the safety function unit 800, the route generated by the safety function unit 800 is adopted. The target motion determination unit 730, a vehicle kinetic energy operation unit 740, and an energy management unit 750 correspond to the target motion determination unit 130 and the energy management unit 140 described in the aforementioned embodiment, and will not be described in detail below.
—2-3. Backup Safety Function Unit—
A configuration of the backup safety function unit 900 and rule-based route generation by the backup safety function unit 900 will be described below. The backup safety function unit 900 is provided with a configuration required to enable an operation of moving to and stopping at a minimum safe stop position based on a rule. This configuration can be roughly realized by the function similar to the safety function unit 800.
As shown in
The present disclosure is useful as an automotive arithmetic system mounted on a motor vehicle.
Number | Date | Country | Kind |
---|---|---|---|
2019-043106 | Mar 2019 | JP | national |
The present application claims priority to international application PCT/JP2020/008922, filed Mar. 3, 2020, and Japanese application number 2019-043106 filed in the Japanese Patent Office on Mar. 8, 2019, the entire contents of both of which being incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/JP2020/008922 | Mar 2020 | US |
Child | 17468688 | US |