CN118279179A - Obstacle data processing method and device, storage medium and vehicle - Google Patents
Obstacle data processing method and device, storage medium and vehicle Download PDFInfo
- Publication number
- CN118279179A CN118279179A CN202410686682.XA CN202410686682A CN118279179A CN 118279179 A CN118279179 A CN 118279179A CN 202410686682 A CN202410686682 A CN 202410686682A CN 118279179 A CN118279179 A CN 118279179A
- Authority
- CN
- China
- Prior art keywords
- data
- obstacle
- node
- state data
- interpolation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title abstract description 6
- 238000000034 method Methods 0.000 claims abstract description 76
- 230000033001 locomotion Effects 0.000 claims abstract description 20
- 230000008569 process Effects 0.000 claims description 29
- 230000006870 function Effects 0.000 claims description 12
- 238000013499 data model Methods 0.000 claims description 6
- 238000009499 grossing Methods 0.000 abstract description 17
- 230000000694 effects Effects 0.000 abstract description 15
- 238000010586 diagram Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 3
- 230000008447 perception Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Landscapes
- Processing Or Creating Images (AREA)
Abstract
The application provides a processing method, a device, a storage medium and a vehicle of obstacle data, wherein interpolation state data, namely state data of adjacent data nodes, are inserted into a final obstacle movement video to enable the final obstacle movement video to be more smooth, compared with the prior art, the effect of a smoothing algorithm is improved, and the method mainly aims at very low-speed obstacles (such as obstacles with speed less than 5 m/s), so that the problem that the prior art is poor in effect of the smoothing algorithm on very low-speed obstacles (such as obstacles with speed less than 5 m/s) is solved.
Description
Technical Field
The application relates to the technical field of automatic driving, in particular to a method and a device for processing obstacle data, a storage medium and a vehicle.
Background
Many obstacles such as cars, SUVs, trucks, pedestrians, bicycles, electric vehicles, awls, etc. are encountered during autopilot operation. The perception module will parse the data in the autopilot system and send it to the HMI, which renders the obstacles through a real-time 3D game engine such as Unity, after perceiving the obstacles around the autopilot. If the smoothing operation is not performed on the data, the transmitted data is rendered directly white, then the obstacle can show that the movement is not smooth and jumps in the moving process, and the situation of frame dropping is visually perceived, and then an algorithm for smoothing all the obstacles needs to be designed according to the situation.
As shown in fig. 1, the left side indicates an unsmooth state, and one obstacle vehicle is at a certain position and a certain orientation (state S1) at time T1, and new data of the vehicle is obtained at time T2, and the vehicle is at a new position and orientation (state S2). If the current time stamp is between T1 and T2, if the current time stamp is not smooth, the vehicle keeps the state S1 at the moment of T1 on the display all the time, and suddenly jumps to S2 at the moment of T2, so that the frame dropping feeling is visually realized. Through a smoothing algorithm, the transition smooth state of the current time stamp of the vehicle can be calculated, so that the vehicle looks more silky and accords with logic in the real world.
Furthermore, as shown in FIG. 2, for very low speed obstacles (e.g., obstacles having a speed of less than 5 m/s), the data collected by the perception module may exhibit such a feature: in the case that the position orientation changes very little (T1 to T2) in a period of time and then suddenly changes at a certain moment (T3), the smooth effect cannot be obtained through the above smoothing algorithm, and the click can be compared.
I.e. the existing solution is less effective for smoothing algorithms for very low speed obstacles, e.g. obstacles with a speed of less than 5 m/s.
Disclosure of Invention
A main object of the present application is to provide a method of processing obstacle data, a device for processing obstacle data, a computer-readable storage medium, a processor and an electronic device, so as to solve at least the problem that the existing solution is poor in the effect of a smoothing algorithm for very low-speed obstacles (for example, obstacles with a speed of less than 5 m/s).
In order to achieve the above object, according to one aspect of the present application, there is provided a method of processing obstacle data, the method comprising:
Acquiring an obstacle data list, wherein the obstacle data list comprises state data corresponding to a plurality of obstacles at each moment, each state data comprises an obstacle number and a double-end linked list, the double-end linked list is used for representing the state data of the obstacle corresponding to the obstacle number at each moment, and the state data comprises the orientation and the position of the obstacle;
When newly-increased obstacle data is acquired, and the newly-increased obstacle number in the newly-increased obstacle data is the same as one obstacle number in the obstacle data list, adding a newly-increased data node behind a tail node of a double-end linked list of the newly-increased obstacle number, and storing state data of the newly-increased obstacle in the newly-increased obstacle data into the newly-increased data node;
Determining a first interpolation factor according to the speed of the current newly-increased obstacle in the newly-increased obstacle data, adopting an interpolation algorithm to process the state data of the adjacent data nodes of the newly-increased data nodes and the first interpolation factor to obtain interpolation state data, and taking the interpolation state data as the state data between the adjacent data nodes of the newly-increased data nodes.
Optionally, determining the first interpolation factor according to the speed of the current newly-added obstacle in the newly-added obstacle data includes:
Determining the first interpolation factor according to factor 1 = Clamp (SmoothStep (0, maxSpeed, speed), λ, 1);
Wherein factor1 is the first interpolation factor, clamp (SmoothStep (0, maxSpeed, speed), λ, 1) is used to limit SmoothStep (0, maxSpeed, speed) to [ λ,1], smoothStep is a smooth step function, maxSpeed is a speed threshold, speed is a speed of a current newly added obstacle in the newly added obstacle data, λ is a preset value, and λ < 1.
Optionally, determining the first interpolation factor according to factor=clamp (SmoothStep (0, maxSpeed, speed), λ,1 includes:
Determining that the first interpolation factor is λ if SmoothStep (0, maxSpeed, speed) is less than λ;
in the case SmoothStep (0, maxSpeed, speed) is greater than 1, determining that the first interpolation factor is 1;
In the case SmoothStep (0, maxSpeed, speed) is in the range of [ lambda, 1], the first interpolation factor is determined to be SmoothStep (0, maxSpeed, speed).
Optionally, the method further comprises:
And under the condition that the first interpolation factor is 1, determining that interpolation processing is not carried out between adjacent data nodes of the newly added data node.
Optionally, an interpolation algorithm is adopted to process the state data of the data node adjacent to the newly added data node and the first interpolation factor to obtain interpolation state data, which includes:
And determining the interpolation state data according to the fact that the sm_ pose = Lerp (min_node.post, max_node.post, factor), wherein the sm_ pose is the interpolation state data, lerp is used for limiting the interpolation state data between the state data of the adjacent data nodes of the newly added data node, and the min_node.post and the max_node.post are the state data of the adjacent data nodes of the newly added data node respectively.
Optionally, the method further comprises: under the condition that the current time stamp is smaller than a first time stamp, determining that the position of target state data in an obstacle moving video is located before a head node of a double-ended linked list corresponding to a target obstacle number in the obstacle data list, wherein the first time stamp is a time stamp stored in the head node of the double-ended linked list corresponding to the target obstacle number in the obstacle data list, the current time stamp is the current moment of real time, and the target state data is the state data of the obstacle corresponding to the target obstacle number in the current time stamp; determining that the position of the target state data in the obstacle movement video is located behind a tail node of a double-end linked list corresponding to a target obstacle number in the obstacle data list under the condition that the current timestamp is larger than a second timestamp, wherein the second timestamp is a timestamp stored in the tail node of the double-end linked list corresponding to the target obstacle number in the obstacle data list; and under the condition that the current time stamp is larger than or equal to the first time stamp and the current time stamp is smaller than or equal to the second time stamp, determining a second interpolation factor according to the current time stamp and the time stamp of a data node adjacent to the current time stamp in a double-end linked list of the obstacle data list, adopting an interpolation algorithm to process the second interpolation factor and a state data model of the data node adjacent to the current time stamp in the double-end linked list of the obstacle data list, and obtaining target state data, wherein the target state data is the state data of the obstacle corresponding to the target obstacle number in the current time stamp.
Optionally, determining a second interpolation factor according to the current timestamp and a timestamp of a data node adjacent to the current timestamp in a double-ended linked list of the obstacle data list includes:
and determining the second interpolation factor according to factor 2= ((cur_timestamp-min_node. Timestamp)/(max_node. Timestamp-min_node. Timestamp)), wherein factor2 is the second interpolation factor, cur_timestamp is the current timestamp, min_node. Timestamp is the timestamp of the former data node in the double-end linked list of the obstacle data list adjacent to the current timestamp, and max_node. Timestamp is the timestamp of the latter data node in the double-end linked list of the obstacle data list adjacent to the current timestamp.
According to another aspect of the present application, there is provided an apparatus for processing obstacle data, the apparatus comprising:
An obtaining unit, configured to obtain an obstacle data list, where the obstacle data list includes state data corresponding to a plurality of obstacles at each time, each state data includes an obstacle number and a double-end linked list, and the double-end linked list is used to characterize the state data of the obstacle corresponding to the obstacle number at each time, where the state data includes an orientation and a position of the obstacle;
a first processing unit, configured to, when new obstacle data is acquired, and a new obstacle number in the new obstacle data is the same as one obstacle number in the obstacle data list, add a new data node behind a tail node of a double-end linked list of the new obstacle number, and store state data of the new obstacle in the new obstacle data into the new data node;
And the second processing unit is used for determining a first interpolation factor according to the speed of the current newly-increased obstacle in the newly-increased obstacle data, adopting an interpolation algorithm to process the state data of the adjacent data nodes of the newly-increased data nodes and the first interpolation factor to obtain interpolation state data, and taking the interpolation state data as the state data between the adjacent data nodes of the newly-increased data nodes.
According to another aspect of the present application, there is provided a computer readable storage medium including a stored program, wherein the program when run controls a device in which the computer readable storage medium is located to perform any one of the methods.
According to another aspect of the present application, there is provided a vehicle including: one or more processors, memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising instructions for performing any of the methods.
By applying the technical scheme of the application, after a new data node is added behind a tail node of a double-end linked list with the new obstacle number and the state data of the new obstacle in the new obstacle data is stored in the new data node, a first interpolation factor is determined according to the speed of the current new obstacle in the new obstacle data, an interpolation algorithm is adopted to process the state data of the adjacent data node with the new obstacle number and the first interpolation factor to obtain interpolation state data, and the interpolation state data is used as the state data between the adjacent data nodes with the new obstacle number, so that the interpolation state data can be inserted in the final obstacle motion video, namely, the state data of the adjacent data node is smoothed, so that the final obstacle motion video is more smooth.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this specification, illustrate embodiments of the application and together with the description serve to explain the application. In the drawings:
FIG. 1 is a schematic diagram showing the effect of a smoothing algorithm of a prior art scheme on a normally driven vehicle, provided in an embodiment according to the present application;
FIG. 2 shows a schematic diagram of a change in position for a very low velocity obstacle (e.g., an obstacle having a velocity less than 5 m/s) provided in an embodiment in accordance with the application;
Fig. 3 is a flow chart schematically illustrating a method for processing obstacle data according to an embodiment of the present application;
fig. 4 shows a block diagram of a processing apparatus for obstacle data according to an embodiment of the present application.
Detailed Description
It should be noted that, without conflict, the embodiments of the present application and features of the embodiments may be combined with each other. The application will be described in detail below with reference to the drawings in connection with embodiments.
In order that those skilled in the art will better understand the present application, a technical solution in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in which it is apparent that the described embodiments are only some embodiments of the present application, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present application without making any inventive effort, shall fall within the scope of the present application.
It should be noted that the terms "first," "second," and the like in the description and the claims of the present application and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate in order to describe the embodiments of the application herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
As described in the background, for very low speed obstacles (e.g., obstacles with a speed of less than 5 m/s), the data collected by the perception module may exhibit such a feature: in the case that the change of the position orientation state is small (T1 to T2) within a time period and then the position orientation state is suddenly changed at a certain moment (T3), the smooth algorithm of the existing scheme cannot obtain a very smooth effect, the problem that the smooth algorithm of the existing scheme is relatively stuck is poor in effect on very low-speed obstacles (such as obstacles with the speed of less than 5 m/s) is solved, and the embodiment of the application provides a method, a device, a storage medium and a vehicle for processing obstacle data.
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention.
In the present embodiment, a method of processing obstacle data is provided, and it is to be noted that the steps shown in the flowcharts of the drawings may be executed in a computer system such as a set of computer executable instructions, and that although a logical order is shown in the flowcharts, in some cases, the steps shown or described may be executed in an order different from that herein.
Fig. 3 is a flowchart of a method for processing obstacle data according to an embodiment of the present application. As shown in fig. 3, the method comprises the steps of:
Step S301, obtaining an obstacle data list, wherein the obstacle data list comprises state data corresponding to a plurality of obstacles at each moment, each state data comprises an obstacle number and a double-end linked list, the double-end linked list is used for representing the state data of the obstacle corresponding to the obstacle number at each moment, and the state data comprises the direction and the position of the obstacle;
Step S302, when newly-increased obstacle data is acquired, and the newly-increased obstacle number in the newly-increased obstacle data is the same as one obstacle number in the obstacle data list, adding a newly-increased data node behind a tail node of a double-end linked list of the newly-increased obstacle number, and storing state data of the newly-increased obstacle in the newly-increased obstacle data into the newly-increased data node;
When new obstacle data is acquired, and the number of the new obstacle in the new obstacle data is different from all the obstacle numbers in the obstacle data list, a new obstacle number needs to be created, and a new double-end linked list is created for the new obstacle number.
Step S303, determining a first interpolation factor according to the speed of the current newly-increased obstacle in the newly-increased obstacle data, adopting an interpolation algorithm to process the state data of the adjacent data nodes of the newly-increased data nodes and the first interpolation factor to obtain interpolation state data, and taking the interpolation state data as the state data between the adjacent data nodes of the newly-increased data nodes.
And processing the state data of the adjacent data nodes to the newly added data node and the first interpolation factor by adopting an interpolation algorithm, obtaining interpolation state data, and then adopting a current time stamp judging method to enable the final video to be more smooth by smoothing the state data of the adjacent nodes.
In the above steps, a new data node is added at the back of the tail node of the double-end linked list of the new obstacle number, after the state data of the new obstacle in the new obstacle data is stored in the new data node, a first interpolation factor is determined according to the speed of the current new obstacle in the new obstacle data, an interpolation algorithm is adopted to process the state data of the adjacent data node of the new obstacle node and the first interpolation factor, so as to obtain interpolation state data, the interpolation state data is used as the state data between the adjacent data nodes of the new obstacle node, so that the interpolation state data can be inserted in the final obstacle motion video, namely, the state data of the adjacent data node is smoothed, so that the final obstacle motion video is more smooth.
In step S303, determining a first interpolation factor according to the speed of the current newly-added obstacle in the newly-added obstacle data includes:
Interpolation is performed using a linear interpolation algorithm: determining the first interpolation factor according to factor 1=clamp (SmoothStep (0, maxSpeed, speed), λ, 1);
wherein factor1 is the first interpolation factor, clamp (SmoothStep (0, maxSpeed, speed), λ, 1) is used to limit SmoothStep (0, maxSpeed, speed) to [ λ,1], smoothStep is a smooth step function, and is used to generate a smooth transition value from 0 to 1, maxSpeed is a speed threshold, which may be 5m/s, speed is the speed of the current newly added obstacle in the newly added obstacle data, λ is a preset value, and λ < 1.
Specifically, in the case that SmoothStep (0, maxSpeed, speed) is smaller than λ, determining the first interpolation factor as λ, where λ may be 0.2, so as to achieve the objective of limiting the first interpolation factor to a range of [ λ,1 ];
In the case that SmoothStep (0, maxSpeed, speed) is greater than 1, determining that the first interpolation factor is 1, thereby achieving the purpose of limiting the first interpolation factor to be within the range of [ lambda, 1 ];
In the case that SmoothStep (0, maxSpeed, speed) is in the range of [ lambda, 1], the first interpolation factor is determined to be SmoothStep (0, maxSpeed, speed), thereby achieving the purpose of limiting the first interpolation factor to the range of [ lambda, 1 ].
In one embodiment of the present application, the method further includes:
When it is determined that the first interpolation factor is 1, it is determined that interpolation processing is not performed between data nodes adjacent to the newly added data node.
Specifically, in the case where the above-mentioned first interpolation factor is determined to be 1, it is determined that the speed of the obstacle exceeds 5m/s (i.e., maxSpeed is exceeded), and in this case, the judgment is made using the current time stamp.
In step S303, an interpolation algorithm is adopted to process the state data of the data node adjacent to the newly added data node and the first interpolation factor to obtain interpolation state data, which includes:
And determining the interpolation state data according to a smoth_ pose = Lerp (min_node.post, max_node.post, factor), wherein smoth_ pose is the interpolation state data, lerp is used for limiting the interpolation state data between the state data of the adjacent data nodes of the newly added data node, and min_node.post and max_node.post are the state data of the adjacent data nodes of the newly added data node respectively.
Specifically, by limiting the interpolation state data to the state data of the adjacent data node to the newly added data node, the state data of the adjacent data node can be smoothed.
In one embodiment of the present application, the method further includes (i.e., a method of determining using the current timestamp): when the current time stamp is smaller than the first time stamp, determining that the position of the target state data in the obstacle moving video is positioned before a head node of a double-ended linked list corresponding to the target obstacle number in the obstacle data list, wherein the first time stamp is a time stamp stored in the head node of the double-ended linked list corresponding to the target obstacle number in the obstacle data list, the current time stamp is the current moment of the real time, and the target state data is the state data of the obstacle corresponding to the target obstacle number in the current time stamp; when the current time stamp is greater than a second time stamp, determining that the position of the target state data in the obstacle movement video is located behind a tail node of a double-end linked list corresponding to the target obstacle number in the obstacle data list, wherein the second time stamp is a time stamp stored in the tail node of the double-end linked list corresponding to the target obstacle number in the obstacle data list; and when the current time stamp is greater than or equal to the first time stamp and the current time stamp is less than or equal to the second time stamp, determining a second interpolation factor according to the current time stamp and the time stamp of the data node adjacent to the current time stamp in the double-end linked list of the obstacle data list, and adopting an interpolation algorithm to process the second interpolation factor and the state data model of the data node adjacent to the current time stamp in the double-end linked list of the obstacle data list to obtain target state data, wherein the target state data is the state data of the obstacle corresponding to the target obstacle number at the current time stamp.
Specifically, when marking the position of the obstacle in the obstacle moving video, considering where the current timestamp is located in the double-ended linked list, and if the current timestamp is smaller than the first timestamp, determining that the target state data should be located in front of the head node of the double-ended linked list, because the target state data is located in front of the head node of the double-ended linked list in time sequence, determining that the position of the target state data in the obstacle moving video is located in front of the head node of the double-ended linked list corresponding to the target obstacle number in the obstacle data list, and presenting the state data of the target obstacle in the video by using the state data of the head node of the double-ended linked list when the current timestamp;
Under the condition that the current time stamp is larger than the second time stamp, the target state data is supposed to be located behind the tail node of the double-ended linked list, because the target state data is located behind the tail node of the double-ended linked list in time sequence, the position of the target state data in the obstacle moving video is required to be determined to be located behind the tail node of the double-ended linked list corresponding to the target obstacle number in the obstacle data list, and the state data of the target obstacle at the current time stamp is presented in the video by using the state data of the tail node of the double-ended linked list;
When the current time stamp is greater than or equal to the first time stamp and the current time stamp is less than or equal to the second time stamp, the target state data needs to be limited between the state data of adjacent nodes by means of a smoothing algorithm, so that the final video is smoother.
Specifically, determining a second interpolation factor according to the current timestamp and a timestamp of a data node adjacent to the current timestamp in a double-ended linked list of the obstacle data list, including:
And determining the second interpolation factor according to factor 2= ((cur_timestamp-min_node. Timestamp)/(max_node. Timestamp-min_node. Timestamp)), wherein factor2 is the second interpolation factor, cur_timestamp is the current timestamp, min_node. Timestamp is the timestamp of the former data node in the double-end linked list of the obstacle data list adjacent to the current timestamp, and max_node. Timestamp is the timestamp of the latter data node in the double-end linked list of the obstacle data list adjacent to the current timestamp.
The target state data is obtained by adding the data node adjacent to the current timestamp in the double-end linked list of the obstacle data list to consider the second interpolation factor, so that the following is the same as the first interpolation factor, and mooth _ pose = Lerp (min_node.post, max_node.post, factor) is also used to obtain the target state data, which is not described herein.
It should be noted that the steps illustrated in the flowcharts of the figures may be performed in a computer system such as a set of computer executable instructions, and that although a logical order is illustrated in the flowcharts, in some cases the steps illustrated or described may be performed in an order other than that illustrated herein.
The embodiment of the application also provides a processing device for the obstacle data, and the processing device for the obstacle data can be used for executing the processing method for the obstacle data provided by the embodiment of the application. The device is used for realizing the above embodiments and preferred embodiments, and is not described in detail. As used below, the term "module" may be a combination of software and/or hardware that implements a predetermined function. While the means described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware, is also possible and contemplated.
The following describes a processing device for obstacle data provided by an embodiment of the present application.
Fig. 4 is a block diagram of a processing apparatus for obstacle data according to an embodiment of the present application. As shown in fig. 4, the apparatus includes:
An obtaining unit 41, configured to obtain an obstacle data list, where the obstacle data list includes state data corresponding to a plurality of obstacles at each time, each of the state data includes an obstacle number and a double-linked list, the double-linked list is used to characterize the state data of the obstacle corresponding to the obstacle number at each time, and the state data includes an orientation and a position of the obstacle;
A first processing unit 42, configured to, when new obstacle data is acquired, and a new obstacle number in the new obstacle data is the same as one obstacle number in the obstacle data list, add a new data node to a rear of a tail node of a double linked list of the new obstacle number, and store state data of the new obstacle in the new obstacle data into the new data node;
A second processing unit 43, configured to determine a first interpolation factor according to a speed of a current newly-increased obstacle in the newly-increased obstacle data, and process, by using an interpolation algorithm, state data of a data node adjacent to the newly-increased data node and the first interpolation factor to obtain interpolation state data, and use the interpolation state data as state data between the adjacent data nodes.
In the device, a new data node is added behind a tail node of a double-end linked list of the new obstacle number, the state data of the new obstacle in the new obstacle data is stored in the new data node, a first interpolation factor is determined according to the speed of the current new obstacle in the new obstacle data, an interpolation algorithm is adopted to process the state data of the adjacent data node of the new obstacle number and the first interpolation factor, interpolation state data is obtained, the interpolation state data is used as the state data between the adjacent data nodes of the new obstacle number, so that the interpolation state data can be inserted into a final obstacle motion video, namely, the state data of the adjacent data node is smoothed, the final obstacle motion video is enabled to be more smooth, compared with the prior art, the effect of a smoothing algorithm is improved, the method mainly aims at the problem that the prior art is poor in the effect of the smoothing algorithm on the very low-speed obstacle (for example, the obstacle with the speed being smaller than 5 m/s).
In one embodiment of the application, the second processing unit comprises a first processing module;
the first processing module is configured to determine the first interpolation factor according to factor 1=clamp (SmoothStep (0, maxSpeed, speed), λ, 1);
Wherein factor1 is the first interpolation factor, clamp (SmoothStep (0, maxSpeed, speed), λ, 1) is used to limit SmoothStep (0, maxSpeed, speed) to [ λ,1], smoothStep is a smooth step function, maxSpeed is a speed threshold, speed is the speed of the current newly added obstacle in the newly added obstacle data, λ is a preset value, and λ < 1.
In one embodiment of the application, the first processing module comprises a first processing sub-module, a second processing sub-module and a third processing sub-module,
The first processing sub-module is configured to determine that the first interpolation factor is λ when SmoothStep (0, maxSpeed, speed) is less than λ;
the second processing sub-module is configured to determine that the first interpolation factor is 1 if SmoothStep (0, maxSpeed, speed) is greater than 1;
The third processing sub-module is configured to determine the first interpolation factor as SmoothStep (0, maxSpeed, speed) when SmoothStep (0, maxSpeed, speed) is within [ lambda, 1 ].
In one embodiment of the application, the apparatus further comprises a third processing unit,
And the third processing unit is used for determining that interpolation processing is not performed between the adjacent data nodes of the newly added data node when the first interpolation factor is 1.
In one embodiment of the application, the second processing unit comprises a second processing module,
The second processing module is configured to determine the interpolation state data according to a size_ pose = Lerp (min_node, max_node, and the factor), where size_ pose is the interpolation state data, lerp is configured to limit the interpolation state data between the state data of the data node adjacent to the newly added data node, and min_node and max_node are the state data of the data node adjacent to the newly added data node, respectively.
In an embodiment of the present application, the apparatus further includes a fourth processing unit, a fifth processing unit, and a sixth processing unit, where the fourth processing unit is configured to determine that, when a current time stamp is smaller than a first time stamp, a position of the target state data in the obstacle motion video is located before a head node of a double-ended linked list corresponding to a target obstacle number in the obstacle data list, the first time stamp is a time stamp stored in the head node of the double-ended linked list corresponding to the target obstacle number in the obstacle data list, the current time stamp is a current time of a real time, and the target state data is state data of the obstacle corresponding to the target obstacle number in the current time stamp; the fifth processing unit is configured to determine, when the current timestamp is greater than a second timestamp, that a position of the target state data in the obstacle motion video is located after a tail node of a double-ended linked list corresponding to a target obstacle number in the obstacle data list, where the second timestamp is a timestamp stored in a tail node of the double-ended linked list corresponding to the target obstacle number in the obstacle data list; and the sixth processing unit is used for determining a second interpolation factor according to the current timestamp and the timestamp of a data node adjacent to the current timestamp in the double-end linked list of the obstacle data list when the current timestamp is larger than or equal to the first timestamp and the current timestamp is smaller than or equal to the second timestamp, adopting an interpolation algorithm to process the second interpolation factor and the state data model of the data node adjacent to the current timestamp in the double-end linked list of the obstacle data list to obtain target state data, wherein the target state data is the state data of the obstacle corresponding to the target obstacle number at the current timestamp.
In one embodiment of the application, the sixth processing unit comprises a third processing module,
The third processing module is configured to determine the second interpolation factor according to factor 2= ((cur_timestamp-min_node. Timestamp)/(max_node. Timestamp-min_node. Timestamp)), where factor2 is the second interpolation factor, cur_timestamp is the current timestamp, min_node. Timestamp is a timestamp of a preceding data node in the double-end linked list of the obstacle data list adjacent to the current timestamp, and max_node. Timestamp is a timestamp of a following data node in the double-end linked list of the obstacle data list adjacent to the current timestamp.
The processing device of the obstacle data comprises a processor and a memory, wherein the acquisition unit, the first processing unit, the second processing unit and the like are all stored in the memory as program units, and the processor executes the program units stored in the memory to realize corresponding functions. The modules are all located in the same processor; or the above modules may be located in different processors in any combination.
The processor includes a kernel, and the kernel fetches the corresponding program unit from the memory. The kernel may be provided with one or more kernel parameters to solve the problem of poor effect of the existing solution on smoothing algorithms for very low speed obstacles (e.g. obstacles with a speed of less than 5 m/s).
The memory may include volatile memory, random Access Memory (RAM), and/or nonvolatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM), among other forms in computer readable media, the memory including at least one memory chip.
The embodiment of the invention provides a computer readable storage medium, which comprises a stored program, wherein the program is used for controlling a device where the computer readable storage medium is located to execute a processing method of obstacle data.
The embodiment of the invention provides a processor, which is used for running a program, wherein the processing method of the obstacle data is executed when the program runs.
The embodiment of the invention provides equipment, which comprises a processor, a memory and a program stored in the memory and capable of running on the processor, wherein the processor realizes at least the following steps when executing the program: acquiring an obstacle data list, wherein the obstacle data list comprises state data corresponding to a plurality of obstacles at each moment, each state data comprises an obstacle number and a double-end linked list, the double-end linked list is used for representing the state data of the obstacle corresponding to the obstacle number at each moment, and the state data comprises the direction and the position of the obstacle; when newly-increased obstacle data is acquired, and the newly-increased obstacle number in the newly-increased obstacle data is the same as one obstacle number in the obstacle data list, adding a newly-increased data node behind a tail node of a double-ended linked list of the newly-increased obstacle number, and storing state data of the newly-increased obstacle in the newly-increased obstacle data into the newly-increased data node; determining a first interpolation factor according to the speed of the current newly-increased obstacle in the newly-increased obstacle data, processing the state data of the adjacent data nodes to the newly-increased data node and the first interpolation factor by adopting an interpolation algorithm to obtain interpolation state data, wherein the equipment taking the interpolation state data as the state data between the adjacent data nodes to the newly-increased data node can be a server, a PC, a PAD, a mobile phone and the like.
Optionally, determining the first interpolation factor according to the speed of the current newly-added obstacle in the newly-added obstacle data includes:
Determining the first interpolation factor according to factor 1=clamp (SmoothStep (0, maxSpeed, speed), λ, 1);
Wherein factor1 is the first interpolation factor, clamp (SmoothStep (0, maxSpeed, speed), λ, 1) is used to limit SmoothStep (0, maxSpeed, speed) to [ λ,1], smoothStep is a smooth step function, maxSpeed is a speed threshold, speed is the speed of the current newly added obstacle in the newly added obstacle data, λ is a preset value, and λ < 1.
Optionally, determining the first interpolation factor according to factor=clamp (SmoothStep (0, maxSpeed, speed), λ,1 includes:
determining that the first interpolation factor is λ when SmoothStep (0, maxSpeed, speed) is less than λ;
in the case SmoothStep (0, maxSpeed, speed) is greater than 1, determining that the first interpolation factor is 1;
in the case SmoothStep (0, maxSpeed, speed) is in the range of [ lambda, 1], the above first interpolation factor is determined to be SmoothStep (0, maxSpeed, speed).
Optionally, the method further comprises:
When it is determined that the first interpolation factor is 1, it is determined that interpolation processing is not performed between data nodes adjacent to the newly added data node.
Optionally, an interpolation algorithm is adopted to process the state data of the data node adjacent to the newly added data node and the first interpolation factor to obtain interpolation state data, which includes:
And determining the interpolation state data according to a smoth_ pose = Lerp (min_node.post, max_node.post, factor), wherein smoth_ pose is the interpolation state data, lerp is used for limiting the interpolation state data between the state data of the adjacent data nodes of the newly added data node, and min_node.post and max_node.post are the state data of the adjacent data nodes of the newly added data node respectively.
Optionally, the method further comprises: when the current time stamp is smaller than the first time stamp, determining that the position of the target state data in the obstacle moving video is positioned before a head node of a double-ended linked list corresponding to the target obstacle number in the obstacle data list, wherein the first time stamp is a time stamp stored in the head node of the double-ended linked list corresponding to the target obstacle number in the obstacle data list, the current time stamp is the current moment of the real time, and the target state data is the state data of the obstacle corresponding to the target obstacle number in the current time stamp; when the current time stamp is greater than a second time stamp, determining that the position of the target state data in the obstacle movement video is located behind a tail node of a double-end linked list corresponding to the target obstacle number in the obstacle data list, wherein the second time stamp is a time stamp stored in the tail node of the double-end linked list corresponding to the target obstacle number in the obstacle data list; and when the current time stamp is greater than or equal to the first time stamp and the current time stamp is less than or equal to the second time stamp, determining a second interpolation factor according to the current time stamp and the time stamp of the data node adjacent to the current time stamp in the double-end linked list of the obstacle data list, and adopting an interpolation algorithm to process the second interpolation factor and the state data model of the data node adjacent to the current time stamp in the double-end linked list of the obstacle data list to obtain target state data, wherein the target state data is the state data of the obstacle corresponding to the target obstacle number at the current time stamp.
Optionally, determining the second interpolation factor according to the current timestamp and a timestamp of a data node adjacent to the current timestamp in a double-end linked list of the obstacle data list includes:
And determining the second interpolation factor according to factor 2= ((cur_timestamp-min_node. Timestamp)/(max_node. Timestamp-min_node. Timestamp)), wherein factor2 is the second interpolation factor, cur_timestamp is the current timestamp, min_node. Timestamp is the timestamp of the former data node in the double-end linked list of the obstacle data list adjacent to the current timestamp, and max_node. Timestamp is the timestamp of the latter data node in the double-end linked list of the obstacle data list adjacent to the current timestamp.
The application also provides a computer program product adapted to perform, when executed on a data processing device, a program initialized with at least the following method steps: acquiring an obstacle data list, wherein the obstacle data list comprises state data corresponding to a plurality of obstacles at each moment, each state data comprises an obstacle number and a double-end linked list, the double-end linked list is used for representing the state data of the obstacle corresponding to the obstacle number at each moment, and the state data comprises the direction and the position of the obstacle; when newly-increased obstacle data is acquired, and the newly-increased obstacle number in the newly-increased obstacle data is the same as one obstacle number in the obstacle data list, adding a newly-increased data node behind a tail node of a double-ended linked list of the newly-increased obstacle number, and storing state data of the newly-increased obstacle in the newly-increased obstacle data into the newly-increased data node; determining a first interpolation factor according to the speed of the current newly-increased obstacle in the newly-increased obstacle data, adopting an interpolation algorithm to process the state data of the adjacent data nodes of the newly-increased data nodes and the first interpolation factor to obtain interpolation state data, and taking the interpolation state data as the state data between the adjacent data nodes of the newly-increased data nodes.
Optionally, determining the first interpolation factor according to the speed of the current newly-added obstacle in the newly-added obstacle data includes:
Determining the first interpolation factor according to factor 1=clamp (SmoothStep (0, maxSpeed, speed), λ, 1);
Wherein factor1 is the first interpolation factor, clamp (SmoothStep (0, maxSpeed, speed), λ, 1) is used to limit SmoothStep (0, maxSpeed, speed) to [ λ,1], smoothStep is a smooth step function, maxSpeed is a speed threshold, speed is the speed of the current newly added obstacle in the newly added obstacle data, λ is a preset value, and λ < 1.
Optionally, determining the first interpolation factor according to factor=clamp (SmoothStep (0, maxSpeed, speed), λ,1 includes:
determining that the first interpolation factor is λ when SmoothStep (0, maxSpeed, speed) is less than λ;
in the case SmoothStep (0, maxSpeed, speed) is greater than 1, determining that the first interpolation factor is 1;
in the case SmoothStep (0, maxSpeed, speed) is in the range of [ lambda, 1], the above first interpolation factor is determined to be SmoothStep (0, maxSpeed, speed).
Optionally, the method further comprises:
When it is determined that the first interpolation factor is 1, it is determined that interpolation processing is not performed between data nodes adjacent to the newly added data node.
Optionally, an interpolation algorithm is adopted to process the state data of the data node adjacent to the newly added data node and the first interpolation factor to obtain interpolation state data, which includes:
And determining the interpolation state data according to a smoth_ pose = Lerp (min_node.post, max_node.post, factor), wherein smoth_ pose is the interpolation state data, lerp is used for limiting the interpolation state data between the state data of the adjacent data nodes of the newly added data node, and min_node.post and max_node.post are the state data of the adjacent data nodes of the newly added data node respectively.
Optionally, the method further comprises: when the current time stamp is smaller than the first time stamp, determining that the position of the target state data in the obstacle moving video is positioned before a head node of a double-ended linked list corresponding to the target obstacle number in the obstacle data list, wherein the first time stamp is a time stamp stored in the head node of the double-ended linked list corresponding to the target obstacle number in the obstacle data list, the current time stamp is the current moment of the real time, and the target state data is the state data of the obstacle corresponding to the target obstacle number in the current time stamp; when the current time stamp is greater than a second time stamp, determining that the position of the target state data in the obstacle movement video is located behind a tail node of a double-end linked list corresponding to the target obstacle number in the obstacle data list, wherein the second time stamp is a time stamp stored in the tail node of the double-end linked list corresponding to the target obstacle number in the obstacle data list; and when the current time stamp is greater than or equal to the first time stamp and the current time stamp is less than or equal to the second time stamp, determining a second interpolation factor according to the current time stamp and the time stamp of the data node adjacent to the current time stamp in the double-end linked list of the obstacle data list, and adopting an interpolation algorithm to process the second interpolation factor and the state data model of the data node adjacent to the current time stamp in the double-end linked list of the obstacle data list to obtain target state data, wherein the target state data is the state data of the obstacle corresponding to the target obstacle number at the current time stamp.
Optionally, determining the second interpolation factor according to the current timestamp and a timestamp of a data node adjacent to the current timestamp in a double-end linked list of the obstacle data list includes:
And determining the second interpolation factor according to factor 2= ((cur_timestamp-min_node. Timestamp)/(max_node. Timestamp-min_node. Timestamp)), wherein factor2 is the second interpolation factor, cur_timestamp is the current timestamp, min_node. Timestamp is the timestamp of the former data node in the double-end linked list of the obstacle data list adjacent to the current timestamp, and max_node. Timestamp is the timestamp of the latter data node in the double-end linked list of the obstacle data list adjacent to the current timestamp.
The application also provides a vehicle comprising: one or more processors, memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising instructions for performing any of the methods described above.
It will be appreciated by those skilled in the art that the modules or steps of the invention described above may be implemented in a general purpose computing device, they may be concentrated on a single computing device, or distributed across a network of computing devices, they may be implemented in program code executable by computing devices, so that they may be stored in a storage device for execution by computing devices, and in some cases, the steps shown or described may be performed in a different order than that shown or described herein, or they may be separately fabricated into individual integrated circuit modules, or multiple modules or steps of them may be fabricated into a single integrated circuit module. Thus, the present invention is not limited to any specific combination of hardware and software.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In one typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include volatile memory in a computer-readable medium, random Access Memory (RAM) and/or nonvolatile memory, etc., such as Read Only Memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.
Computer readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of storage media for a computer include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital Versatile Disks (DVD) or other optical storage, magnetic cassettes, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium which can be used to store information that can be accessed by a computing device. Computer-readable media, as defined herein, does not include transitory computer-readable media (transmission media), such as modulated data signals and carrier waves.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises an element.
From the above description, it can be seen that the above embodiments of the present application achieve the following technical effects:
1) According to the method for processing the obstacle data, after a new data node is added behind a tail node of a double-end linked list of the new obstacle number, the state data of the new obstacle in the new obstacle data is stored in the new data node, a first interpolation factor is determined according to the speed of the current new obstacle in the new obstacle data, an interpolation algorithm is adopted to process the state data of the adjacent data node of the new obstacle data and the first interpolation factor to obtain interpolation state data, the interpolation state data is used as the state data between the adjacent data nodes of the new data node, so that the interpolation state data can be inserted into a final obstacle motion video, namely, the state data of the adjacent data node is smoothed, the final obstacle motion video is enabled to be more smooth, compared with the prior art, the effect of the smoothing algorithm is improved, the method mainly aims at the very low-speed obstacle (for example, the speed is smaller than 5m/s of the obstacle), and further solves the poor effect of the prior art for the very low-speed obstacle (for example, the speed is smaller than 5m/s of the smoothing algorithm).
2) According to the obstacle data processing device, after a new data node is added behind a tail node of a double-end linked list of the new obstacle number, state data of the new obstacle in the new obstacle data is stored in the new data node, a first interpolation factor is determined according to the speed of the current new obstacle in the new obstacle data, an interpolation algorithm is adopted to process the state data of the adjacent data node of the new obstacle data and the first interpolation factor to obtain interpolation state data, the interpolation state data is used as the state data between the adjacent data nodes of the new obstacle number, so that the interpolation state data can be inserted into a final obstacle motion video, namely, the state data of the adjacent data node is smoothed, the final obstacle motion video is enabled to be more smooth, compared with the prior art, the effect of the smoothing algorithm is improved, the method mainly aims at the very low-speed obstacle (for example, the obstacle with the speed being smaller than 5 m/s), and further solves the poor effect of the prior art with respect to the very low-speed obstacle (for example, the obstacle with the speed being smaller than 5 m/s).
The above description is only of the preferred embodiments of the present application and is not intended to limit the present application, but various modifications and variations can be made to the present application by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the protection scope of the present application.
Claims (10)
1. A method of processing obstacle data, comprising:
Acquiring an obstacle data list, wherein the obstacle data list comprises state data corresponding to a plurality of obstacles at each moment, each state data comprises an obstacle number and a double-end linked list, the double-end linked list is used for representing the state data of the obstacle corresponding to the obstacle number at each moment, and the state data comprises the orientation and the position of the obstacle;
When newly-increased obstacle data is acquired, and the newly-increased obstacle number in the newly-increased obstacle data is the same as one obstacle number in the obstacle data list, adding a newly-increased data node behind a tail node of a double-end linked list of the newly-increased obstacle number, and storing state data of the newly-increased obstacle in the newly-increased obstacle data into the newly-increased data node;
Determining a first interpolation factor according to the speed of the current newly-increased obstacle in the newly-increased obstacle data, adopting an interpolation algorithm to process the state data of the adjacent data nodes of the newly-increased data nodes and the first interpolation factor to obtain interpolation state data, and taking the interpolation state data as the state data between the adjacent data nodes of the newly-increased data nodes.
2. The method of claim 1, wherein determining a first interpolation factor based on a speed of a current newly-added obstacle in the newly-added obstacle data comprises:
Determining the first interpolation factor according to factor 1 = Clamp (SmoothStep (0, maxSpeed, speed), λ, 1);
Wherein factor1 is the first interpolation factor, clamp (SmoothStep (0, maxSpeed, speed), λ, 1) is used to limit SmoothStep (0, maxSpeed, speed) to [ λ,1], smoothStep is a smooth step function, maxSpeed is a speed threshold, speed is a speed of a current newly added obstacle in the newly added obstacle data, λ is a preset value, and λ < 1.
3. The method of claim 2, wherein determining the first interpolation factor based on factor = Clamp (SmoothStep (0, maxSpeed, speed), λ, 1) comprises:
Determining that the first interpolation factor is λ if SmoothStep (0, maxSpeed, speed) is less than λ;
in the case SmoothStep (0, maxSpeed, speed) is greater than 1, determining that the first interpolation factor is 1;
In the case SmoothStep (0, maxSpeed, speed) is in the range of [ lambda, 1], the first interpolation factor is determined to be SmoothStep (0, maxSpeed, speed).
4. The method according to claim 2, wherein the method further comprises:
And under the condition that the first interpolation factor is 1, determining that interpolation processing is not carried out between adjacent data nodes of the newly added data node.
5. The method of claim 1, wherein processing the state data of the data node adjacent to the newly added data node and the first interpolation factor using an interpolation algorithm to obtain interpolated state data comprises:
And determining the interpolation state data according to the fact that the sm_ pose = Lerp (min_node.post, max_node.post, factor), wherein the sm_ pose is the interpolation state data, lerp is used for limiting the interpolation state data between the state data of the adjacent data nodes of the newly added data node, and the min_node.post and the max_node.post are the state data of the adjacent data nodes of the newly added data node respectively.
6. The method according to claim 1, wherein the method further comprises:
Under the condition that the current time stamp is smaller than a first time stamp, determining that the position of target state data in an obstacle moving video is located before a head node of a double-ended linked list corresponding to a target obstacle number in the obstacle data list, wherein the first time stamp is a time stamp stored in the head node of the double-ended linked list corresponding to the target obstacle number in the obstacle data list, the current time stamp is the current moment of real time, and the target state data is the state data of the obstacle corresponding to the target obstacle number in the current time stamp;
Determining that the position of the target state data in the obstacle movement video is located behind a tail node of a double-end linked list corresponding to a target obstacle number in the obstacle data list under the condition that the current timestamp is larger than a second timestamp, wherein the second timestamp is a timestamp stored in the tail node of the double-end linked list corresponding to the target obstacle number in the obstacle data list;
And under the condition that the current time stamp is larger than or equal to the first time stamp and the current time stamp is smaller than or equal to the second time stamp, determining a second interpolation factor according to the current time stamp and the time stamp of a data node adjacent to the current time stamp in a double-end linked list of the obstacle data list, adopting an interpolation algorithm to process the second interpolation factor and a state data model of the data node adjacent to the current time stamp in the double-end linked list of the obstacle data list, and obtaining target state data, wherein the target state data is the state data of the obstacle corresponding to the target obstacle number in the current time stamp.
7. The method of claim 6, wherein determining a second interpolation factor based on the current timestamp and a timestamp of a data node in a doubly linked list of the obstacle data list that is adjacent to the current timestamp comprises:
and determining the second interpolation factor according to factor 2= ((cur_timestamp-min_node. Timestamp)/(max_node. Timestamp-min_node. Timestamp)), wherein factor2 is the second interpolation factor, cur_timestamp is the current timestamp, min_node. Timestamp is the timestamp of the former data node in the double-end linked list of the obstacle data list adjacent to the current timestamp, and max_node. Timestamp is the timestamp of the latter data node in the double-end linked list of the obstacle data list adjacent to the current timestamp.
8. An obstacle data processing apparatus, comprising:
An obtaining unit, configured to obtain an obstacle data list, where the obstacle data list includes state data corresponding to a plurality of obstacles at each time, each state data includes an obstacle number and a double-end linked list, and the double-end linked list is used to characterize the state data of the obstacle corresponding to the obstacle number at each time, where the state data includes an orientation and a position of the obstacle;
a first processing unit, configured to, when new obstacle data is acquired, and a new obstacle number in the new obstacle data is the same as one obstacle number in the obstacle data list, add a new data node behind a tail node of a double-end linked list of the new obstacle number, and store state data of the new obstacle in the new obstacle data into the new data node;
And the second processing unit is used for determining a first interpolation factor according to the speed of the current newly-increased obstacle in the newly-increased obstacle data, adopting an interpolation algorithm to process the state data of the adjacent data nodes of the newly-increased data nodes and the first interpolation factor to obtain interpolation state data, and taking the interpolation state data as the state data between the adjacent data nodes of the newly-increased data nodes.
9. A computer readable storage medium, characterized in that the computer readable storage medium comprises a stored program, wherein the program, when run, controls a device in which the computer readable storage medium is located to perform the method of any one of claims 1 to 7.
10. A vehicle, characterized by comprising: one or more processors, memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising instructions for performing the method of any of claims 1-7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410686682.XA CN118279179B (en) | 2024-05-30 | 2024-05-30 | Obstacle data processing method and device, storage medium and vehicle |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410686682.XA CN118279179B (en) | 2024-05-30 | 2024-05-30 | Obstacle data processing method and device, storage medium and vehicle |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118279179A true CN118279179A (en) | 2024-07-02 |
CN118279179B CN118279179B (en) | 2024-10-01 |
Family
ID=91633798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410686682.XA Active CN118279179B (en) | 2024-05-30 | 2024-05-30 | Obstacle data processing method and device, storage medium and vehicle |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118279179B (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105718888A (en) * | 2016-01-22 | 2016-06-29 | 北京中科慧眼科技有限公司 | Obstacle prewarning method and obstacle prewarning device |
US20190317513A1 (en) * | 2018-04-12 | 2019-10-17 | Baidu Usa Llc | Sensor aggregation framework for autonomous driving vehicles |
CN111192327A (en) * | 2020-01-03 | 2020-05-22 | 北京百度网讯科技有限公司 | Method and apparatus for determining obstacle orientation |
KR20210044197A (en) * | 2018-09-04 | 2021-04-22 | 씨드로닉스(주) | Autonomous navigation method using image segmentation |
-
2024
- 2024-05-30 CN CN202410686682.XA patent/CN118279179B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105718888A (en) * | 2016-01-22 | 2016-06-29 | 北京中科慧眼科技有限公司 | Obstacle prewarning method and obstacle prewarning device |
US20190317513A1 (en) * | 2018-04-12 | 2019-10-17 | Baidu Usa Llc | Sensor aggregation framework for autonomous driving vehicles |
KR20210044197A (en) * | 2018-09-04 | 2021-04-22 | 씨드로닉스(주) | Autonomous navigation method using image segmentation |
CN111192327A (en) * | 2020-01-03 | 2020-05-22 | 北京百度网讯科技有限公司 | Method and apparatus for determining obstacle orientation |
Also Published As
Publication number | Publication date |
---|---|
CN118279179B (en) | 2024-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110134124B (en) | Vehicle running control method and device, storage medium and processor | |
CN109683617B (en) | Automatic driving method and device and electronic equipment | |
CN105096375A (en) | Image processing method and apparatus | |
CN116954585A (en) | Industrial digital twin three-dimensional visual scene editing method, device and medium | |
CN117953459B (en) | Perception fusion result acquisition method, readable storage medium and intelligent device | |
CN118279179B (en) | Obstacle data processing method and device, storage medium and vehicle | |
CN114466227A (en) | Video analysis method and device, electronic equipment and storage medium | |
CN111897997A (en) | Data processing method and system based on ROS operating system | |
CN117227707A (en) | Vehicle control method, device, computer equipment and storage medium | |
CN115148028B (en) | Method and device for constructing vehicle drive test scene according to historical data and vehicle | |
CN115620277A (en) | Monocular 3D environment sensing method and device, electronic equipment and storage medium | |
CN114691873A (en) | Semantic processing method and device for automatic driving log data and storage medium | |
CN113553940A (en) | Self-adaptive adjustment security monitoring method and monitoring system | |
CN112025699B (en) | Method and device for determining robot operating parameters and control system of robot | |
CN114973181A (en) | Multi-view BEV (beam steering angle) visual angle environment sensing method, device, equipment and storage medium | |
CN111428886B (en) | Method and device for adaptively updating deep learning model of fault diagnosis | |
CN111147578B (en) | Method and device for preventing curtain animation from jumping | |
CN114648880B (en) | Method for predicting traffic flow, vehicle and readable storage medium | |
CN116912383B (en) | Rendering method and device of three-dimensional model data | |
CN113961343B (en) | Atlas generation method and system | |
CN116437120B (en) | Video framing processing method and device | |
CN113674182B (en) | Image generation method and device | |
CN111314303B (en) | Live broadcast system, and data processing method and device of live broadcast system | |
CN118068721A (en) | Vehicle simulation system and intelligent driving simulation test method using same | |
CN118062053A (en) | Target position correction method and device and electronic equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |