Detailed Description
In the following description, for purposes of explanation and not limitation, specific details are set forth such as the particular system architecture, techniques, etc., in order to provide a thorough understanding of the embodiments of the present application. It will be apparent, however, to one skilled in the art that the present application may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present application with unnecessary detail.
An automatic driving boundary expansion method and apparatus according to an embodiment of the present application will be described in detail with reference to the accompanying drawings.
As mentioned above, the PnC module of the autopilot may need to use the lane information provided by the map when planning the route, and these lane information may be sorted into the reference lines according to the service requirement. In general, the PnC module reads the left and right boundaries of the current position from the reference line as the autopilot reference information, but when conditions such as road borrowing, narrow road driving, and driving outside the lane are encountered, the expansion processing needs to be performed on the left and right boundaries provided by the current reference line.
In view of this, the embodiment of the application provides an automatic driving boundary expansion method, which comprises the steps of obtaining a reference line of an automatic driving vehicle, traversing all reference points in the reference line to obtain global information, obtaining and automatically driving vehicle own vehicle information, determining the value of each zone bit in a zone bit set based on the global information and the own vehicle information, and finally traversing the value of each zone bit in the zone bit set, and when determining that the value of a target zone bit represents that the boundary expansion is currently required, carrying out boundary expansion on the reference line of the automatic driving vehicle by using a preset strategy corresponding to the target zone bit.
Fig. 1 is a flow chart of an automatic driving boundary expansion method according to an embodiment of the present application. As shown in fig. 1, the method comprises the steps of:
in step S101, a reference line of the autonomous vehicle is acquired, and all reference points in the reference line are traversed to obtain global information.
The reference line may be a center line of a current driving lane of the autonomous vehicle.
In step S102, the own vehicle information of the automatically driven vehicle is acquired, and the value of each flag bit in the set of flag bits is determined based on the global information and the own vehicle information.
In step S103, the values of the respective flag bits in the flag bit set are sequentially traversed, and when it is determined that the value representation of the target flag bit requires boundary expansion, the boundary expansion is performed on the reference line of the autonomous vehicle by using a preset policy corresponding to the target flag bit.
The target zone bit is any zone bit in the zone bit set.
In some embodiments of the present application, the autopilot boundary extension method may be performed by an autopilot PnC module for providing boundary information for autopilot decisions. The boundary information may include left boundary information and right boundary information of the autonomous vehicle, the left boundary information further including, but not limited to, coordinate values of a left boundary, whether the left boundary is expandable, etc., and the right boundary information further including, but not limited to, coordinate values of a right boundary, whether the right boundary is expandable, etc.
In some embodiments, a reference line for an autonomous vehicle may be first obtained. The reference line may be a center line of a current driving lane of the autonomous vehicle. The reference line may include a plurality of reference points, each of which may be configured with its corresponding lane information, road information, and the like. Global information can be obtained from the lane information and the road information in the reference point.
On the other hand, the own vehicle information of the autonomous vehicle may also be acquired, the own vehicle information including the position information of the autonomous vehicle and the boundary information, wherein the boundary information may be the maximum coordinate value of the autonomous vehicle in each direction. It is understood that the maximum coordinate value should be the coordinate value with the largest absolute value in the negative axis direction of the coordinate axis.
After the global information and the own vehicle information are acquired, the value of each flag bit in the flag bit set can be determined based on the global information and the own vehicle information. The flag bit set may be a preset set, and includes a plurality of custom flag bits, where different flag bits represent different flag information, and these flag information or a combination of flag information may indicate whether boundary expansion is currently required.
Further, after determining the value of each zone bit in the zone bit set, the value of each zone bit in the zone bit set can be traversed in sequence, and when determining that the value representation of the target zone bit needs to be subjected to boundary expansion, a preset strategy corresponding to the target zone bit is used for carrying out boundary expansion on the reference line of the automatic driving vehicle.
The sequentially traversing the values of the flag bits means that each flag bit in the flag bit set may have a priority order, and the traversing may sequentially traverse according to the priority order of each flag bit. Or the preset strategies corresponding to the various zone bits in the zone bit set may have an execution sequence relation, and the judgment of some preset strategies may need to depend on the judgment results of other preset strategies, at this time, the zone bit corresponding to the preset strategy which is independently judged may be traversed first, and then the zone bit corresponding to the preset strategy which needs to depend on the judgment results of other preset strategies is judged.
Meanwhile, the traversing sequence of the zone bits with the same priority level or zone bits with no dependency relationship among the corresponding preset strategies can be set according to actual needs, and the zone bits are not limited.
According to the technical scheme provided by the embodiment of the application, global information is obtained by acquiring the reference line of the automatic driving vehicle, traversing all the reference points in the reference line, and vehicle information of the automatic driving vehicle is obtained, the value of each zone bit in the zone bit set is determined based on the global information and the vehicle information, and finally the value of each zone bit in the zone bit set is traversed, when the value of the target zone bit is determined to represent that the boundary expansion is needed currently, the boundary expansion is carried out on the reference line of the automatic driving vehicle by using the preset strategy corresponding to the target zone bit, so that the boundary automatic expansion method of the automatic driving vehicle in a special scene is provided, the decision precision of the PnC module is improved, and the user experience is improved.
In some embodiments of the present application, determining the value of each flag bit in the flag bit set based on the global information and the vehicle information may be to construct a frey inner Frenet coordinate system with the tangential direction of the reference line as the abscissa direction and the normal direction as the ordinate direction; and determining the value of each zone bit in the zone bit set according to the coordinate value relation of at least part of parameters in the global information and the vehicle information in the Frenet coordinate system. Further, the abscissa value of each element in the Frenet coordinate system may be denoted as L, and the ordinate value may be denoted as S.
In some embodiments of the present application, the global information includes at least whether the left boundary of the road, the left boundary of the lane, the right boundary of the road, the right boundary of the lane, and the left and right boundaries of the road for each reference point in the reference line are expandable. The vehicle information at least comprises a vehicle left boundary, a vehicle right boundary and a vehicle planning center.
In one example, the left boundary of the road at the reference point may be denoted as left_road_bound, the left boundary of the lane may be denoted as left_lane_bound, the right boundary of the road may be denoted as right_road_bound, and the right boundary of the lane may be denoted as right_lane_bound.
In yet another example, the left-hand boundary of the vehicle information may be a point in the self-contour of the autonomous vehicle where the negative half-axis of the transverse axis of the Frenet coordinate system has the greatest absolute value, e.g., denoted as adc_left_1. The right side boundary of the vehicle information may be a point in the vehicle outline of the autonomous vehicle where the positive half axis of the transverse axis of the Frenet coordinate system has the largest absolute value, for example, denoted as adc_right_1. The vehicle planning center may be a rear axle center of the autonomous vehicle.
In some embodiments of the present application, the set of flag bits may include at least the following flag bits: a first flag bit, e.g., noted as is_narrow_ extend, that marks whether the autonomous vehicle enters a narrow road state; a second flag bit, e.g., noted as is_detour, that marks whether the autonomous vehicle is in a lane-borrowing state; a third flag bit, e.g., noted as is_outside_lane, that marks whether the autonomous vehicle is located outside the current lane boundary; a fourth flag bit, e.g., noted as is_near_bound, that marks whether the distance of the autonomous vehicle from the lane boundary of the current lane is less than a preset distance threshold; a borrowing direction flag bit, for example, noted extend _direction, that marks the borrowing direction; the first entry direction flag bit, which marks the entry from the left, is denoted as is_from_left_outide, for example; the second entry direction flag bit, into which the flag enters from the right, is denoted as is_from_right_output, for example.
The first zone bit, the second zone bit, the third zone bit, the fourth zone bit, the first driving-in direction zone bit and the second driving-in direction zone bit are all of a Boolean type, the initial default value is false, the value of the channel borrowing direction zone bit is of an enumeration type, and the initial default value is none.
When the automatic driving boundary expansion is performed, the PnC module firstly needs to make a pre-decision to determine the value of each zone bit in the zone bit set.
Fig. 2 is a flowchart of a method for determining a value of a first flag bit based on global information and vehicle information according to an embodiment of the present application. As shown in fig. 2, the method comprises the steps of:
in step S201, a forward detection distance, a backward detection distance, and a narrow road threshold are set.
In step S202, all reference points in the Frenet coordinate system, whose longitudinal distances from the vehicle planning center are smaller than the forward detection distance and the backward detection distance, are determined as the target reference point set.
In step S203, the target reference point set is traversed.
In step S204, in response to determining that at least one hit reference point included in the target reference point set satisfies the narrow road determination condition, the value of the first flag bit is determined to be true, the value of the borrowing direction flag bit is determined to be left, and the value of the first driving-in direction flag bit is determined to be true.
In some embodiments of the present application, the parameters forward detection distance, backward detection distance, and narrow road threshold may be first set when determining the value of the first flag bit. The forward detection distance may be referred to as adc_front_dis, and the backward detection distance may be referred to as adc_back_dis and narrow-road threshold value narrow_thresh.
Next, a set of target reference points may be determined from the forward detection distance and the backward detection distance. In one example, all reference points in the Frenet coordinate system that have a longitudinal distance from the vehicle planning center that is less than the forward detection distance and the backward detection distance may be determined as the set of target reference points. That is, reference points other than adc_s-adc_back_dis may be ignored, and reference points other than adc_s+adc_front_dis may be ignored, with the remaining reference points in the reference line being the target reference point set.
All reference points in the determined target reference point set can be traversed, when at least one hit reference point is determined to meet the narrow road judgment condition, the value of the first zone bit is determined to be true, the value of the borrowing direction zone bit is determined to be left, and the value of the first driving-in direction zone bit is determined to be true.
The narrow road judging condition may be that the lane width of the reference point is smaller than the narrow road threshold, the right boundary of the road of the reference point coincides with the right boundary of the lane and the right road is not expandable, and the left boundary of the road of the reference point does not coincide with the left boundary of the lane and the left road is expandable.
That is, for each reference point in the target reference point set, it is determined whether it satisfies simultaneously: the lane width of the reference point is less than narrow_thresh, the right_lane_bound of the reference point coincides with the right_road_bound and the right lane is not expandable, and the left_lane_bound of the reference point does not coincide with the left_road_bound and the left lane is expandable. The lane width of the reference point can be obtained by subtracting the right_lane_bound and the left_lane_bound.
When at least one reference point in the target reference points meets the narrow road judging condition, determining that the narrow road state is met currently, updating the value of is_narrow_ extend to be true, updating the value of extend _direction to be LEFT (LEFT), and updating the value of is_from_left_outside to be true. By adopting the method, the narrow road state inspection can be realized, and the value of the flag bit is_narrow_ extend is updated according to the inspection result.
The value of the second flag bit is_detours can be directly determined according to global information, and if the automatic driving vehicle is in the road borrowing state currently, the state can be recorded in the global information. By reading this record it is known that the autonomous vehicle is currently in a borrowed state, at which point the value of is_detour may be updated to true.
Further, when the value of is_detours is updated to be true, the value of the lane borrowing direction flag bit extend _direction may be updated to be left or right according to whether the determined lane borrowing state of the vehicle is a left lane borrowing or right node.
In some situations of automatic driving, for example, after an automatic driving vehicle is manually taken over outside a lane, the automatic driving mode is switched back to the automatic driving mode without returning to the current lane, and the boundary is still the boundary corresponding to the lane where the automatic driving vehicle is located before being manually taken over, and the boundary needs to be expanded to the boundary matched with the current position of the vehicle. Before expansion, it is first necessary to determine whether the autonomous vehicle is located outside the lane, and update the value of the flag bit is_outside_lane according to the determination result.
Fig. 3 is a flowchart of a method for determining a value of a third flag bit based on global information and vehicle information according to an embodiment of the present application. As shown in fig. 3, the method comprises the steps of:
In step S301, the current reference point is determined.
The current reference point is the reference point closest to the vehicle planning center in the reference line.
In step S302, in response to determining that the abscissa absolute value of the left boundary of the host vehicle is greater than the abscissa absolute value of the left boundary of the lane of the current reference point, the value of the third flag bit is determined to be true, the value of the borrowing direction flag bit is determined to be left, and the value of the first driving-in direction flag bit is determined to be true.
In step S303, in response to determining that the abscissa absolute value of the right boundary of the host vehicle is greater than the abscissa absolute value of the right boundary of the lane of the current reference point, the value of the third flag bit is determined to be true, the value of the borrowing direction flag bit is determined to be right, and the value of the second driving-in direction flag bit is determined to be true.
In some embodiments of the present application, when determining the value of the third flag bit, a reference point closest to the vehicle planning center in the reference line may be first determined as the current reference point. The left boundary of the host vehicle is then compared to the left boundary of the lane at the current reference point, or the right boundary of the host vehicle is compared to the right boundary of the lane at the current reference point. If the comparison result is that the absolute value of the abscissa of the left boundary of the own vehicle is larger than the absolute value of the abscissa of the left boundary of the lane of the current reference point, or the absolute value of the abscissa of the right boundary of the own vehicle is larger than the absolute value of the abscissa of the right boundary of the lane of the current reference point, the value of the third zone bit can be determined to be true, the value of the borrowing direction zone bit is determined to be left, and the value of the first driving direction zone bit is determined to be true.
That is, if it is determined that add_left_l is farther to the LEFT than left_lane_bound of the current reference point in the abscissa direction of the Frenet coordinate system, it is possible to update is_outside_lane to true, and to update extend _direction to LEFT, and to update is_from_left_outside to true.
Alternatively, if it is determined that in the abscissa direction of the Frenet coordinate system, add_right_l is more RIGHT than left_right_bound of the current reference point, it is equally possible to update is_outside_lane to true, to update extend _direction to RIGHT (RIGHT), and to update is_from_right_outside to true.
When the automatic driving vehicle returns to the lane from outside the lane, if the boundary is updated to the boundary of the lane immediately, abrupt change of the boundary may cause the vehicle to have an abrupt steering operation, and thus cause unstable running of the vehicle. Therefore, after the vehicle returns to the own lane from outside the lane, the boundary may be further expanded for a period of time so as to smoothly return to the boundary of the own lane. At this time, it is necessary to detect whether the vehicle is just driving from the external lane back to the own lane, the detection may be performed by whether the distance between the self-driving vehicle and the boundary of the own lane is less than a preset distance threshold and whether the vehicle is driving from the left or right lane, and after the detection is completed, the is_near_bound flag may be updated according to the detection result.
Fig. 4 is a flowchart of a method for determining a value of a fourth flag bit based on global information and vehicle information according to an embodiment of the present application. As shown in fig. 4, the method comprises the steps of:
in step S401, the current reference point is determined.
The current reference point is the reference point closest to the vehicle planning center in the reference line.
In step S402, in response to determining that the value of the first entry direction flag bit is true and that the difference of the abscissa of the lane left boundary minus the current reference point from the abscissa of the lane left boundary is greater than the preset boundary detection threshold, the fourth flag bit is determined to be false and that the value of the lane-borrowing direction flag bit is null and that the value of the first entry direction flag bit is false.
In step S403, in response to determining that the value of the first entry direction flag bit is true and that the difference of the abscissa of the left boundary of the lane minus the current reference point from the abscissa of the left boundary of the vehicle is less than or equal to the preset boundary detection threshold, the fourth flag bit is determined to be true and the value of the borrowing direction flag bit is determined to be left and the value of the first entry direction flag bit is determined to be true.
In step S404, in response to determining that the value of the second entry direction flag bit is true and the difference of the abscissa of the lane right boundary of the current reference point minus the abscissa of the vehicle right boundary is greater than the preset boundary detection threshold, the fourth flag bit is determined to be false and the value of the borrowing direction flag bit is determined to be null and the value of the second entry direction flag bit is determined to be false.
In step S405, in response to determining that the value of the second entry direction flag bit is true and that the difference of the abscissa of the lane right boundary of the current reference point minus the abscissa of the vehicle right boundary is less than or equal to the preset boundary detection threshold, the fourth flag bit is determined to be true and the value of the borrow direction flag bit is determined to be right and the value of the second entry direction flag bit is determined to be true.
In some embodiments of the present application, when determining the value of the fourth flag bit, the reference point closest to the vehicle planning center in the reference line may be determined as the current reference point. It is then determined whether a value of true is included in the first entry direction flag bit and the second entry direction flag bit. If not, namely the values of the first driving-in direction zone bit and the second driving-in direction zone bit are both false, the value of the fourth zone bit is kept to be false.
If the first driving-in direction zone bit is true, further judging whether the difference of the abscissa of the left boundary of the lane subtracted from the abscissa of the left boundary of the vehicle to the current reference point is larger than a preset boundary detection threshold value. If yes, the fourth zone bit is determined to be false, the value of the zone borrowing direction zone bit is determined to be null, and the value of the first driving-in direction zone bit is determined to be false. Otherwise, if the difference of the abscissa of the left boundary of the lane subtracted from the abscissa of the left boundary of the vehicle by the current reference point is smaller than or equal to the preset boundary detection threshold, determining that the fourth flag bit is true, determining that the value of the borrowing direction flag bit is left, and determining that the value of the first driving direction flag bit is true.
If the second driving-in direction zone bit is true, further judging whether the difference of the abscissa of the right boundary of the lane of the current reference point minus the abscissa of the right boundary of the own vehicle is larger than a preset boundary detection threshold value. If yes, the fourth zone bit is determined to be false, the value of the zone borrowing direction zone bit is determined to be null, and the value of the second entering direction zone bit is determined to be false. Otherwise, if the difference of the abscissa of the right boundary of the lane of the current reference point minus the abscissa of the right boundary of the host vehicle is smaller than or equal to the preset boundary detection threshold, determining that the fourth flag bit is true, determining that the value of the borrowing direction flag bit is right, and determining that the value of the second driving direction flag bit is true. The preset boundary detection threshold is a custom parameter, which can be noted as kBoundNearBuffer.
That is, when is_from_left_output is true, if the add_left_l is right shifted kBoundNearBuffer from the left_lane_bound of the current reference point in the abscissa direction of the Frenet coordinate system, it indicates that the autonomous vehicle is driving into the lane from the left side, but the distance from the left boundary of the lane is far enough, and the stationary driving stage is basically entered, so that the value of is_near_bound may be updated to be false, the value of extend _direction may be updated to be null (NONE), and the value of is_from_left_output may be updated to be false.
Otherwise, if the add_left_l is more LEFT in the abscissa direction of the Frenet coordinate system than the left_lane_bound of the current reference point is shifted to the right by kBoundNearBuffer, or the two are overlapped, it indicates that the autonomous vehicle just enters the lane from the LEFT lane, the distance from the LEFT boundary of the lane is still smaller, and at this time, a boundary expansion needs to be kept for a period of time to make the vehicle travel smoothly, so that the value of is_near_bound can be updated to be true, and the value of extend _direction is updated to be LEFT.
On the other hand, when is_from_right_output is true, if the adc_right_l is left in the direction of the abscissa of the Frenet coordinate system, which is further to the left than the position after right_lane_bound left-shift kBoundNearBuffer of the current reference point, the value of is_near_bound may be updated to false, the value of extend _direction may be updated to NONE, and the value of is_from_right_output may be updated to false.
Otherwise, if the add_right_l is RIGHT in the abscissa direction of the Frenet coordinate system, the position shifted left by kBoundNearBuffer than the right_lane_bound of the current reference point, or the two positions overlap, the value of is_near_bound may be updated to true, and the value of extend _direction may be updated to RIGHT.
It should be noted that the above pre-decision process may be performed in a certain order. For example, the value of the second flag bit is_detours is first determined, after the determination of the value of the flag bit is_detours is completed, whether the flag bit extend _direction is NONE is judged, if yes, the current boundary is not required to be expanded, the current boundary expansion execution task is exited, and the next task is started. Otherwise, if extend _direction is not NONE, the values of the first flag bit is_narrow_ extend and the third flag bit is_outside_lane may be respectively determined, and after the update of the value of the third flag bit is completed and the flag bit is_from_left_outside or is_from_right_outside is assigned, the value of the fourth flag bit is_near_bound may be determined.
It can be appreciated that the flag bit in the early decision process can be adjusted according to actual needs, including adding, deleting, updating, etc., and the execution sequence of the early decision can also be adjusted according to actual needs, which is not limited herein.
After the early decision is completed, a late decision may be performed to determine the expanded boundary based on the value of each flag bit. For example, the narrow road expansion strategy may be employed to expand the autopilot boundary when the is_narrow_ extend flag is true.
Fig. 5 is a flowchart of a method for performing boundary expansion on a reference line of an automatic driving vehicle by using a preset strategy corresponding to a target zone bit when it is determined that the value of the target zone bit represents that boundary expansion is required. As shown in fig. 5, the method comprises the steps of:
In step S501, in response to determining that the first flag bit is true, a first extended left boundary for each reference point in the reference line is calculated using a narrow-way extension policy.
In step S502, the first extended left boundary of each reference point is determined to be an extended left boundary, and the boundary left extension flag bit is set to true.
The first expansion left boundary of the reference point is the sum of the lane left boundary of the reference point and the first preset expansion distance when the first expansion left boundary is larger than the lane left boundary of the reference point and smaller than the road left boundary of the reference point, is the lane left boundary of the reference point when the first expansion left boundary of the reference point is smaller than or equal to the lane left boundary of the reference point, and is the road left boundary of the reference point when the first expansion left boundary of the reference point is larger than or equal to the road left boundary of the reference point.
In some embodiments of the present application, when the first flag bit is true, a narrow-way expansion strategy is used to calculate a first left expansion boundary of each reference point in the reference line, then the first left expansion boundary of each reference point is determined to be an expanded left boundary, and the boundary left expansion flag bit is set to true.
That is, a flag bit boundary left extension extend _left and a boundary right extension extend _right may also be defined. When extend _direction is LEFT and left_lane_bound and left_road_bound of the reference point do not coincide (indicating a LEFT-side extensible borrow), the value of extend _left is updated to true. Likewise, when extend _direction is RIGHT and the right_lane_bound and right_road_bound of the reference point do not coincide (indicating a RIGHT-hand expandable borrow), the value of extend _right is updated to true.
Further, when is_narrow_ extend is true, left_lane_bound of each reference point in the reference line may be extended to a first extended left boundary, where the first extended left boundary is a sum of the lane left boundary of the reference point and a first preset extended distance when the first extended left boundary is greater than the lane left boundary of the reference point and less than the road left boundary of the reference point, and is a lane left boundary of the reference point when the first extended left boundary is less than or equal to the lane left boundary of the reference point, and is a road left boundary of the reference point when the first extended left boundary is greater than or equal to the road left boundary of the reference point. The first preset extension distance may be denoted as left_ extend _dis.
That is, the first extended left boundary of each reference point in the reference line calculated using the narrow-path extension policy may be a first extended left boundary=clip (left_lane_bound+left_ extend _dis, left_lane_bound, left_road_bound) of each reference point, where clip is a limiting function.
The value extend _left may also be updated to true after the narrow-way expansion is completed. It should be noted that the update extend _left value is true because the borrowing is usually implemented to the left in view of the local traffic regulations. In actual use, for example, if the scheme is applied to a region where the right rudder runs, at this time, since the borrowing is usually implemented to the right, the scheme can be adjusted according to the actual situation, for example, the scheme is changed to update the value of extend _right to true.
Further, other expansion strategies may be used to expand the autopilot boundary when the is_detourr flag, the is_outside_lane flag, or the is_near_bound flag is true.
Fig. 6 is a flowchart of another method for performing boundary expansion on a reference line of an automatic driving vehicle by using a preset strategy corresponding to a target zone bit when it is determined that the value of the target zone bit represents that boundary expansion is required. As shown in fig. 6, the method includes the steps of:
in step S601, in response to determining that the boundary left extension flag bit is true, a second extended left boundary of each reference point in the reference line is calculated, and a third extended left boundary of each reference point in the reference line is calculated using a filtering extension policy.
In step S602, in response to determining that the value of the second flag bit is true, a maximum value of the second extended left boundary and the third extended left boundary of each reference point is determined as an extended left boundary.
In step S603, in response to determining that the value of the second flag bit is false and at least one of the third flag bit and the fourth flag bit is true, the second extended left boundary of each reference point is determined to be an extended left boundary.
In some embodiments of the present application, if the boundary left extension flag bit is determined to be true, a second extended left boundary of each reference point in the reference line may be calculated first, and a third extended left boundary of each reference point in the reference line may be calculated using a filter extension policy. Further, if the value of the second flag bit is determined to be true, the maximum value of the second extended left boundary and the third extended left boundary of each reference point is determined to be the extended left boundary. Further, if the value of the second flag bit is determined to be false and at least one of the third flag bit and the fourth flag bit is determined to be true, the second extended left boundary of each reference point is determined to be the extended left boundary.
The second extended left boundary of the reference point is the sum of the lane left boundary of the reference point and the second preset extended distance when the second extended left boundary is larger than the lane left boundary of the reference point and smaller than the road left boundary of the reference point, is the lane left boundary of the reference point when the second extended left boundary of the reference point is smaller than or equal to the lane left boundary of the reference point, and is the road left boundary of the reference point when the second extended left boundary of the reference point is larger than or equal to the road left boundary of the reference point.
And the third extended left boundary of the reference point takes the value as the filtering left boundary when the third extended left boundary is larger than the lane left boundary of the reference point and smaller than the road left boundary of the reference point, takes the value as the lane left boundary of the reference point when the third extended left boundary is smaller than or equal to the lane left boundary of the reference point, and takes the value as the road left boundary of the reference point when the third extended left boundary is larger than or equal to the road left boundary of the reference point. The value of the filtering left boundary is the sum of a first filtering term and a second filtering term, the first filtering term is the product of the lane left boundary of the reference point and a filtering coefficient, and the second filtering term is the product of the difference of 1 minus the filtering coefficient multiplied by the sum of the lane left boundary of the reference point and a preset adjacent width.
That is, when extend _left is true, a second extended left boundary of each reference point in the reference line may be calculated using the formula left_bound_l_by_add '=clip (left_bound_l_by_add, left_lane_bound, left_road_bound), wherein left_bound_l_by_add=add_left_l+a second preset extended distance, left_bound_l_by_add' is the second extended boundary. The value of the second preset extension distance may be customized according to actual needs, and in an example, the second preset extension distance may be equal to the vehicle width of the autopilot vehicle.
Meanwhile, a third extended left boundary of each reference point in the reference line can be obtained by calculation through a filtering and extending strategy, wherein the filtering and extending strategy can be that a formula left_bound_l_by_weight= left_lane_bound*extend_ratio+(1-extend_ratio)*(left_lane_bound+nearby_width) is utilized to calculate a filtering left boundary, the left_bound_l_by_weight is the filtering left boundary, extend _ratio is a filtering coefficient, and the value of the filtering coefficient can be determined according to actual needs, but needs to be more than 0 and less than 1. Then use the formula left_bound_l_by \u weight '=clip (left_bound_l_by_weight), left _ lane _ bound, left_road_bound) is calculated to obtain a third extension left boundary, wherein left_bound_l_by_weight' is the third extension left boundary.
After the second extended left boundary and the third extended left boundary are calculated, it may be first determined whether the value of is_detours is true, if so, max (left_bound_l_by_add ', left_bound_l_by_weight') is used as the extended left boundary of each reference point, where max is a function taking the maximum value. Otherwise, if the value of is_detours is false, then it is continued to determine if the values of is_outside_lane and is_near_bound are true. If the value of one of the is_outline_line and the is_near_bound is true, left_bound_l_by_add' is taken as the left boundary after each reference point is expanded.
Fig. 7 is a flowchart of another method for performing boundary expansion on a reference line of an automatic driving vehicle by using a preset strategy corresponding to a target zone bit when it is determined that the value of the target zone bit represents that boundary expansion is required. As shown in fig. 7, the method includes the steps of:
In step S701, in response to determining that the boundary right extension flag bit is true, a first extended right boundary of each reference point in the reference line is calculated, and a second extended right boundary of each reference point in the reference line is calculated using a filtering extension policy.
In step S702, in response to determining that the value of the second flag bit is true, a maximum value of the first extended right boundary and the second extended right boundary of each reference point is determined as an extended right boundary.
In step S703, in response to determining that the value of the second flag bit is false and at least one of the third flag bit and the fourth flag bit is true, the first extended right boundary of each reference point is determined to be an extended right boundary.
In some embodiments of the present application, if the boundary right extension flag bit is determined to be true, a first extended right boundary of each reference point in the reference line may be calculated first, and a second extended right boundary of each reference point in the reference line may be calculated using a filtering extension policy. Further, if the value of the second flag bit is determined to be true, the maximum value of the first extended right boundary and the second extended right boundary of each reference point is determined to be the extended right boundary. Further, if the value of the second flag bit is determined to be false and at least one of the third flag bit and the fourth flag bit is determined to be true, the first extended right boundary of each reference point is determined to be the extended right boundary.
The first expansion right boundary of the reference point is the difference between the lane right boundary of the reference point and the second preset expansion distance when the first expansion right boundary is larger than the lane right boundary of the reference point and smaller than the road right boundary of the reference point, is the lane right boundary of the reference point when the first expansion right boundary is smaller than or equal to the lane right boundary of the reference point, and is the road right boundary of the reference point when the first expansion right boundary is larger than or equal to the road right boundary of the reference point.
And the second extended right boundary of the reference point takes the value as a filtering right boundary when the second extended right boundary is larger than the right boundary of the lane of the reference point and smaller than the right boundary of the road of the reference point, takes the value as the right boundary of the lane of the reference point when the second extended right boundary is smaller than or equal to the right boundary of the lane of the reference point, and takes the value as the right boundary of the road of the reference point when the second extended right boundary is larger than or equal to the right boundary of the road of the reference point. The value of the right filtering boundary is the sum of a third filtering term and a fourth filtering term, the third filtering term is the product of the right lane boundary of the reference point and the filtering coefficient, and the fourth filtering term is the product of the difference of 1 minus the filtering coefficient multiplied by the difference of the right lane boundary of the reference point and the preset adjacent width.
That is, when extend _right is true, a first extended right boundary of each reference point in the reference line may be calculated using the formula right_bound_l_by_add '=clip (right_bound_l_by_add, right_lane_bound, right_road_bound), wherein right_bound_l_by_add=add_left_l-a second preset extended distance, and right_bound_l_by_add' is the first extended right boundary. The value of the second preset extension distance may be customized according to actual needs, and in an example, the second preset extension distance may be equal to the vehicle width of the autopilot vehicle.
Meanwhile, a second extended right boundary of each reference point in the reference line can be obtained by calculation by using a filtering and extending strategy, wherein the filtering and extending strategy can be that a formula right_bound_l_by_weight= right_lane_bound*extend_ratio+(1-extend_ratio)*(right_lane_bound-nearby_width) is utilized to calculate a filtering right boundary, the right_bound_l_by_weight is the filtering right boundary, the extend _ratio is a filtering coefficient, and the value of the filtering coefficient can be determined according to actual needs, but needs to be more than 0 and less than 1. Then use the formula right_bound_l_by \u weight '=clip (right_bound_l_by_weight, right _ lane _ bound, right_road_bound) calculates a second extended right boundary, wherein right_bound_l_by_weight' is the second extended right boundary.
After the first extended right boundary and the second extended right boundary are calculated, it may be first determined whether the value of is_detours is true, if so, max (right_bound_l_by_add ', right_bound_l_by_weight') is used as the extended right boundary of each reference point, where max is a function taking the maximum value. Otherwise, if the value of is_detours is false, then it is continued to determine if the values of is_outside_lane and is_near_bound are true. If the value of one of the is_outline_line and the is_near_bound is true, the right_bound_l_by_add' is taken as the right boundary after each reference point is expanded.
In some embodiments of the present application, the preset approach width may be determined as follows: responding to the determination that the value of the road borrowing direction zone bit is left, and acquiring the corresponding left lane width at the vehicle planning center; limiting the left lane width based on a preset upper limit value and a preset lower limit value of the left lane width to obtain limited left lane width; determining the width of the left lane after limiting as a preset adjacent width; and in response to determining that the corresponding left lane width at the vehicle planning center cannot be obtained, determining that the preset approaching width is a preset threshold.
Or in response to determining that the value of the road borrowing direction zone bit is right, acquiring the corresponding right lane width at the vehicle planning center; limiting the right lane width based on a preset upper limit value and a preset lower limit value of the right lane width to obtain limited right lane width; determining the width of the limited right lane as a preset adjacent width; and in response to determining that the corresponding right lane width at the vehicle planning center cannot be obtained, determining that the preset approaching width is a preset threshold.
The preset approach width may be denoted as "near_width", and the variable may be created and assigned before performing a post-decision, or may be created and assigned at other suitable times, which is not limited herein. The value of the nearest_width may be written in each reference point in the reference line.
For any reference point in the reference line, when determining the value of the nearest_width, the value of the extend _direction flag bit may be first determined. If extend _direction is LEFT, reading LEFT lane information of the current lane from the map module, and reading the lane width of the LEFT lane at the longitudinal position corresponding to the adc_s. And then customizing the upper and lower bounds of the left lane width, limiting the read lane width by using a clip function by utilizing the upper and lower bounds of the customized left lane width, and updating the limited result to a nearest_width value to obtain a determined nearest_width value.
In some embodiments, if the left lane information of the current lane cannot be read from the map module, and further the lane width of the left lane at the longitudinal position corresponding to the add_s cannot be determined, the preset threshold may be used as the nearest_width value. The preset threshold value can be obtained by self-defining according to actual needs, and is not limited herein.
On the other hand, if extend _direction is RIGHT, the RIGHT lane information of the current lane is read from the map module, and the lane width of the RIGHT lane at the corresponding longitudinal position of adc_s is read. And then customizing the upper and lower bounds of the right lane width, limiting the read lane width by using a clip function by utilizing the upper and lower bounds of the right lane width, and updating the limited result to a nearest_width value to obtain a determined nearest_width value.
In some embodiments, if the right lane information of the current lane cannot be read from the map module, and further the lane width of the right lane at the longitudinal position corresponding to the add_s cannot be determined, the preset threshold may be used as the nearest_width value. The preset threshold value can be obtained by self-defining according to actual needs, and is not limited herein.
Fig. 8 is a schematic diagram of an application scenario of automatic driving boundary expansion provided in an embodiment of the present application. As shown in fig. 8, the automatic driving vehicle starts lane change from the position 1, and prepares to enter a new lane after lane change at the position 2, and the boundary 1 is an original boundary at the end of lane change, and at this time, since the vehicle has a part of the vehicle position outside the current lane, the original boundary can be expanded, so as to obtain an expanded boundary 2.
By adopting the technical scheme of the embodiment of the application, a whole set of complete decision method for boundary expansion processing is provided aiming at scenes such as automatic driving by road running, narrow road running, lane outside running and the like, more reliable reference information is provided for automatic driving decision, and the automatic driving stability and efficiency are improved.
Any combination of the above optional solutions may be adopted to form an optional embodiment of the present application, which is not described herein.
The following are examples of the apparatus of the present application that may be used to perform the method embodiments of the present application. For details not disclosed in the embodiments of the apparatus of the present application, please refer to the embodiments of the method of the present application.
Fig. 9 is a schematic diagram of an automatic driving boundary expanding device according to an embodiment of the present application. As shown in fig. 9, the apparatus includes:
The acquiring module 901 is configured to acquire a reference line of the automatic driving vehicle, traverse all reference points in the reference line, and obtain global information.
The acquisition module 901 is further configured to acquire own vehicle information of the autonomous vehicle, determine a value of each flag bit in the set of flag bits based on the global information and the own vehicle information.
The expansion module 902 is configured to sequentially traverse the values of the flag bits in the flag bit set, and when determining that the value representation of the target flag bit needs to be subjected to boundary expansion, perform boundary expansion on the reference line of the automatic driving vehicle by using a preset strategy corresponding to the target flag bit.
The target zone bit is any zone bit in the zone bit set.
According to the technical scheme provided by the embodiment of the application, global information is obtained by acquiring the reference line of the automatic driving vehicle, traversing all the reference points in the reference line, and vehicle information of the automatic driving vehicle is obtained, the value of each zone bit in the zone bit set is determined based on the global information and the vehicle information, and finally the value of each zone bit in the zone bit set is traversed, when the value of the target zone bit is determined to represent that the boundary expansion is needed currently, the boundary expansion is carried out on the reference line of the automatic driving vehicle by using the preset strategy corresponding to the target zone bit, so that the boundary automatic expansion method of the automatic driving vehicle in a special scene is provided, the decision precision of the PnC module is improved, and the user experience is improved.
In some embodiments, determining a value for each flag bit in the set of flag bits based on the global information and the own vehicle information includes: constructing a Frenet coordinate system in the Frey by taking the tangential direction of the reference line as the horizontal coordinate direction and the normal direction as the vertical coordinate direction; and determining the value of each zone bit in the zone bit set according to the coordinate value relation of at least part of parameters in the global information and the vehicle information in the Frenet coordinate system.
In some embodiments, the global information includes at least whether a left boundary of the road, a left boundary of the lane, a right boundary of the road, a right boundary of the lane, and a left-right boundary of the road for each reference point in the reference line are expandable; the vehicle information at least comprises a vehicle left boundary, a vehicle right boundary and a vehicle planning center.
In some embodiments, the set of flag bits includes at least the following flag bits: a first flag bit for marking whether the autonomous vehicle enters a narrow road state; a second flag bit for marking whether the automatically driven vehicle is in a motor vehicle lane borrowing state; a third zone bit for marking whether the automatic driving vehicle is positioned outside the boundary of the current lane; a fourth zone bit for marking whether the distance between the automatic driving vehicle and the lane boundary of the current lane is smaller than a preset distance threshold value; a borrowing direction flag bit for marking a borrowing direction; a first driving-in direction flag bit for entering the sign from the left side; a second driving-in direction flag bit for the sign driving in from the right side; the values of the first zone bit, the second zone bit, the third zone bit, the fourth zone bit, the first driving-in direction zone bit and the second driving-in direction zone bit are of Boolean type, and the values of the borrowing channel direction zone bit are of enumeration type.
In some embodiments, determining the value of the first flag bit based on the global information and the own vehicle information includes: setting a forward detection distance, a backward detection distance and a narrow road threshold; all reference points with the longitudinal distance smaller than the forward detection distance and the backward detection distance in the Frenet coordinate system and the vehicle planning center are determined to be a target reference point set; traversing a target reference point set; and in response to determining that at least one hit reference point included in the target reference point set meets a narrow road judgment condition, determining that the value of the first flag bit is true, determining that the value of the road borrowing direction flag bit is left, and determining that the value of the first driving-in direction flag bit is true.
In some embodiments, the narrow road determination condition includes: the lane width of the reference point is smaller than the narrow road threshold value; and the right boundary of the road of the reference point coincides with the right boundary of the lane and the right road is inextensible; and the left boundary of the road of the reference point is not coincident with the left boundary of the lane and the left road is expandable.
In some embodiments, determining the value of the third flag bit based on the global information and the own vehicle information includes: determining a current reference point which is the closest reference point to the vehicle planning center in a reference line; in response to determining that the absolute value of the abscissa of the left boundary of the host vehicle is greater than the absolute value of the abscissa of the left boundary of the lane of the current reference point, determining that the value of the third zone bit is true, determining that the value of the borrowing direction zone bit is left, and determining that the value of the first driving-in direction zone bit is true; and in response to determining that the absolute value of the abscissa of the right boundary of the host vehicle is greater than the absolute value of the abscissa of the right boundary of the lane of the current reference point, determining that the value of the third zone bit is true, and determining that the value of the borrowing direction zone bit is right, and that the value of the second driving-in direction zone bit is true.
In some embodiments, determining the value of the fourth flag bit based on the global information and the own vehicle information includes: determining a current reference point which is the closest reference point to the vehicle planning center in a reference line; in response to determining that the value of the first entry direction flag bit is true, and that the difference of the abscissa of the left lane boundary minus the current reference point from the abscissa of the left lane boundary is greater than a preset boundary detection threshold, determining that the fourth flag bit is false, and determining that the value of the borrow direction flag bit is null, and that the value of the first entry direction flag bit is false; in response to determining that the value of the first entry direction flag bit is true and that the difference of the abscissa of the lane left boundary minus the current reference point from the abscissa of the lane left boundary is less than or equal to the preset boundary detection threshold, determining that the fourth flag bit is true and that the value of the borrow direction flag bit is left and that the value of the first entry direction flag bit is true.
In some embodiments, determining the value of the fourth flag bit based on the global information and the own vehicle information includes: determining a current reference point which is the closest reference point to the vehicle planning center in a reference line; in response to determining that the value of the second entry direction flag bit is true, and that the difference of the abscissa of the lane right boundary of the current reference point minus the abscissa of the vehicle right boundary is greater than a preset boundary detection threshold, determining that the fourth flag bit is false, and determining that the value of the road borrowing direction flag bit is null, and that the value of the second entry direction flag bit is false; and in response to determining that the value of the second entry direction flag bit is true and that the difference of the abscissa of the lane right boundary of the current reference point minus the abscissa of the vehicle right boundary is less than or equal to the preset boundary detection threshold, determining that the fourth flag bit is true and that the value of the borrow direction flag bit is right and that the value of the second entry direction flag bit is true.
In some embodiments, when determining that the value of the target zone bit represents that the boundary expansion is required, performing the boundary expansion on the reference line of the automatic driving vehicle by using a preset strategy corresponding to the target zone bit includes: responding to the fact that the first zone bit is determined to be true, and calculating to obtain a first expansion left boundary of each reference point in the reference line by using a narrow-path expansion strategy; determining a first extended left boundary of each reference point as an extended left boundary, and setting a boundary left extended flag bit as true; the first expansion left boundary of the reference point is the sum of the lane left boundary of the reference point and the first preset expansion distance when the first expansion left boundary is larger than the lane left boundary of the reference point and smaller than the road left boundary of the reference point, is the lane left boundary of the reference point when the first expansion left boundary of the reference point is smaller than or equal to the lane left boundary of the reference point, and is the road left boundary of the reference point when the first expansion left boundary of the reference point is larger than or equal to the road left boundary of the reference point.
In some embodiments, when determining that the value of the target zone bit represents that the boundary expansion is required, performing the boundary expansion on the reference line of the automatic driving vehicle by using a preset strategy corresponding to the target zone bit includes: responding to the fact that the boundary left expansion zone bit is determined to be true, calculating to obtain a second expansion left boundary of each reference point in the reference line, and calculating to obtain a third expansion left boundary of each reference point in the reference line by using a filtering expansion strategy; in response to determining that the value of the second flag bit is true, determining that a maximum value of the second extended left boundary and the third extended left boundary of each reference point is an extended left boundary; and in response to determining that the value of the second flag bit is false and at least one of the third flag bit and the fourth flag bit is true, determining that the second extended left boundary of each reference point is an extended left boundary.
In some embodiments, the second extended left boundary of the reference point is a sum of the lane left boundary of the reference point and the second preset extended distance when the second extended left boundary is greater than the lane left boundary of the reference point and less than the road left boundary of the reference point, is a lane left boundary of the reference point when the second extended left boundary is less than or equal to the lane left boundary of the reference point, and is a road left boundary of the reference point when the second extended left boundary is greater than or equal to the road left boundary of the reference point; the third extended left boundary of the reference point takes the value as a filtering left boundary when the third extended left boundary is larger than the left boundary of the lane of the reference point and smaller than the left boundary of the road of the reference point, takes the value as the left boundary of the lane of the reference point when the third extended left boundary is smaller than or equal to the left boundary of the lane of the reference point, and takes the value as the left boundary of the road of the reference point when the third extended left boundary is larger than or equal to the left boundary of the road of the reference point; the value of the filtering left boundary is the sum of a first filtering term and a second filtering term, the first filtering term is the product of the lane left boundary of the reference point and a filtering coefficient, and the second filtering term is the product of the difference of 1 minus the filtering coefficient multiplied by the sum of the lane left boundary of the reference point and a preset adjacent width.
In some embodiments, when determining that the value of the target zone bit represents that the boundary expansion is required, performing the boundary expansion on the reference line of the automatic driving vehicle by using a preset strategy corresponding to the target zone bit includes: responding to the fact that the right expansion zone bit of the boundary is determined to be true, calculating to obtain a first expansion right boundary of each reference point in the reference line, and calculating to obtain a second expansion right boundary of each reference point in the reference line by using a filtering expansion strategy; in response to determining that the value of the second flag bit is true, determining that a maximum value of the first extended right boundary and the second extended right boundary of each reference point is an extended right boundary; and in response to determining that the value of the second flag bit is false and at least one of the third flag bit and the fourth flag bit is true, determining that the first extended right boundary of each reference point is an extended right boundary.
In some embodiments, the first extended right boundary of the reference point is a difference between the lane right boundary of the reference point and the second preset extended distance when the first extended right boundary is greater than the lane right boundary of the reference point and less than the road right boundary of the reference point, and is a lane right boundary of the reference point when the first extended right boundary is less than or equal to the lane right boundary of the reference point, and is a road right boundary of the reference point when the first extended right boundary is greater than or equal to the road right boundary of the reference point; the second extended right boundary of the reference point takes the value as a filtering right boundary when the second extended right boundary is larger than the right boundary of the lane of the reference point and smaller than the right boundary of the road of the reference point, takes the value as the right boundary of the lane of the reference point when the second extended right boundary is smaller than or equal to the right boundary of the lane of the reference point, and takes the value as the right boundary of the road of the reference point when the second extended right boundary is larger than or equal to the right boundary of the road of the reference point; the value of the right filtering boundary is the sum of a third filtering term and a fourth filtering term, the third filtering term is the product of the right lane boundary of the reference point and the filtering coefficient, and the fourth filtering term is the product of the difference of 1 minus the filtering coefficient multiplied by the difference of the right lane boundary of the reference point and the preset adjacent width.
In some embodiments, the preset approach width is determined as follows: responding to the determination that the value of the road borrowing direction zone bit is left, and acquiring the corresponding left lane width at the vehicle planning center; limiting the left lane width based on a preset upper limit value and a preset lower limit value of the left lane width to obtain limited left lane width; determining the width of the left lane after limiting as a preset adjacent width; in response to determining that the corresponding left lane width at the vehicle planning center cannot be obtained, determining a preset approach width as a preset threshold; responding to the right determined value of the road borrowing direction zone bit, and acquiring the corresponding right lane width at the vehicle planning center; limiting the right lane width based on a preset upper limit value and a preset lower limit value of the right lane width to obtain limited right lane width; determining the width of the limited right lane as a preset adjacent width; and in response to determining that the corresponding right lane width at the vehicle planning center cannot be obtained, determining that the preset approaching width is a preset threshold.
It should be understood that the sequence number of each step in the foregoing embodiment does not mean that the execution sequence of each process should be determined by the function and the internal logic, and should not limit the implementation process of the embodiment of the present application.
Fig. 10 is a schematic diagram of an electronic device according to an embodiment of the present application. As shown in fig. 10, the electronic device 10 of this embodiment includes: a processor 1001, a memory 1002 and a computer program 1003 stored in the memory 1002 and executable on the processor 1001. The steps of the various method embodiments described above are implemented by the processor 1001 when executing the computer program 1003. Or the processor 1001 when executing the computer program 1003 implements the functions of the modules/units in the above-described device embodiments.
The electronic device 10 may be a desktop computer, a notebook computer, a palm computer, a cloud server, or the like. The electronic device 10 may include, but is not limited to, a processor 1001 and a memory 1002. It will be appreciated by those skilled in the art that fig. 10 is merely an example of the electronic device 10 and is not limiting of the electronic device 10 and may include more or fewer components than shown, or different components.
The Processor 1001 may be a central processing unit (Central Processing Unit, CPU), but may also be other general purpose processors, digital signal processors (DIGITAL SIGNAL processors, DSPs), application SPECIFIC INTEGRATED Circuits (ASICs), field-Programmable gate arrays (Field-Programmable GATE ARRAY, FPGA) or other Programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
The memory 1002 may be an internal storage unit of the electronic device 10, for example, a hard disk or a memory of the electronic device 10. The memory 1002 may also be an external storage device of the electronic device 10, such as a plug-in hard disk, a smart memory card (SMART MEDIA CARD, SMC), a Secure Digital (SD) card, a flash memory card (FLASH CARD) or the like, which are provided on the electronic device 10. Memory 1002 may also include both internal and external storage units of electronic device 10. The memory 1002 is used to store computer programs and other programs and data required by the electronic device.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-described division of the functional units and modules is illustrated, and in practical application, the above-described functional distribution may be performed by different functional units and modules according to needs, i.e. the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-described functions. The functional units and modules in the embodiment may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit, where the integrated units may be implemented in a form of hardware or a form of a software functional unit.
The integrated modules/units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the present application may implement all or part of the flow of the method of the above embodiment, or may be implemented by a computer program to instruct related hardware, and the computer program may be stored in a computer readable storage medium, where the computer program, when executed by a processor, may implement the steps of each of the method embodiments described above. The computer program may comprise computer program code, which may be in source code form, object code form, executable file or in some intermediate form, etc. The computer readable medium may include: any entity or device capable of carrying computer program code, a recording medium, a U disk, a removable hard disk, a magnetic disk, an optical disk, a computer Memory, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), an electrical carrier signal, a telecommunications signal, a software distribution medium, and so forth.
The above embodiments are only for illustrating the technical solution of the present application, and are not limiting; although the application has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present application, and are intended to be included in the scope of the present application.