The present invention relates to the field of Internet-of-vehicles technologies, and in particular, to methods and apparatuses for estimating sensor motion state.
A plurality of types of sensors such as radar sensors, ultrasonic sensors, and vision sensors are usually configured in advanced driver assistant systems (ADASs) or autonomous driving (AD) systems, to sense ambient environments and target information. Information obtained by using sensors may be used to implement functions such as classification, recognition, and tracking of ambient environment and objects, and may be further used to implement situation assessment of ambient environment, planning and control, and the like. For example, track information of a tracked target may be used as an input of vehicle planning and control, to improve efficiency and safety. Platforms where the sensors may be installed include in-vehicle systems, ship-borne systems, airborne systems, satellite-borne systems, or the like. Motion of the sensor platforms affects implementation of functions such as classification, recognition, and tracking. Specifically, using the application of an in-vehicle system as an example, a sensor moves along with a vehicle in which the sensor is located, and a target (for example, a target vehicle) in a field of view of the sensor also moves. In this case, after the motion states of the sensor and the target are superimposed onto each other, the motion of the target as observed by the sensor becomes irregular. Using a radar sensor, a sonar sensor, or an ultrasonic sensor as an example, in a scenario shown in
A manner of obtaining the motion state of the sensor includes: (1) Positioning is performed via a global navigation satellite system (GNSS), for example, a global positioning system (GPS) satellite, and the distances between a receiver of the ego-vehicle and a plurality of satellites are measured, so that a specific location of the ego-vehicle can be calculated; and a motion state of the ego-vehicle may be obtained based on specific locations that are at a plurality of consecutive moments. However, the precision of civil GNSSs is low and is usually at the meter scale. Consequently, large errors usually exist in this approach. (2) An inertial measurement unit (IMU) can measure a three-axis attitude angle and a three-axis acceleration of the ego-vehicle, and the IMU estimates a motion state of the ego-vehicle by using the measured acceleration and attitude angle of the ego-vehicle. However, the IMU has a disadvantage of error accumulation and is susceptible to electromagnetic interference. It can be learned that a motion state that is of an ego-vehicle and that is measured by using a conventional technology tend to have large errors, and how to obtain a more accurate motion state of a sensor is a technical problem being studied by a person skilled in the art.
Embodiments of the present invention disclose a motion state estimation method and apparatus, to obtain a more accurate motion state of a first sensor.
According to a first aspect, an embodiment of this application provides a motion state estimation method. The method includes:
obtaining a plurality of pieces of measurement data by using a first sensor, where each of the plurality of pieces of measurement data includes at least velocity measurement information; and
obtaining or determining a motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, where the motion state includes at least a velocity vector of the first sensor.
In the foregoing method, the plurality of pieces of measurement data are obtained by using the first sensor, and the motion state of the first sensor is determined based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object, where the measurement data includes at least the velocity measurement information. When a relative motion occurs between the first sensor and the target reference object, the measurement data of the first sensor may include measurement information of a velocity of the relative motion. Therefore, the motion state of the first sensor may be obtained based on the measurement data corresponding to the target reference object. In addition, usually, the target reference object may be spatially diversely distributed relative to the sensor, and particularly, has different geometric relationships with the first sensor. Therefore, there are different measurement equations between the velocity measurement data and the first sensor, and in particular, the quantity of conditions of a measurement matrix in the measurement equation is reduced. Moreover, a large amount of measurement data corresponding to the target reference object is provided, so that the impact of noise or interference on a motion state estimation is effectively reduced. Therefore, according to the method in the present invention, the measurement data corresponding to the target reference object, in particular, the geometric relationship of the target reference object relative to the sensor and the amount of the measurement data, can be effectively used to reduce impact of a measurement error or interference, so that a higher precision is achieved in this manner of determining the motion state. In addition, according to the method, the motion estimation of the sensor can be obtained by using only single-frame data, so that good real-time performance can be achieved.
With reference to the first aspect, in a first possible implementation of the first aspect, the target reference object is an object that is stationary relative to a reference system.
With reference to the first aspect or any possible implementation of the first aspect, in a second possible implementation of the first aspect, after obtaining the plurality of pieces of measurement data by using a first sensor, where each of the plurality of pieces of measurement data includes at least velocity measurement information, and before obtaining or determining the motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, the method further includes:
determining, from the plurality of pieces of measurement data based on a feature of the target reference object, the measurement data corresponding to the target reference object.
With reference to any one of the first aspect or the foregoing possible implementations of the first aspect, in a third possible implementation of the first aspect, the feature of the target reference object includes a geometric feature and/or a reflectance feature of the target reference object.
With reference to any one of the first aspect or the foregoing possible implementations of the first aspect, in a fourth possible implementation of the first aspect, after obtaining the plurality of pieces of measurement data by using a first sensor, where each of the plurality of pieces of measurement data includes at least velocity measurement information, and before obtaining the motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, the method further includes: determining, from the plurality of pieces of measurement data of the first sensor based on measurement data of a second sensor, the measurement data corresponding to the target reference object.
With reference to any one of the first aspect or the foregoing possible implementations of the first aspect, in a fifth possible implementation of the first aspect, the determining, from the plurality of pieces of measurement data of the first sensor based on data of a second sensor, the measurement data corresponding to the target reference object includes:
mapping the measurement data of the first sensor to a space of the measurement data of the second sensor;
mapping the measurement data of the second sensor to a space of the measurement data of the first sensor; or
mapping the measurement data of the first sensor and the measurement data of the second sensor to a common space; and
determining, by using a space and based on the target reference object determined based on the measurement data of the second sensor, the measurement data that is of the first sensor and that corresponds to the target reference object.
With reference to any one of the first aspect or the foregoing possible implementations of the first aspect, in a sixth possible implementation of the first aspect, the obtaining a motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object includes:
obtaining the motion state of the first sensor through a least squares LS estimation and/or sequential block filtering based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object. It may be understood that the estimation precision of the motion state (for example, a velocity) of the first sensor can be more effectively improved through the LS estimation and/or the sequential filtering estimation.
With reference to any one of the first aspect or the foregoing possible implementations of the first aspect, in a seventh possible implementation of the first aspect, the obtaining the motion state of the first sensor through a least squares LS estimation and/or sequential block filtering based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object includes:
performing sequential filtering based on M radial velocity vectors corresponding to the target reference object and measurement matrices corresponding to the M radial velocity vectors, to obtain a motion estimate of the first sensor, where M≥2, the radial velocity vector includes K radial velocity measured values in the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object, the corresponding measurement matrix includes K directional cosine vectors, and K≥1.
With reference to any one of the first aspect or the foregoing possible implementations of the first aspect, in an eighth possible implementation of the first aspect,
the motion velocity vector of the first sensor is a two-dimensional vector, K=2, and the measurement matrix corresponding to the radial velocity vector is:
where θm,i is an ith piece of azimuth measurement data in an mth group of measurement data of the target reference object, and i=1 or 2; or
the motion velocity vector of the first sensor is a three-dimensional vector, K=3, and the measurement matrix corresponding to the radial velocity vector is:
where θm,i is an ith piece of azimuth measurement data in an mth group of measurement data of the target reference object, ϕm,i is an ith piece of pitch angle measurement data in the mth group of measurement data of the target reference object, and i=1, 2, or 3.
With reference to any one of the first aspect or the foregoing possible implementations of the first aspect, in a ninth possible implementation of the first aspect, a formula for the sequential filtering is:
v
s,m
MMSE
=v
s,m−1
MMSE
+G
m(−{dot over (r)}m,K−Hm,K*vs,m−1MMSE)
G
m
=P
m,1|0
*H
m,K
T*(Hm,K*Pm,1|0*Hm,KT+Rm,K)−1
O
m,1|0
=P
m−1,1|1
P
m,1|1=(1−Gm−1Hm−1,K)Pm,1|0
where vs,mMMSE is a velocity vector estimate of an mth time of filtering, Gm is a gain matrix, {dot over (r)}m,K is an mth radial velocity vector measured value, Rm,K is an mth radial velocity vector measurement error covariance matrix, and m=1, 2, . . . , or M.
According to a second aspect, an embodiment of this application provides a motion state estimation apparatus. The apparatus includes a processor, a memory, and a first sensor, where the memory is configured to store program instructions, and the processor is configured to invoke the program instructions to perform the following operations:
obtaining a plurality of pieces of measurement data by using the first sensor, where each of the plurality of pieces of measurement data includes at least velocity measurement information; and
obtaining a motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, where the motion state includes at least a velocity vector of the first sensor.
In the foregoing apparatus, the plurality of pieces of measurement data are obtained by using the first sensor, and the motion state of the first sensor is obtained based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object, where the measurement data includes at least the velocity measurement information. When a relative motion occurs between the first sensor and the target reference object, the measurement data of the first sensor may include measurement information of a velocity of the relative motion. Therefore, the motion state of the first sensor may be obtained based on the measurement data corresponding to the target reference object. In addition, usually, the target reference object may be spatially diversely distributed relative to the sensor, and particularly, may have different geometric relationships with the first sensor. Therefore, there are different measurement equations between the velocity measurement data and the first sensor, and in particular, the quantity of conditions of a measurement matrix in the measurement equation is reduced. Moreover, a large amount of measurement data corresponding to the target reference object can be provided, so that the impact of noise or interference on a motion state estimation is effectively reduced. Therefore, according to the method in the present invention, the measurement data corresponding to the target reference object, in particular, the geometric relationship of the target reference object relative to the sensor and the amount of the measurement data, can be effectively used to reduce the impact of a measurement error or interference, so that a higher precision is achieved in this manner of determining the motion state. In addition, according to the method, a motion estimation of the sensor can be obtained by using only single-frame data so that good real-time performance can be achieved.
With reference to the second aspect, in a first possible implementation of the second aspect, the target reference object is an object that is stationary relative to a reference system.
With reference to the second aspect or any possible implementation of the second aspect, in a second possible implementation of the second aspect, after obtaining the plurality of pieces of measurement data by using the first sensor, where each of the plurality of pieces of measurement data includes at least velocity measurement information, and before obtaining the motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, the processor is further configured to:
determine, from the plurality of pieces of measurement data based on a feature of the target reference object, the measurement data corresponding to the target reference object.
With reference to any one of the second aspect or the foregoing possible implementations of the second aspect, in a third possible implementation of the second aspect, the feature of the target reference object includes a geometric feature and/or a reflectance feature of the target reference object.
With reference to any one of the second aspect or the foregoing possible implementations of the second aspect, in a fourth possible implementation of the second aspect, after obtaining the plurality of pieces of measurement data by using the first sensor, where each of the plurality of pieces of measurement data includes at least velocity measurement information, and before obtaining the motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, the processor is further configured to:
determine, from the plurality of pieces of measurement data of the first sensor based on measurement data of a second sensor, the measurement data corresponding to the target reference object.
With reference to any one of the second aspect or the foregoing possible implementations of the second aspect, in a fifth possible implementation of the second aspect, the determining, from the plurality of pieces of measurement data of the first sensor based on measurement data of a second sensor, the measurement data corresponding to the target reference object comprises:
mapping the measurement data of the first sensor to a space of the measurement data of the second sensor;
mapping the measurement data of the second sensor to a space of the measurement data of the first sensor; or
mapping the measurement data of the first sensor and the measurement data of the second sensor to a common space; and
determining, by using a space and based on the target reference object determined based on the measurement data of the second sensor, the measurement data that is of the first sensor and that corresponds to the target reference object.
With reference to any one of the second aspect or the foregoing possible implementations of the second aspect, in a sixth possible implementation of the second aspect, the obtaining a motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object comprises:
obtaining the motion state of the first sensor through a least squares LS estimation and/or sequential block filtering based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object. It may be understood that the estimation precision of the motion state (for example, a velocity) of the first sensor can be more effectively improved through the LS estimation and/or the sequential filtering estimation.
With reference to any one of the second aspect or the foregoing possible implementations of the second aspect, in a seventh possible implementation of the second aspect, the obtaining the motion state of the first sensor through a least squares LS estimation and/or sequential block filtering based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object comprises:
performing sequential filtering based on M radial velocity vectors corresponding to the target reference object and measurement matrices corresponding to the M radial velocity vectors, to obtain a motion estimate of the first sensor, where M≥2, the radial velocity vector includes K radial velocity measured values in the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object, the corresponding measurement matrix includes K directional cosine vectors, and K≥1.
With reference to any one of the second aspect or the foregoing possible implementations of the second aspect, in an eighth possible implementation of the second aspect, the motion velocity vector of the first sensor is a two-dimensional vector, K=2, and the measurement matrix corresponding to the radial velocity vector is:
where θm,i is an ith piece of azimuth measurement data in an mth group of measurement data of the target reference object, and i=1 or 2; or
the motion velocity vector of the first sensor is a three-dimensional vector, K=3, and the measurement matrix corresponding to the radial velocity vector is:
where θm,i is an ith piece of azimuth measurement data in an mth group of measurement data of the target reference object, ϕmi is an ith piece of pitch angle measurement data in the mth group of measurement data of the target reference object, and i=1, 2, or 3.
With reference to any one of the second aspect or the foregoing possible implementations of the second aspect, in a ninth possible implementation of the second aspect, a formula for the sequential filtering is:
v
s,m
MMSE
=v
s,m
MMSE
+G
m(−{dot over (r)}m,K−Hm,K*vs,m−1MMSE)
G
m
=P
m,1|0
*H
m,K
T*(Hm,K*Pm,1|0*Hm,KT+Rm,K)−1
P
m,1|0
=P
m−1,1|1
P
m,1|1=(I−Gm−1Hm−1,K)Pm,1|0
where vs,mMMSE is a velocity vector estimate of an mth time of filtering, Gm is a gain matrix, {dot over (r)}m,K is an mth radial velocity vector measured value, Rm,K is an mth radial velocity vector measurement error covariance matrix, and m=1, 2, . . . , or M.
According to a third aspect, an embodiment of this application provides a motion state estimation apparatus, where the apparatus includes all or a part of units configured to perform the method according to any one of the first aspect or the possible implementations of the first aspect.
During implementation of the embodiments of the present invention, the plurality of pieces of measurement data are obtained by using the first sensor, and the motion state of the first sensor is obtained based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object, where the measurement data includes at least the velocity measurement information. When a relative motion occurs between the first sensor and the target reference object, the measurement data of the first sensor may include the measurement information of the velocity of the relative motion. Therefore, the motion state of the first sensor may be obtained based on the measurement data corresponding to the target reference object. In addition, usually, the target reference object may be spatially diversely distributed relative to the sensor, and particularly, may have different geometric relationships with the first sensor. Therefore, there are different measurement equations between the velocity measurement data and the first sensor, and in particular, the quantity of conditions of the measurement matrix in the measurement equation is reduced. Moreover, a large amount of measurement data corresponding to the target reference object is provided so that the impact of noise or interference on the motion state estimation is effectively reduced. Therefore, according to the method in the present invention, the measurement data corresponding to the target reference object, in particular, the geometric relationship of the target reference object relative to the sensor and the amount, can be effectively used to reduce the impact of the measurement error or interference so that a higher precision is achieved in this manner of determining the motion state. In addition, the motion estimation of the sensor can be obtained by using only the single-frame data, so that good real-time performance can be achieved. Further, it may be understood that the estimation precision of the motion state (for example, the velocity) of the first sensor can be more effectively improved through the LS estimation and/or the sequential filtering estimation.
The following describes accompanying drawings used in embodiments of the present invention.
The following describes embodiments of the present invention with reference to accompanying drawings in the embodiments of the present application.
Refer to
The method includes but is not limited to the following steps.
Step S301: Obtain a plurality of pieces of measurement data by using a first sensor, where each of the plurality of pieces of measurement data includes at least velocity measurement information.
Specifically, the first sensor may be a radar sensor, a sonar sensor, an ultrasonic sensor, or a direction-finding sensor having a frequency shift measurement capability, where the direction-finding sensor obtains radial velocity information by measuring a frequency shift of a received signal relative to a known frequency. The first sensor may be an in-vehicle sensor, a ship-borne sensor, an airborne sensor, a satellite-borne sensor, or the like. For example, the sensor may be on a system, for example, a vehicle, a ship, an airplane, or an unmanned aerial vehicle, and is configured to sense an environment or a target. For example, in an assisted driving scenario or an unmanned driving scenario, one or more of the foregoing types of sensors are usually mounted on a vehicle to measure an ambient environment or a state (including a motion state) of an object and use a processing result of measurement data as a reference basis for planning and control, so that the vehicle travels safely and reliably.
It should be further noted that the first sensor herein may include one or more physical sensors. For example, the physical sensors may separately measure an azimuth, a pitch angle, and a radial velocity; or the azimuth angle, the pitch angle, and the radial velocity may be derived from measurement data of the plurality of physical sensors. This is not limited herein.
The measurement data includes at least the velocity measurement information, and the velocity measurement information may be radial velocity measurement information, for example, a radial velocity of an object or a target in the ambient environment relative to the sensor. The measurement data may further include angle measurement information, for example, azimuth and/or pitch angle measurement information of the target relative to the sensor; and may further include distance measurement information of the target relative to the sensor. In addition, the measurement data may further include direction cosine information of the object or the target in the ambient environment relative to the sensor. The measurement data information may alternatively be information transformed from original measurement data of the sensor. For example, the direction cosine information may be obtained from the azimuth and/or pitch angle information of the target relative to the sensor, or may be measured based on a rectangular coordinate location of the target and a distance from the target.
In this embodiment of this application, using the radar sensor or the sonar sensor as an example, the sensor may periodically or aperiodically transmit a signal and obtain the measurement data from a received echo signal. For example, the transmitted signal may be a chirp signal, distance information of the target may be obtained by using a delay of the echo signal, the radial velocity information between the target and the sensor may be obtained by using a phase difference between a plurality of echo signals, and the angle information such as the azimuth and/or pitch angle information of the target relative to the sensor may be obtained by using geometry of a plurality of transmit and/or receive antenna arrays of the sensor. It may be understood that because of the diversity of the object or the target in the ambient environment, the sensor may obtain the plurality of pieces of measurement data for subsequent use.
Step S302: Obtain a motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, where the motion state includes at least a velocity vector of the first sensor.
The target reference object may be an object or a target that is stationary relative to a reference system. Using an in-vehicle sensor or an unmanned aerial vehicle-borne sensor as an example, the reference system may be a geodetic coordinate system or may be an inertial coordinate system that moves at a uniform velocity relative to the ground, and the target reference object may be an object in the ambient environment, for example, a guardrail, a road edge, a lamp pole, or a building. Using a ship-borne sensor as an example, the target reference object may be a surface buoy, a lighthouse, a shore, an island building, or the like. Using a satellite-borne sensor as an example, the target reference object may be a reference object, for example, an airship, that is stationary or moves at a uniform velocity relative to a star or a satellite.
In a first optional solution, the measurement data corresponding to the target reference object may be obtained from the plurality of pieces of measurement data based on a feature of the target reference object.
The feature of the target reference object may be a geometric feature of the target reference object, for example, a curve feature such as a straight line, an arc, or a clothoid, or may be a reflectance feature, for example, a radar cross section (RCS).
Using the radar measurement data in
Using an example in which the Hoff transform is performed to recognize the target reference object having a straight-line geometric feature, a process of obtaining the road edge/guardrail through the Hoff transform is as follows:
A plurality of pieces of radar range measurement data and a plurality of pieces of radar azimuth measurement data are transformed to a Hough transform space according to, for example, the following formula:
ρi=rk*cos (θk−φi)
rk and θk are a kth distance and a kth azimuth that are measured by radar. φi and ρi are Hough transform space parameters. Different values of ρi may be obtained for different values of ρi, and typically, ρi is a discrete value between 0 and π. In addition, it should be noted that, ρi herein is usually obtained by quantizing rkcos (θk−φi).
For a plurality of different pieces of radar measurement data rk and θk, counts or weights of different parameters φi and ρi corresponding to the radar measurement data rk and θk may be accumulated.
Parameters corresponding to one or more peaks are obtained in the Hough transform space. For example:
Parameters φi* and ρi* corresponding to one or more count peaks or weight peaks may be obtained by using the counts or the weights of the different parameters φi and ρi in the Hough transform space, where j=1, 2, . . . , or J, and J is an integer.
The measurement data corresponding to the target reference object is obtained based on the parameters corresponding to the one or more peaks. For example, the following formula is satisfied or approximately satisfied:
ρj*=rk*cos (θk−φj*).
Alternatively, the following inequality is satisfied or approximately satisfied:
|ρj*−rk*cos (θk−φj*)|≤Tρ,
Tρ is a threshold, and may be obtained based on a distance, an azimuth, quantizing intervals of the parameters φi and ρi, or resolution.
The Hough transform may alternatively be performed to identify the target reference object having other geometric features such as an arc or a clothoid. This is not enumerated herein.
In a second optional solution, the measurement data corresponding to the target reference object may alternatively be obtained from the plurality of pieces of measurement data of the first sensor based on measurement data of a second sensor.
Specifically, the second sensor may be a vision sensor, for example, a camera or a camera sensor, or may be an imaging sensor, for example, an infrared sensor or a laser radar sensor.
The second sensor may measure the target reference object within a detection range of the first sensor, where the target reference object includes the ambient environment, an object, a target, or the like.
Specifically, the second sensor and the first sensor may be mounted on a same platform, and the data of the second sensor and the first sensor may be transmitted on the same platform. Alternatively, the second sensor and the first sensor may be mounted on different platforms, and the measurement data is exchanged between the second sensor and the first sensor through a communication channel. For example, the second sensor is mounted on a roadside or on another in-vehicle or airborne system, and sends or receives the measurement data or other assistance information such as transform parameter information through the cloud. For example, the second sensor is a camera or a camera module. The camera or the camera module may be configured to photograph an image or a video within a detection range of the radar sensor, the sonar sensor, or the ultrasonic sensor, where the image or the video may be a partial or an entire image or video within the detection range of the first sensor. The image may be single-frame or multi-frame.
The target reference object may be determined based on the measurement data of the second sensor. For example, the target reference object may be an object that is stationary relative to the reference system.
Optionally, as described above, the reference system may be the ground or the like.
Optionally, the target reference object may be recognized by using a conventional classification or recognition method or a machine learning method, for example, by using a parametric regression method, a support vector machine method, or an image segmentation method. Alternatively, the target reference object in the measurement data such as a video or an image of the second sensor may be recognized through technical means such as artificial intelligence (AI), for example, deep learning (a deep neural network or the like).
Optionally, one or more objects may be designated as the target reference object based on an application scenario of the sensor. For example, one or more of a road edge, a roadside sign, a tree, or a building are designated as the target reference object. A pixel feature of the target reference object may be pre-stored; the measurement data such as the image or the video of the second sensor is searched for a pixel feature that is the same as or similar to the stored pixel feature; and if the pixel feature is found, it is considered that the target reference object exists in the image or the video, and the location of the target reference object in the image or the video is further determined. In short, a feature (including but not limited to the pixel feature) of the target reference object may be stored, and then the target reference object in the foregoing image is found through feature comparison.
The obtaining the measurement data corresponding to the target reference object from the plurality of pieces of measurement data of the first sensor based on measurement data of a second sensor may include:
mapping the measurement data of the first sensor to a space of the measurement data of the second sensor;
mapping the measurement data of the second sensor to a space of the measurement data of the first sensor; or
mapping the measurement data of the first sensor and the measurement data of the second sensor to a common space; and
determining, by using a space and based on the target reference object determined based on the measurement data of the second sensor, the measurement data that is of the first sensor and that corresponds to the target reference object.
Optionally, the space of the measurement data of the first sensor may be a space using a coordinate system of the first sensor as a reference, and the space of the measurement data of the second sensor may be a space using a coordinate system of the second sensor as a reference.
The common space may be a space using, as a reference, a coordinate system of a sensor platform on which the two sensors are located, where for example, the coordinate system may be a vehicle coordinate system, a ship coordinate system, or an airplane coordinate system, or may be a geodetic coordinate system or a coordinate system using a star, a planet, or a satellite as a reference. Optionally, the measurement data of the first sensor and the measurement data of the second sensor are mapped to the common space. Using the vehicle coordinate system as an example, a mounting location of the first sensor, for example, radar, in the vehicle coordinate system and a mounting location of the second sensor, for example, a camera, in the vehicle coordinate system may be first measured and determined in advance, and the measurement data of the first sensor and the measurement data of the second sensor are mapped to the vehicle coordinate system.
The motion state of the sensor may be determined based on the measurement data that is in the plurality of pieces of measurement data of the first sensor and that corresponds to the target reference object.
It should be noted that if the target reference object is an object that is stationary relative to the geodetic coordinate system, because the sensor platform is moving, the target reference object detected by the sensor is moving rather than being stationary relative to the sensor platform or the sensor. It may be understood that, after the measurement data of the target reference object is obtained through separation, a motion state of the target reference object may be obtained or the motion state of the sensor may be equivalently obtained based on the measurement data of the target reference object. An implementation process thereof is described as follows.
The following describes the implementation process by using an example in which the first sensor is the radar and the second sensor is the camera, and specific sensors are not limited herein.
Specifically, the plurality of pieces of measurement data obtained by the radar and the data that is of the target reference object and that is obtained by the camera may be first mapped to a same coordinate space, where the same coordinate space may be a two-dimensional or multi-dimensional coordinate space. Optionally, the plurality of pieces of measurement data obtained by the radar may be mapped to an image coordinate system in which the target reference object obtained by the camera is located, the target reference object obtained by the camera may be mapped to a radar coordinate system in which the plurality of pieces of measurement data obtained by the radar are located, or the plurality of pieces of measurement data obtained by the radar and the target reference object obtained by the camera may be mapped to another common coordinate space. As shown in
Optionally, a projection mapping relation for mapping the measurement data obtained by the radar from the radar coordinate system in which the measurement data is located to the image coordinate system is a formula 1-1.
In the formula 1-1, A is an intrinsic parameter matrix of the camera (or the camera module). A is determined by the camera itself, and is used to determine a mapping relationship from a pixel coordinate system to the image plane coordinate system. B is an extrinsic parameter matrix. B is determined based on a relative location relationship between the camera and the radar, and is used to determine a mapping relationship from the image plane coordinate system to the radar plane coordinate system. z1 is depth-of-field information. (x, y, z) is coordinates in the radar coordinate system (if vertical dimension information is ignored, z=0), and (u, v) is coordinates of the target reference object in the pixel coordinate system.
For example, in a scenario with no distortion, the intrinsic parameter matrix and the extrinsic parameter matrix may be respectively:
f is a focal length, R and T represent relative rotation and a relative offset between the radar coordinate system and the image coordinate system. Further correction may be performed for the scenario with no distortion based on a conventional technology. Details are not further described herein.
Location data measured by the radar is usually in a polar coordinate form or a spherical coordinate form, and may be first transformed into rectangular coordinates and then mapped to the image plane coordinate system according to the formula 1-1. For example, the distance and the azimuth in the foregoing radar data may be transformed into rectangular coordinates x and y, and the distance, the azimuth, and the pitch angle in the foregoing radar measurement data may be transformed into rectangular coordinates x, y, and z.
It may be understood that there may alternatively be other mapping rules that are not enumerated herein.
According to the projection transform 1-1, location measurement data in the foregoing radar measurement data is transformed to the image coordinate system, to obtain a corresponding pixel location (u, v). The pixel location may be used to determine whether the corresponding radar data is radar measurement data of the target reference object.
Specifically, target detection, image segmentation, semantic segmentation, or instance segmentation may be performed on the image or the video through deep learning, so that a mathematical representation of the target reference object can be established, where, for example, the target reference object is represented by a bounding box (Bounding Box). In this way, it may be determined whether a pixel corresponding to the foregoing radar measurement data falls within a pixel point range of the target reference object, in order to determine whether the corresponding radar measurement data corresponds to the target reference object.
In an implementation, a bounding box of the target reference object may be represented by an interval described by using the following F1 inequalities:
A
i
u+b
i
v≤c . . . , where i=1, 2, . . . , or F1 (1-3).
Typically, F1=4. If the pixel (u, v) corresponding to the radar measurement data satisfies the inequalities, the radar measurement data corresponds to the target reference object; otherwise, the radar measurement data does not correspond to the target reference object.
In another implementation, a bounding box of the target reference object may be represented by an interval described by using F2 inequalities:
c
i
≤a
i
u+b
i
v≤d
i, where i=1, 2, . . . , or F2 (1-4)
Typically, F2=2. If the pixel (u, v) corresponding to the radar measurement data satisfies the formula 1-4, the radar measurement data corresponds to the target reference object; otherwise, the radar measurement data does not correspond to the target reference object.
No limitation is imposed herein on specific implementations of the target detection, the image segmentation, the semantic segmentation, the instance segmentation, obtaining the mathematical representation of the target reference object, or determining whether the radar measurement data is data of the target reference object.
Through the foregoing projection mapping, the plurality of pieces of measurement data measured by the radar and the target reference object sensed by the camera are located in the same coordinate space. Therefore, the target reference object may be obtained based on the image or the video through detection, recognition, or segmentation, to effectively determine the radar measurement data corresponding to the target reference object.
The motion state of the first sensor may be determined based on the measurement data corresponding to the target reference object, where the motion state includes at least the velocity vector.
The measurement data of the first sensor includes at least the velocity information, where for example, the velocity information is the radial velocity information. Further, the measurement data may include the azimuth and/or pitch angle information or the direction cosine information.
Specifically, the velocity vector of the first sensor may be obtained through estimation according to the following equation:
−{dot over (r)}kvs−n{dot over (r)} (1-5); or equivalently
{dot over (r)}
k
=h
k
v
T
+n
{dot over (r)} (1-6),
where vs is the velocity vector of the first sensor, vT is a velocity vector of the target reference object, and for the target reference object, vs=vT.
Therefore, the velocity vector vs of the first sensor may be directly obtained according to the formula 1-5; or equivalently, the velocity vector vT of the target reference object is obtained according to the formula 1-6, and the velocity vector vs of the first sensor is obtained according to vs=−vT. The following descriptions use the formula 1-5 as an example, and the velocity vector vs of the first sensor may be equivalently obtained according to the formula 1-6. Details are not further described in this specification.
{dot over (r)}k is a kth piece of radial velocity measurement data, n{dot over (r)} is a corresponding measurement error, an average value of n{dot over (r)} is 0, a variance of n{dot over (r)} is σ{dot over (r)}2, and a value of n{dot over (r)} depends on performance of the first sensor.
Using a two-dimensional velocity vector as an example, vs and hk may be respectively
v
s=[vs,x vs,y]T (1-7), and
h
k=[Λx vy] (1-8)
vs,x and vs,y are two components of the velocity vector of the first sensor, and [ ]T represents transposition of a matrix or a vector. Λx and Λy are direction cosines, and may be directly measured by the first sensor, or may be calculated by using the following formula:
Λx=cos θk and Λy=sin θk (1-9),
where θk is an azimuth; or
Λx=xk/rk and Λy=yk/rk (1-10),
where rk is obtained through distance measurement, or is calculated by using the following formula:
r
k=√{square root over (xk2+yk2)} (1-11).
Using a three-dimensional velocity vector as an example, vs and hk may be respectively
v
s=[vs,x vs,y vs,z]T (1-12), and
hk=[Λx Λy Λz] (1-13).
vs,x, vs,y, and vs,z are three components of the velocity vector of the first sensor, and [ ]T represents transposition of a matrix or a vector. Λx, Λy, and Λz are direction cosines, and may be directly measured by the first sensor, or may be calculated by using the following formula:
Λx=cos ϕkcos θk, Λy=cos ϕksin θk, and Λz=sin ϕk (1-14),
where θk is an azimuth, and ϕk is a pitch angle; or
where rk is obtained through distance measurement, or is calculated by using the following formula:
r
k=√{square root over (xk2+yk2+zk2)} (1-16).
The motion state of the first sensor may be determined according to the foregoing measurement equations and based on the measurement data corresponding to the target reference object. The following describes several optional implementations for ease of understanding.
Specifically, the motion state of the first sensor may be obtained through a least squares (LS) estimation and/or sequential block filtering.
Solution 1: The motion state of the first sensor is obtained through the least squares (LS) estimation.
Specifically, a least squares estimate of the velocity vector of the first sensor may be obtained based on a first radial velocity vector and a measurement matrix corresponding to the first radial velocity vector. Optionally, the least squares estimate of the velocity vector is:
v
s
LS
=−H
N
−1
{dot over (r)}
N
(1-17), or
v
s
LS=−(HN
where vsLS is the least squares estimate of the sensor; or
v
s
RLS=−(Hk
where vsLS is a regularized least squares estimate of the sensor, and R is a positive-semidefinite matrix or a positive-definite matrix, and is used for regularization. For example:
R=α·I (1-20),
where I is a N1-order unit matrix; and α is a nonnegative or normal number, and for example, α=γ·σ{dot over (r)}2 and γ≥0.
The first radial velocity vector {dot over (r)}N
The first radial velocity vector {dot over (r)}N
−{dot over (r)}N
Specifically, the first radial velocity vector {dot over (r)}N
where {dot over (r)}i
Optionally, in an example in which the first sensor obtains azimuth measurement data and radial velocity measurement data, the radial velocity measurement matrix HN
where θi
Optionally, in an example in which the first sensor obtains azimuth measurement data, pitch angle measurement data, and radial velocity measurement data, the radial velocity measurement matrix HN
where θi
are azimuth measured values, ϕi
are pitch angle measured values, and N1≥3.
Similarly, the radial velocity measurement matrix HN
where for the two-dimensional velocity vector, N1≥2; and for the three-dimensional velocity vector, N1≥3. Each component of each direction cosine vector is described above, and details are not further described herein.
In an implementation, selection of θi
or ϕi
should be made so that the intervals among θi
or intervals among ϕi
are as large as possible, and a more precise least squares estimation can be obtained. The selection that makes the intervals among the angles to be as large as possible may make the quantity of conditions of the foregoing measurement matrix as small as possible.
Optionally, each radial velocity component of the radial velocity vector is selected to make the column vectors of the corresponding measurement matrix to be orthogonal to each other as much as possible.
Solution 2: The motion state of the first sensor is obtained through the sequential block filtering.
Specifically, the motion state of the first sensor may be obtained through the sequential block filtering based on M radial velocity vectors and measurement matrices corresponding to the M radial velocity vectors, where a radial velocity vector that corresponds to the target reference object and that is used for each time of sequential block filtering includes K pieces of radial velocity measurement data.
Optionally, an estimation formula used for an mth time of sequential filtering is as follows:
v
s,m
MMSE
=v
s,m−1
MMSE
+G
m(−{dot over (r)}m,K−Hm,K*vs,m−1MMSE), where m=1, 2, . . . , or M (1-23).
Gm is a gain matrix, {dot over (r)}m,K (includes K radial velocity measured values, and Hm,K includes K radial velocity measurement matrices, as described above. For a two-dimensional velocity vector estimation, K≥2; and for a three-dimensional velocity vector estimation, K≥3.
Optionally, the gain matrix may be:
G
m
=P
m,1|0
*H
m,K
T*(Hm,K*Pm,1|0*Hm,KT+Rm,K)−1 (1-24).
Rm,K is a radial velocity vector measurement error covariance matrix, and for example, may be:
Rm,K=σr2*IK (1-25),
P
m,1|1=(I−Gm−1Hm−1,K)Pm,1|0 (1-26), and
P
m,1|0
=P
m−1,1|1 (1-27).
Optionally, in an implementation, an initial estimation and a covariance P0,1|1=P0 of the initial estimation may be obtained based on prior information:
P0=Q (1-28), and
vs,0MMSE=0 (1-29).
Q is a preset velocity estimation covariance matrix.
Solution 3: The motion state of the first sensor is obtained through the least squares and the sequential block filtering.
Specifically, the measurement data that is of the first sensor and that corresponds to the target reference object may be divided into two parts, where the first part of data is used to obtain a least squares estimate of the velocity vector of the first sensor, the second part of data is used to obtain a sequential block filtering estimate of the velocity vector of the first sensor, and the least squares estimate of the velocity vector of the first sensor is used as an initial value of the sequential block filtering.
Optionally, in an implementation, an initial estimation and a covariance P0,1|1=P0 of the initial estimation may be obtained based on the least squares estimation:
P0=PLS (1-30), and
v0MMSE=vLS (1-31),
where PLS=G0RN
Alternatively, an initial estimation and a covariance P0,1|1=P0 of the initial estimation are obtained based on a regularized least squares estimation:
P0=PRLS (1-32), and
v0MMSE=vRLS (1-33),
where PRLS=G0RN
vs,mMMSE is an mth sequential block filtering value of a velocity of the sensor, and IK is a K×K unit matrix.
Optionally, for different m, {dot over (r)}m,K may be different from each other, and Hm,K may be different from each other. For different m, values of K may be the same or may be different, and may be selected based on different cases. The sequential filtering estimation can effectively reduce the impact of measurement noise, to improve the precision of a sensor estimation.
It should be noted that, a motion velocity of the target reference object may be first obtained, and a motion velocity of the sensor is obtained according to the following relationship:
v
s
LS
=−v
T
LS (1-34),
v
T
LS
=H
N
−1
{dot over (r)}
N
(1-35), or
v
T
LS=(HN
where vTLS is a least squares estimate of the velocity of the target reference object; or
v
s
RLS
=−v
T
RLS (1-37),
v
T
RLS=(HN
where vTLS is a regularized least squares estimate of the velocity of the target reference object; or
v
s
MMSE
=−v
T,M
MMSE (1-39),
v
T,m
MMSE
=v
T,m−1
MMSE
+G
m({dot over (r)}m,K−Hm,K*vT,m−1MMSE), where m=1, 2, . . . , or M (1-40),
where Gm, {dot over (r)}m,K, Hm,K, and Pm−1 are as described above.
Using azimuth measurement and radial velocity measurement performed by the sensor and K=2 as an example, an mth second radial velocity vector is represented by {dot over (r)}m,K=[{dot over (r)}m,1 {dot over (r)}m,2]T, where {dot over (r)}m,1 and {dot over (r)}m,2 are the first and the second pieces of radial velocity measurement data in an mth group of measurement data of the target reference object, and a measurement matrix corresponding to {dot over (r)}m,1 and {dot over (r)}m,2 is:
θm,i is an ith piece of azimuth measurement data in the mth group of measurement data of the target reference object, where i=1 or 2.
Similarly, using azimuth measurement, pitch angle measurement, and radial velocity measurement performed by the sensor and K=3 as an example, an mth second radial velocity vector is represented by {dot over (r)}m,K=[{dot over (r)}m,1 {dot over (r)}m,2 {dot over (r)}m,3]T , where {dot over (r)}3m,i is an ith piece of radial velocity measurement data in an mth group of measurement data of the target reference object, where i=1, 2, or 3, and a measurement matrix corresponding to {dot over (r)}3m,i is:
θm,i is an ith piece of azimuth measurement data in the mth group of measurement data of the target reference object, where i=1, 2, or 3, and ϕm,i is an ith piece of pitch angle measurement data in the mth group of measurement data of the target reference object, where i=1, 2, or 3.
In an implementation, M groups of measurement data should be selected to enable a quantity of conditions of a measurement matrix corresponding to each group of measurement data to be as small as possible.
In an implementation, θm,i, or θm,i and ϕm,i should be selected to enable column vectors of a corresponding measurement matrix to be orthogonal to each other as much as possible, where for θm,i, i=1 or 2; and for θm,i and ϕm,i, i=1, 2, or 3.
Optionally, the motion state of the first sensor may further include a location of the first sensor in addition to the velocity vector of the first sensor. For example, the location of the first sensor may be obtained based on the motion velocity and a time interval and with reference to a specified time start point.
After the motion state of the first sensor is obtained, various types of control may be performed based on the motion state, and specific control to be performed is not limited herein.
Optionally, the motion velocity estimation of the first sensor may be provided as a motion velocity estimation of another sensor. The other sensor is a sensor located on a same platform as the first sensor, for example, a camera, a vision sensor, or an imaging sensor mounted on a same vehicle as the radar/sonar/ultrasonic sensor. In this way, an effective velocity estimation is provided for the other sensor.
Optionally, a motion state of a target object may be compensated for based on the motion state of the first sensor, to obtain a motion state of the target object relative to the geodetic coordinate system. In this embodiment of this application, the target object may be a detected vehicle, obstacle, person, or animal, or another object that is detected.
As shown in
The foregoing describes measurement of the motion state of the first sensor. Actually, another component (for example, another sensor) may also exist on the platform on which the first sensor is located. Therefore, a motion state of the other component on the platform is the same as or close to the motion state of the first sensor, so that the estimation of the motion state of the first sensor may also be equivalent to or of an estimation of the motion state of the other component. Therefore, if a solution for estimating the motion state of the other component according to the foregoing principle exists, the solution also falls within the protection scope of the embodiments of the present invention.
In the method described in
The foregoing describes in detail the methods in the embodiments of the present invention, and the following provides apparatuses in the embodiments of the present invention.
In referring to
The obtaining unit 801 is configured to obtain a plurality of pieces of measurement data by using a first sensor, where each of the plurality of pieces of measurement data includes at least velocity measurement information.
The estimation unit 802 is configured to obtain a motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, where the motion state includes at least a velocity vector of the first sensor.
In the foregoing apparatus, the plurality of pieces of measurement data are obtained by using the first sensor, and the motion state of the first sensor is obtained based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object, where the measurement data includes at least the velocity measurement information. A relative motion occurs between the first sensor and the target reference object, and the measurement data of the first sensor may include measurement information of a velocity of the relative motion.
Therefore, the motion state of the first sensor may be obtained based on the measurement data corresponding to the target reference object. In addition, the target reference object may be spatially diversely distributed relative to the sensor, and particularly, may have different geometric relationships with the first sensor. Therefore, there are different measurement equations between the velocity measurement data and the first sensor, and in particular, the quantity of conditions of a measurement matrix in the measurement equation is reduced. Moreover, a large amount of measurement data corresponding to the target reference object is provided, so that the impact of noise or interference on a motion state estimation is effectively reduced. Therefore, according to the method in the present invention, the measurement data corresponding to the target reference object, in particular, the geometric relationship of the target reference object relative to the sensor and the amount of the measurement data, can be effectively used to reduce the impact of measurement errors or interference, so that a higher precision can be achieved in this manner of determining the motion state. In addition, according to the method, a motion estimation of the sensor can be obtained by using only single-frame data, so that good real-time performance can be achieved.
In a possible implementation, the target reference object is an object that is stationary relative to a reference system. The reference system may be the ground, a geodetic coordinate system, or an inertial coordinate system relative to the ground.
In another possible implementation, after obtaining the plurality of pieces of measurement data by using a first sensor, where each of the plurality of pieces of measurement data includes at least velocity measurement information, and before obtaining the motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, the method further includes:
determining, from the plurality of pieces of measurement data based on a feature of the target reference object, the measurement data corresponding to the target reference object.
In another possible implementation, the feature of the target reference object includes a geometric feature and/or a reflectance feature of the target reference object.
In another possible implementation, after obtaining the plurality of pieces of measurement data by using a first sensor, where each of the plurality of pieces of measurement data includes at least velocity measurement information, and before obtaining the motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, the method further includes:
determining, from the plurality of pieces of measurement data of the first sensor based on data of a second sensor, the measurement data corresponding to the target reference object.
In another possible implementation, the determining, from the plurality of pieces of measurement data of the first sensor based on data of a second sensor, the measurement data corresponding to the target reference object includes:
mapping the measurement data of the first sensor to a space of the measurement data of the second sensor;
mapping the measurement data of the second sensor to a space of the measurement data of the first sensor; or
mapping the measurement data of the first sensor and the measurement data of the second sensor to a common space; and
determining, by using a space and based on the target reference object determined based on the measurement data of the second sensor, the measurement data that is of the first sensor and that corresponds to the target reference object.
In another possible implementation, the obtaining a motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object includes:
obtaining the motion state of the first sensor through a least squares LS estimation and/or sequential block filtering based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object. It may be understood that the estimation precision of the motion state (for example, a velocity) of the first sensor can be more effectively improved through the LS estimation and/or the sequential filtering estimation.
In another possible implementation, the obtaining the motion state of the first sensor through a least squares LS estimation and/or sequential block filtering based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object includes:
performing sequential filtering based on M radial velocity vectors corresponding to the target reference object and measurement matrices corresponding to the M radial velocity vectors, to obtain a motion estimate of the first sensor, where M≥2, the radial velocity vector includes K radial velocity measured values in the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object, the corresponding measurement matrix includes K directional cosine vectors, and K≥1.
In another possible implementation,
the motion velocity vector of the first sensor is a two-dimensional vector, K=2, and the measurement matrix corresponding to the radial velocity vector is:
where θm,i is an ith piece of azimuth measurement data in an mth group of measurement data of the target reference object, and i=1 or 2; or
the motion velocity vector of the first sensor is a three-dimensional vector, K=3, and the measurement matrix corresponding to the radial velocity vector is:
where θm,i is an ith piece of azimuth measurement data in an mth group of measurement data of the target reference object, ϕmi is an ith piece of pitch angle measurement data in the mth group of measurement data of the target reference object, and i=1, 2, or 3.
In another possible implementation, a formula for the sequential filtering is:
v
s,m
MMSE
=v
s,m−1
MMSE
+G
m(−{dot over (r)}m,K−Hm,K*vs,m−1MMSE)
G
m
=P
m,1|0
*H
m,K
T*(Hm,K*Pm,1|0*Hm,KT+Rm,K)−1
P
m,1|0
=P
m−1,1|1
P
m,1|1=(I−Gm−1Hm−1,K)Pm,1|0
where vs,mMMSE is a velocity vector estimate of an mth time of filtering, Gm is a gain matrix, {dot over (r)}m,K is an mth radial velocity vector measured value, Rm,K is an mth radial velocity vector measurement error covariance matrix, and m=1, 2, . . . , or M.
It should be noted that for implementation of the units, refer to corresponding descriptions in the method embodiment shown in
In the apparatus 80 described in
Refer to
The memory 902 includes, but is not limited to, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), or a compact disc read-only memory (CD-ROM). The memory 902 is configured to store related program instructions and data. The first sensor 903 is configured to collect measurement data.
The processor 901 may be one or more central processing units (CPUs). When the processor 901 is one CPU, the CPU may be a single-core CPU, or may be a multi-core CPU.
The processor 901 in the apparatus 90 is configured to read the program instructions stored in the memory 902, to perform the following operations:
obtaining a plurality of pieces of measurement data by using the first sensor 903, where each of the plurality of pieces of measurement data includes at least velocity measurement information; and
obtaining a motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, where the motion state includes at least a velocity vector of the first sensor.
In the foregoing apparatus, the plurality of pieces of measurement data are obtained by using the first sensor, and the motion state of the first sensor is obtained based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object, where the measurement data includes at least the velocity measurement information. A relative motion occurs between the first sensor and the target reference object, and the measurement data of the first sensor may include measurement information of a velocity of the relative motion.
Therefore, the motion state of the first sensor may be obtained based on the measurement data corresponding to the target reference object. In addition, usually, the target reference object may be spatially diversely distributed relative to the sensor, and particularly, may have different geometric relationships with the first sensor. Therefore, there are different measurement equations between the velocity measurement data and the first sensor, and in particular, the quantity of conditions of a measurement matrix in the measurement equation is reduced. Moreover, a large amount of measurement data corresponding to the target reference object is provided, so that the impact of noise or interference on a motion state estimation is effectively reduced. Therefore, according to the method in the present invention, the measurement data corresponding to the target reference object, in particular, the geometric relationship of the target reference object relative to the sensor and the amount of the data, can be effectively used to reduce impact of a measurement error or interference, so that a higher precision is achieved in this manner of determining the motion state. In addition, according to the method, a motion estimation of the sensor can be obtained by using only single-frame data, so that good real-time performance can be achieved.
In a possible implementation, the target reference object is an object that is stationary relative to a reference system.
Optionally, the reference system may be the ground, a geodetic coordinate system, an inertial coordinate system relative to the ground, or the like.
In another possible implementation, after obtaining the plurality of pieces of measurement data by using the first sensor, where each of the plurality of pieces of measurement data includes at least velocity measurement information, and before obtaining the motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, the processor 901 is further configured to:
determine, from the plurality of pieces of measurement data based on a feature of the target reference object, the measurement data corresponding to the target reference object.
In another possible implementation, the feature of the target reference object includes a geometric feature and/or a reflectance feature of the target reference object.
In another possible implementation, after obtaining the plurality of pieces of measurement data by using the first sensor, where each of the plurality of pieces of measurement data includes at least velocity measurement information, and before obtaining the motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object, the processor 901 is further configured to:
determine, from the plurality of pieces of measurement data of the first sensor based on data of a second sensor, the measurement data corresponding to the target reference object.
In another possible implementation, the determining, from the plurality of pieces of measurement data of the first sensor based on data of a second sensor, the measurement data corresponding to the target reference object comprises:
mapping the measurement data of the first sensor to a space of the measurement data of the second sensor;
mapping the measurement data of the second sensor to a space of the measurement data of the first sensor; or
mapping the measurement data of the first sensor and the measurement data of the second sensor to a common space; and
determining, by using a space and based on the target reference object determined based on the measurement data of the second sensor, the measurement data that is of the first sensor and that corresponds to the target reference object.
In another possible implementation, the obtaining a motion state of the first sensor based on measurement data in the plurality of pieces of measurement data that corresponds to a target reference object comprises:
obtaining the motion state of the first sensor through a least squares LS estimation and/or sequential block filtering based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object. It may be understood that estimation precision of the motion state (for example, a velocity) of the first sensor can be more effectively improved through the LS estimation and/or the sequential filtering estimation.
In another possible implementation, the obtaining the motion state of the first sensor through a least squares LS estimation and/or sequential block filtering based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object comprises:
performing sequential filtering based on M radial velocity vectors corresponding to the target reference object and measurement matrices corresponding to the M radial velocity vectors, to obtain a motion estimate of the first sensor, where M≥2, the radial velocity vector includes K radial velocity measured values in the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object, the corresponding measurement matrix includes K directional cosine vectors, and K≥1.
In another possible implementation,
the motion velocity vector of the first sensor is a two-dimensional vector, K=2, and the measurement matrix corresponding to the radial velocity vector is:
where θm,i is an ith piece of azimuth measurement data in an mth group of measurement data of the target reference object, and i=1 or 2; or
the motion velocity vector of the first sensor is a three-dimensional vector, K=3, and the measurement matrix corresponding to the radial velocity vector is:
where θm,i is an ith piece of azimuth measurement data in an mth group of measurement data of the target reference object, ϕm,i is an ith piece of pitch angle measurement data in the mth group of measurement data of the target reference object, and i=1, 2, or 3.
In another possible implementation, a formula for the sequential filtering is:
v
s,m
MMSE
=v
s,m−1
MMSE
+G
m(−{dot over (r)}m,K−Hm,K*vs,m−1MMSE),
G
m
=P
m,1|0
*H
m,K
T*(Hm,K*Pm,1|0*Hm,KT+Rm,K)−1,
P
m,1|0
=P
m−1,1|1, and
P
m,1|1=(I−Gm−1Hm−1,K)Pm,1|0,
where v,mMMSE is a velocity vector estimate of an mth time of filtering, Gm is a gain matrix, {dot over (r)}m,K is an mth radial velocity vector measured value, Rm,K is an mth radial velocity vector measurement error covariance matrix, and m=1, 2, . . . , or M.
It should be noted that for implementation of the operations, refer to corresponding descriptions in the method embodiment shown in
In the apparatus 90 described in
An embodiment of the present invention further provides a chip system. The chip system includes at least one processor, a memory, and an interface circuit. The memory, the interface circuit, and the at least one processor are interconnected through a line, and the at least one memory stores program instructions. When the program instructions are executed by the processor, the method procedure shown in
An embodiment of the present invention further provides a computer-readable storage medium. The computer-readable storage medium stores instructions; and when the instructions are run on a processor, the method procedure shown in
An embodiment of the present invention further provides a computer program product. When the computer program product is run on a processor, the method procedure shown in
In conclusion, during implementation of the embodiments of the present invention, the plurality of pieces of measurement data are obtained by using the first sensor, and the motion state of the first sensor is obtained based on the measurement data in the plurality of pieces of measurement data that corresponds to the target reference object, where the measurement data includes at least the velocity measurement information. A relative motion occurs between the first sensor and the target reference object, and the measurement data of the first sensor may include measurement information of a velocity of the relative motion. Therefore, the motion state of the first sensor may be obtained based on the measurement data corresponding to the target reference object. In addition, usually, the target reference object is spatially diversely distributed relative to the sensor, and particularly, has different geometric relationships with the first sensor. Therefore, there are different measurement equations between the velocity measurement data and the first sensor, and in particular, the quantity of conditions of a measurement matrix in the measurement equation is reduced. Moreover, a large amount of measurement data corresponding to the target reference object is provided, so that the impact of noise or interference on a motion state estimation is effectively reduced. Therefore, according to the method in the present invention, the measurement data corresponding to the target reference object, in particular, the geometric relationship of the target reference object relative to the sensor and the amount of data, can be effectively used to reduce the impact of measurement errors or interference, so that higher precision can be achieved in this manner of determining the motion state. In addition, according to the method, a motion estimation of the sensor can be obtained by using only single-frame data, so that good real-time performance can be achieved. Further, it may be understood that estimation precision of the motion state (for example, a velocity) of the first sensor can be more effectively improved through the LS estimation and/or the sequential filtering estimation.
Persons of ordinary skill in the art may understand that all or some of the procedures of the methods in the foregoing embodiments may be implemented by a computer program instructing relevant hardware. The program may be stored in a computer-readable storage medium. When the program is executed, the procedures of the methods in the foregoing embodiments may be performed. The foregoing storage medium includes: any medium that can store program code, such as a ROM, a random access memory (RAM), a magnetic disk, or an optical disc.
Number | Date | Country | Kind |
---|---|---|---|
201910503710.9 | Jun 2019 | CN | national |
This application is a continuation of International Application No. PCT/CN2020/093486, filed on May 29, 2020, which claims priority to Chinese Patent Application No. 201910503710.9, filed on Jun. 6, 2019. The disclosures of the aforementioned applications are hereby incorporated by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2020/093486 | May 2020 | US |
Child | 17542699 | US |