WO2021218347A1 - 一种聚类的方法和装置 - Google Patents

一种聚类的方法和装置 Download PDF

Info

Publication number
WO2021218347A1
WO2021218347A1 PCT/CN2021/078386 CN2021078386W WO2021218347A1 WO 2021218347 A1 WO2021218347 A1 WO 2021218347A1 CN 2021078386 W CN2021078386 W CN 2021078386W WO 2021218347 A1 WO2021218347 A1 WO 2021218347A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
point
vector value
velocity vector
data point
Prior art date
Application number
PCT/CN2021/078386
Other languages
English (en)
French (fr)
Inventor
王建国
罗竞雄
Original Assignee
华为技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2021218347A1 publication Critical patent/WO2021218347A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition

Definitions

  • This application relates to the field of data processing, and more specifically, to a clustering method and device.
  • a variety of sensors such as radar, sonar, ultrasonic sensors, and vision sensors such as cameras or cameras, are usually configured in advanced driver assistance systems (ADAS) or autonomous driving (AD) systems, for perception Surrounding environment and target information.
  • ADAS advanced driver assistance systems
  • AD autonomous driving
  • sensor capabilities especially spatial resolution, for a target that is relatively close to the sensor, the sensor will generate multiple measurement data during one scan.
  • Such goals are often called extended goals. Different from the point target, the dimension or size of the extended target will span the resolution units of multiple sensors.
  • the sensor may contain multiple extended targets during one scan, and the data of each target may include position and radial velocity or velocity component information.
  • Respectively identifying and separating the measurement data from an extended target is the prerequisite/foundation for subsequent processing such as tracking or classification. Therefore, it is necessary to cluster the data set from the sensor by the clustering method, and to separately determine and separate the measurement data from an extended target.
  • the density-based clustering algorithm is currently a widely used clustering algorithm.
  • DBSCAN density-based spatial clustering of applications with noise
  • HDBSCAN Hierarchical DBSCAN
  • OPTICS ordering points to identify the clustering structure
  • the data of the points in the data set to which the above method is applicable are usually the same type of data, such as The same two-dimensional or three-dimensional space position vector.
  • the extension is used for data that contains both position and velocity components, the difference is usually large when directly calculating the vector difference between different points, and the clustering effect is relatively poor.
  • the present application provides a clustering method and device to improve the accuracy and reliability of clustering.
  • a clustering method which includes:
  • first data point set Acquiring a first data point set, where the first data point set includes at least two data points, and the information of each data point in the first data point set includes position data and radial velocity data;
  • the cluster C(q) is determined from the first data point set, and the path of each data point in the cluster C(q) The direction velocity and the velocity vector value v(q) satisfy the compatibility condition.
  • clustering the data points by the core point q and the velocity vector value v(q) of the core point q in the first data point set can make full use of the velocity vector information of the core point q and avoid radial velocity data
  • it also reduces the sensitivity of spatial location data information to input parameters, and effectively improves the accuracy and reliability of clustering.
  • the core point q is a data point in the pre-designated first data point set; or,
  • the core point q is the data point q'in the first data point set, where the number of data points in the first data point set contained in the neighborhood N(q') of the data point q'satisfies the first A predefined threshold.
  • the core point q can be determined in different ways to meet different scene requirements or functional requirements. On the one hand, it can be pre-designated according to external requirements to cluster specific points of interest or its surrounding areas; on the other hand, , The point of interest or its surrounding area in the data set can be determined according to the information of the data point, which is convenient for self-discovery and determination of potential targets, such as extended targets that can be obtained through clustering, such as vehicles in assisted driving or autonomous driving environments.
  • the neighborhood N(q’) of the data point q’ is a predefined neighborhood; or,
  • the neighborhood N(q') of the data point q' is the set of data points in the first data point set whose distance from the data point q'satisfies a second predefined threshold, and the distance is based on the data point q'
  • the position data of the data point and the position data of the data points in the first data point set are determined, or the distance is determined based on the position data and radial velocity data of the data point q', and the data point of the first data point set Position data and radial velocity data are determined.
  • the neighborhood N(q') of the data point q' can be determined in different ways, and the flexibility of determining the neighborhood N(q') of the data point q'is high, which is suitable for various application scenarios.
  • it can be pre-specified according to external requirements, for example, the neighborhood of a specific point of interest can be specified; on the other hand, the neighborhood of the point of interest in the data set can be determined based on the information of the data point, so as to facilitate self-discovery and determination of potential Target.
  • the velocity vector value v(q) of the core point q is a predefined velocity vector value
  • the velocity vector value v(q) of the core point q is determined according to the data points contained in the neighborhood N(q) of the core point q.
  • the velocity vector value v(q) of the core point q can be determined in different ways, and the velocity vector value v(q) of the core point q is determined with high flexibility, which is suitable for various application scenarios.
  • it can be determined according to the velocity vector value provided by the external interface; on the other hand, it can be determined according to the information of the data points in the neighborhood N(q) of the core point q, so that the velocity vector of the target can be determined by itself.
  • the velocity vector value v(q) of the core point q is determined according to the data points contained in the neighborhood N(q) of the core point q, including:
  • the core point q and the information of one or more data points contained in the neighborhood N(q) of the core point q to determine at least one candidate velocity vector value of the core point q includes:
  • At least one candidate velocity vector of the core point q is determined based on the following relationship value
  • v c (q) is at least one candidate velocity vector of the core point q
  • s is the core point q or a data point in the neighborhood of the core point q for determining the v c (q)
  • Is the radial velocity data of data point s
  • n s is and The corresponding error.
  • h s is the direction cosine vector, where h s is obtained from the position data of the data point s.
  • the determining the velocity vector value v(q) of the core point q according to the data points contained in the neighborhood N(q) of the core point q and at least one candidate velocity vector value of the core point q includes:
  • the velocity vector value v(q) of the core point q is determined.
  • the weight of the at least one candidate velocity vector value is an accumulated value of the weight of the data points contained in the core point q and/or the neighborhood N(q) of the core point q with respect to the at least one candidate velocity vector value;
  • the weight of the data point contained in the core point q and/or the neighborhood N(q) of the core point q relative to the candidate velocity vector value is based on the core point q and/or the neighborhood N(q) of the core point q ) Contains the position data and radial velocity data of the data points in the first data point set.
  • the weight of a data point t contained in the neighborhood N(q) of the core point q relative to the candidate velocity vector value v c (q) is based on the radial projection of the candidate velocity vector value v c (q) on the data point t
  • the difference between the component and the radial velocity data of the data point t is obtained, where the radial projection component of the candidate velocity vector value v c (q) at the data point t is based on the candidate velocity vector value v c (q) and
  • the position data of the data point t is obtained.
  • the determining the velocity vector value v(q) of the core point q according to the weight of the at least one candidate velocity vector value includes:
  • the candidate velocity vector value corresponding to the weight of the candidate velocity vector value greater than or equal to the third predefined threshold among the weights of the at least one candidate velocity vector value is determined as the velocity vector value v(q) of the core point q.
  • the compatibility condition is that the radial projection component of the velocity vector value at the data point and the radial velocity of the data point meet the fourth predefined threshold, and the radial projection component of the velocity vector value at the data point is based on the velocity vector value and the The location data of the data point is determined.
  • the cluster C(q) includes the following data points: the core point q, the data point p i and the data point s i,j ,
  • the data point s i,j is the neighbor of the data point p i
  • the data point p i and/or the data point s i,j meets the compatibility condition: the radial velocity data of the data point p i and/or the data point s i,j is at the core point q The velocity vector value v(q) at the data point p i and/or the radial projection component of the data point s i,j satisfies the fourth predefined threshold, and the velocity vector value v(q) of the core point q is in the data point p i and/or the data point s i, j The radial projection component of the point p i and/or the data point s i,j is based on the velocity vector value v(q) of the core point q and the position data of the data point p i and/or the data point s i,j get.
  • the cluster C(q) includes the following data points: the core point q, the data point p i, and the data point v j,k ,
  • the data point p i and/or the data point v j,k satisfying the compatibility condition is: the radial velocity data of the data point p i and/or the data point v j,k is at the core point q
  • the radial projection component of the velocity vector value v(q) at the data point p i and/or the data point v j,k meets the fourth predefined threshold, and the velocity vector value v(q) of the core point q is in the data point p i and/or the data point v j,k.
  • the radial projection component of the point p i and/or the data point v j,k is based on the velocity vector value v(q) of the core point q and the position data of the data point p i and/or the data point v j,k get.
  • the target velocity corresponding to the cluster C(q) is the velocity vector value v(q) of the core point q;
  • the target position corresponding to the cluster C(q) is the weighted sum of the positions of the data points contained in the cluster C(q).
  • a clustering device in a second aspect, includes:
  • the transceiver unit is configured to obtain a first data point set, where the first data point set includes at least two data points, and the information of each data point in the first data point set includes position data and radial velocity data;
  • a processing unit configured to determine the core point q and the velocity vector value v(q) of the core point q from the first data point set;
  • the processing unit is further configured to determine a cluster C(q) from the first data point set according to the core point q and the velocity vector value v(q) of the core point q.
  • the radial velocity of each data point and the velocity vector value v(q) satisfy the compatibility condition.
  • the core point q is a data point in the pre-designated first data point set; or,
  • the core point q is the data point q'in the first data point set, where the number of data points in the first data point set contained in the neighborhood N(q') of the data point q'satisfies the first A predefined threshold.
  • the neighborhood N(q’) of the data point q’ is a predefined neighborhood; or,
  • the neighborhood N(q') of the data point q' is a set of data points in the first data set whose distance from the data point q'satisfies a second predefined threshold, wherein the distance is based on the data point q'
  • the position data of and the position data of the data points in the first data set are determined, or the distance is determined based on the position data and radial velocity data of the data point q'and the positions of the data points in the first data set
  • the data and radial velocity data are determined.
  • the velocity vector value v(q) of the core point q is a predefined velocity vector value
  • the velocity vector value v(q) of the core point q is determined according to the data points contained in the neighborhood N(q) of the core point q.
  • the processing unit is further configured to:
  • the processing unit is further configured to:
  • At least one candidate velocity vector of the core point q is determined based on the following relationship value
  • v c (q) is the c-th candidate velocity vector of the core point q, c ⁇ 1, and s is the core point q or the neighborhood N(q) of the core point q to determine the v c (q) data points
  • Is the radial velocity data of data point s
  • n s is and The corresponding error.
  • h s is the direction cosine vector, where h s is obtained from the position data of the data point s.
  • the processing unit is further configured to:
  • the velocity vector value v(q) of the core point q is determined.
  • the weight of the at least one candidate velocity vector value is that the core point q and/or the data point contained in the neighborhood N(q) of the core point q is relative to An accumulated value of the weight of the at least one candidate velocity vector value;
  • the weight of the data point contained in the core point q and/or the neighborhood N(q) of the core point q relative to the at least one candidate velocity vector value is based on the core point q and/or the neighborhood N(q) of the core point q (q)
  • the position data and the radial velocity data of the data points contained in the first data point set are obtained.
  • the weight of a data point t contained in the neighborhood N(q) of the core point q relative to the candidate velocity vector value v c (q) is based on the candidate velocity
  • the vector value v c (q) is obtained from the difference between the radial projection component of the data point t and the radial velocity data of the data point t, where the candidate velocity vector value v c (q) is obtained at the data point t
  • the radial projection component is obtained according to the candidate velocity vector value v c (q) and the position data of the data point t.
  • the processor is further used for:
  • the candidate velocity vector value corresponding to the weight of the candidate velocity vector value greater than or equal to the third predefined threshold among the weights of the at least one candidate velocity vector value is determined as the velocity vector value v(q) of the core point q.
  • the compatibility condition is that the radial projection component of the velocity vector value at the data point and the radial velocity of the data point meet the fourth predefined threshold, and the radial projection component of the velocity vector value at the data point is based on the velocity vector value and the The location data of the data point is determined.
  • the cluster C(q) includes the following data points: the core point q, the data point p i and the data point s i,j ,
  • the data point s i,j is the neighbor of the data point p i
  • the data point p i and/or the data point s i,j meets the compatibility condition: the radial velocity data of the data point p i and/or the data point s i,j is at the core point q The velocity vector value v(q) at the data point p i and/or the radial projection component of the data point s i,j satisfies the fourth predefined threshold, and the velocity vector value v(q) of the core point q is in the data point p i and/or the data point s i, j The radial projection component of the point p i and/or the data point s i,j is based on the velocity vector value v(q) of the core point q and the position data of the data point p i and/or the data point s i,j get.
  • the cluster C(q) includes the following data points: the core point q, the data point p i, and the data point v j,k ,
  • the data point p i and/or the data point v j,k satisfying the compatibility condition is: the radial velocity data of the data point p i and/or the data point v j,k is at the core point q
  • the radial projection component of the velocity vector value v(q) at the data point p i and/or the data point v j,k meets the fourth predefined threshold, and the velocity vector value v(q) of the core point q is in the data point p i and/or the data point v j,k.
  • the radial projection component of the point p i and/or the data point v j,k is based on the velocity vector value v(q) of the core point q and the position data of the data point p i and/or the data point v j,k get.
  • the target velocity corresponding to the cluster C(q) is the velocity vector value v(q) of the core point q;
  • the target position corresponding to the cluster C(q) is the weighted sum of the positions of the data points contained in the cluster C(q).
  • a device in a third aspect, includes a memory and a processor, the memory is used to store instructions, and the processor is used to read the instructions stored in the memory so that the device executes the first aspect and the first aspect described above. Any possible implementation of the method.
  • a processor including: an input circuit, an output circuit, and a processing circuit.
  • the processing circuit is configured to receive signals through the input circuit and transmit signals through the output circuit, so that any aspect of the first aspect and the method in any possible implementation manner of the first aspect are accomplish.
  • the above-mentioned processor may be a chip, the input circuit may be an input pin, the output circuit may be an output pin, and the processing circuit may be a transistor, a gate circuit, a flip-flop, and various logic circuits.
  • the input signal received by the input circuit may be received and input by, for example, but not limited to, a receiver, and the signal output by the output circuit may be, for example, but not limited to, output to the transmitter and transmitted by the transmitter, and the input circuit and output
  • the circuit can be the same circuit, which is used as an input circuit and an output circuit at different times.
  • the embodiments of the present application do not limit the specific implementation manners of the processor and various circuits.
  • a processing device including a processor and a memory.
  • the processor is used to read instructions stored in the memory, and can receive signals through a receiver, and transmit signals through a transmitter, so as to execute the first aspect and the method in any one of the possible implementation manners of the first aspect.
  • processors there are one or more processors, and one or more memories.
  • the memory may be integrated with the processor, or the memory and the processor may be provided separately.
  • the memory can be a non-transitory (non-transitory) memory, such as a read only memory (ROM), which can be integrated with the processor on the same chip, or can be set in different On the chip, the embodiment of the present application does not limit the type of the memory and the setting mode of the memory and the processor.
  • ROM read only memory
  • sending instruction information may be a process of outputting instruction information from the processor
  • receiving capability information may be a process of receiving input capability information by the processor.
  • the processed output data may be output to the transmitter, and the input data received by the processor may come from the receiver.
  • the transmitter and receiver can be collectively referred to as a transceiver.
  • a computer-readable storage medium for storing a computer program, and the computer program includes instructions for executing the foregoing first aspect and any possible implementation of the foregoing first aspect.
  • a computer program product containing instructions which when run on a computer, causes the computer to execute the above-mentioned first aspect and the method in any possible implementation manner of the above-mentioned first aspect.
  • a chip including at least one processor and an interface; the at least one processor is used to call and run a computer program, so that the chip executes the first aspect and the first aspect described above Any possible implementation of the method.
  • FIG. 1 is a schematic flowchart of a clustering method 100 provided by an embodiment of the present application.
  • FIG. 2 is a schematic flowchart of a clustering method 200 provided by an embodiment of the present application.
  • Fig. 3 is a schematic diagram of a data point set provided by an embodiment of the present application.
  • Fig. 4 is a schematic diagram of another data point set provided by an embodiment of the present application.
  • Fig. 5 is a schematic diagram of another data point set provided by an embodiment of the present application.
  • FIG. 6 is a schematic structural diagram of a clustering apparatus 600 provided by an embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of a clustering device 700 provided in an embodiment of the present application.
  • Fig. 1 shows a schematic flowchart of a clustering method 100 provided by an embodiment of the present application.
  • the execution subject of the method 100 may be a sensor system, a fusion sensing system, or a planning/control system that integrates the foregoing systems, such as an assisted driving or automatic driving system.
  • the execution body of the method 100 may also be software or hardware (such as a data processing device connected or integrated with the corresponding sensor through wireless or wired connection).
  • the following different execution steps can be implemented in a centralized manner, or the following different execution steps can also be implemented in a distributed manner.
  • the clustering method 100 includes steps 110 to 130, and steps 110 to 130 are described in detail below.
  • Step 110 Obtain a first set of data points.
  • the first data point set includes at least two data points, and the information of each data point in the first data point set includes position data and radial velocity data.
  • the method for obtaining the first data point set is not specifically limited.
  • the first set of data points may be obtained from one or more sensors, and may also be obtained from the cloud in a wired or wireless manner.
  • the first data point set is a set directly measured from one or more sensors, and the first data point set is also a set processed by the one or more sensors.
  • the senor may be a radar sensor, for example, millimeter wave radar or lidar.
  • the sensor may be a sonar or ultrasonic sensor.
  • the sensor may also be a vision sensor or an imaging sensor, such as a camera or a video camera.
  • the sensor can also be an imaging radar, such as lidar, synthetic aperture radar, and so on.
  • the sensor can also be a direction-finding sensor with the ability to measure frequency shift.
  • the direction-finding sensor can also be obtained by measuring the frequency shift of the received signal relative to a known frequency. Radial velocity data.
  • the sensor platform can be a movable device.
  • the sensor platform can be a vehicle-mounted platform, such as a car, a motorcycle, or a bicycle.
  • the sensor platform may be a shipboard platform, such as a ship, a ship, a motorboat, and so on.
  • the sensor platform may be a vehicle-mounted platform, which may be an airborne platform, such as an unmanned aerial vehicle, a helicopter, or a jet plane, a balloon, and the like.
  • the sensor platform may be a spaceborne platform, such as a satellite.
  • the data processing device can be deployed in the sensor platform, that is, the data processing device can be integrated with the sensor platform.
  • the data processing device may be deployed outside the sensor platform, and the data processing device and the sensor platform may communicate through a wireless network.
  • the physical composition of the sensor here can be one or more physical sensors.
  • each of the one or more physical sensors may measure the azimuth angle, the elevation angle, and the radial velocity, respectively, or derive the azimuth angle, the elevation angle, and the azimuth angle, the elevation angle, and the measurement data from the one or more physical sensors.
  • the radial velocity is not specifically limited here.
  • the radar sensor may obtain the position data of the data point by obtaining the distance, elevation angle, and azimuth angle between the data point and the radar sensor.
  • the radar sensor can obtain the radial velocity of the data point relative to the radar sensor through direct measurement.
  • the format of the location data is not specifically limited.
  • the position data can be expressed in rectangular coordinates.
  • the position data may include two-dimensional rectangular coordinate components, such as (x, y).
  • the position data may include three-dimensional rectangular coordinate components, such as (x, y, z).
  • position data can be expressed in polar coordinates.
  • the position data can be expressed as ( ⁇ , ⁇ ).
  • represents the distance
  • represents the azimuth angle.
  • the position data can be expressed in spherical coordinates.
  • the location data can be expressed as Among them, r represents the distance, ⁇ represents the azimuth angle, Represents the pitch angle.
  • Step 120 Determine the core point q and the velocity vector value v(q) of the core point q from the first data point set.
  • the method for obtaining the core point q is not specifically limited.
  • the core point q is a data point in a pre-designated first data point set.
  • the k-th data point among the M data points can be designated as the core point, where M ⁇ 2 and 1 ⁇ k ⁇ M.
  • the radar sensor A can be used to pre-designate the data point 2 as the core point.
  • the data point 2 can also be pre-designated as the core point by the radar sensor B, where the radar sensor B is a radar sensor that can communicate with the radar sensor A.
  • the core point q in the first data point set can be quickly and flexibly obtained.
  • the k-th data point among the M data points may be input from the outside.
  • the k-th data point is a point that needs attention in the field of view (FoV) of the sensor;
  • the externally input point can be obtained by the system from the sensor, or can be obtained based on information from other sensors.
  • the focus area is obtained from the camera, and one of the points is selected as the core point from the FoV of the radar sensor.
  • the core point q is the data point q'in the first data point set, wherein the number of data points in the first data point set contained in the neighborhood N(q') of the data point q' The number meets the first predefined threshold.
  • the number of data points in the first data point set contained in the neighborhood N(q') of the data point q′ satisfies the first predefined threshold, which may be the neighborhood N(q′) of the data point q′
  • the number of data points in the first data point set contained in is greater than or greater than or equal to the first predefined threshold.
  • the size of the first predefined threshold can be set according to experience or application scenarios.
  • the size of the first predefined threshold can be determined according to factors such as the resolution of the sensor, the size of the target to be clustered, and the distance between the target and the sensor.
  • the number of data points near the corresponding data point can be calculated according to the distance and/or the size of the angle resolution unit, and the number of data points can be determined according to the number of expected data points.
  • the size of a predefined threshold For example, based on millimeter wave radar or lidar or ultrasonic radar or sonar, the number of data points near the corresponding data point can be calculated according to the distance and/or the size of the angle resolution unit, and the number of data points can be determined according to the number of expected data points. The size of a predefined threshold.
  • the value of the first predefined threshold may be 3, 4, 5..., etc.; or, the value of the first predefined threshold may be 10, etc.
  • the core point q can be determined in the above-mentioned different ways, which can meet different scenario requirements or functional requirements. On the one hand, it can be pre-designated according to external requirements to cluster specific points of interest or its surrounding areas; On the other hand, the point of interest or its surrounding area in the data set can be determined based on the information of the data point, which is convenient for discovering and determining potential targets by itself. Vehicles etc.
  • the method of obtaining the neighborhood N(q') of the data point q' is not specifically limited.
  • the neighborhood N(q') of the data point q' is a predefined neighborhood.
  • the neighborhood N(q') of the data point q' is a predefined neighborhood, which may include the data point q'and a subset of the data points in the first data set; specifically, for the first data point set , Including M data points, you can specify j of the M data points as the data points contained in the neighborhood N(q') of the data point q', where M ⁇ 2, 1 ⁇ j ⁇ M.
  • data point set A includes 6 data points, which are data point 1, data point 2, data point 3, data point 4, data point 5, and data point 6.
  • You can specify 2 of data point set A The data points are the data points contained in the neighborhood N(q') of the data point q', or you can specify the 3 data points in the data point set A as the neighborhood N(q') of the data point q'
  • the included data points or, you can also designate the 4 data points in the data point set A as the data points included in the neighborhood N(q') of the data point q'.
  • the neighborhood N(q’) of the data point q’ is a predefined neighborhood, which can be determined according to external input;
  • the data point in the first data point set that is closest to the externally input position or velocity vector value may be determined as the data point q' ,
  • the predefined probability can be 90%, 95%, 99%, etc., which is not limited here;
  • the externally input position or velocity vector value and error covariance matrix can be obtained from other sensors such as radar or sensor fusion system; the position or velocity vector value and error covariance matrix can be obtained from other sensors or fusion systems The state vector and its covariance matrix are obtained.
  • a data point in the same frame as the data point q' can be determined as a data point in the neighborhood N(q') of the data point q'according to an externally input bounding box; for example, the The external input frame can be obtained from a sensor such as a vision sensor or a lidar.
  • the neighborhood N(q') of the data point q' is a set of data points in the first data set whose distance from the data point q'meets a second predefined threshold, where the distance is based on the data
  • the position data of the point q'and the position data of the data points in the first data set are determined, or the distance is determined based on the position data and radial velocity data of the data point q'and the positions of the data points in the first data set
  • the data and radial velocity data are determined.
  • the number between each data point included in the neighborhood N(q) of the core point q and the core point q should meet the first predefined threshold, and the neighborhood N(q) of the core point q
  • the distance between each data point included in the core point q should meet the second predefined threshold.
  • the distance from the data point q'satisfies the second predefined threshold may be understood to mean that the distance from the data point q'is less than or equal to the second predefined threshold.
  • the neighborhood N(k) of the data point k is a subset of the first data point set, and N(k) can be expressed as:
  • N(k) ⁇ l ⁇ D
  • the neighborhood N(k) of the data point k is a subset of the first data point set, and N(k) can be expressed as:
  • N(k) ⁇ l ⁇ D
  • the neighborhood N(k) of the data point k is a subset of the first data point set, and N(k) can be expressed as:
  • N(k) ⁇ l ⁇ D
  • D is the first data point set
  • d(k,l) represents the distance between data point k and data point l, which can be obtained according to the distance data or distance and radial velocity data of the data point
  • d p (k,l ) Represents the distance between data point k and data point l obtained according to the distance data of the data point
  • d v (k,l) represents the distance between data point k and data point l obtained according to the radial velocity data of the data point Distance
  • T 1 , T 11 , and T 12 all represent the second predefined threshold.
  • the distance between the data points may be Euclidean Distance (Euclidean Distance), Mahalanobis Distance (Mahalanobis Distance), or other distances equivalent to the foregoing distance.
  • the distance between the two data points can be obtained according to the Euclidean distance or the Mahalanobis distance, and the position data of the two data points, or the position data and the radial velocity data of the two data points.
  • the Mahalanobis distance between two data points is:
  • I the vector difference of the two data, For and Corresponding error covariance.
  • the Euclidean distance d E (k,l) between data point k and data point l can be expressed as:
  • the Euclidean distance d E (k,l) between data point k and data point l can be expressed as:
  • the size of the second predefined threshold can be set according to experience or application scenarios.
  • the second predefined threshold may be a multiple of the corresponding error standard deviation, such as 1.5, 2, 3 times the error standard deviation, and so on.
  • the second predefined threshold may be 1+m/2, or 3, etc.
  • the core point q is determined according to the neighborhood of the data point in the first data point set, where the neighborhood of the data point is the data point in the bounding box where the data point is located and the data point.
  • the bounding box where the data point is located may be pre-designated externally, for example.
  • the frame information can be obtained from sensors such as a camera or a lidar, and the frame can be obtained based on a method such as machine learning, computer vision, or deep learning based on data from the camera or lidar, which is not limited here.
  • the data points included in the frame where the data point k is located As the neighborhood of data point k.
  • the size of the preset threshold value can be set according to the similar method of setting the second predefined threshold as described above.
  • the neighborhood N(q') of the data point q' can be determined by the above-mentioned different methods, and the flexibility of determining the neighborhood N(q') of the data point q'is high, and it is suitable for various kinds of Application scenarios.
  • it can be pre-specified according to external requirements, for example, the neighborhood of a specific point of interest can be specified; on the other hand, the neighborhood of the point of interest in the data set can be determined based on the information of the data point, so as to facilitate self-discovery and determination of potential Target.
  • the method for obtaining the velocity vector value v(q) of the core point q is not specifically limited.
  • the velocity vector value v(q) of the core point q is a predefined velocity vector value.
  • the velocity vector value v(q) of the core point q can be predefined by the sensor B communicating with the sensor A, where the sensor A is a sensor that acquires the core point q.
  • a predefined core point q and the velocity vector value v(q) of the core point q can be obtained through data input by other sensors or a fusion system.
  • the data input by the above-mentioned other sensors or the fusion system may include state vector data X, or state vector data X and its covariance matrix X, where the state vector X may include position data and velocity vector data.
  • the state vector X a data point is selected from the first data point set as the core point q, and the velocity data contained in the state vector X is used as the velocity vector value v(q) of the core point q.
  • the core point q may be the data point closest to the position data and the velocity data in the state vector in the first data point set.
  • the focused core point q in the first data point set and the velocity vector value v(q) of the core point q can be quickly and flexibly obtained.
  • the velocity vector value v(q) of the core point q is determined according to the data points contained in the neighborhood N(q) of the core point q.
  • the velocity vector value v(q) of the core point q is determined according to the data points contained in the neighborhood N(q) of the core point q, including:
  • the velocity vector value of the core point q is determined according to the data points contained in the neighborhood N(q) of the core point q and at least one candidate velocity vector value of the core point q.
  • is the neighborhood N( The size of q), that is, the number of data points contained in N(q); according to the core point q and data points p i , i 1,..., one or more of
  • the data points determine at least one candidate velocity vector value of the core point q.
  • the core point q is data point 3 in the first data point set, and the data points in the first data point set contained in the neighborhood N(q) of the core point q are data point 1, data point 4, and Data point 8.
  • I will not list them all here.
  • determining at least one candidate velocity vector value of the core point q according to the core point q and the information of one or more data points contained in the neighborhood N(q) of the core point q includes:
  • At least one candidate velocity vector value of the core point q is determined based on the following relational expression ;
  • v c (q) is the c-th candidate velocity vector of the core point q, c ⁇ 1, and s is the core point q or the data point used to determine the candidate velocity vector v c (q) in the neighborhood of the core point q , Is the radial velocity data of data point s, n s is and The corresponding error.
  • h s is the direction cosine vector, where h s is obtained from the position data of the data point s.
  • the direction cosine vector h s can be expressed as:
  • the direction cosine vector h s can be expressed as:
  • the direction cosine vector h s can be expressed as:
  • the direction cosine vector h s can be expressed as:
  • ⁇ s is the position data of the data point s
  • the specific ⁇ s is the azimuth angle of the data point s
  • Is the pitch angle of the data point s
  • x s , y s , and z s are the rectangular coordinate position data of the data point s.
  • the clustering method provided by this application determines the velocity vector value v(q) of the core point q through the data points in the neighborhood of the core point q, and clusters the data points based on the velocity vector value v(q), which can be Make full use of the position and radial velocity component information of the target data point to reconstruct the velocity vector information of the target. This can make full use of the velocity vector information of the core point q, avoid the limitation of radial velocity data as component information, reduce the sensitivity of spatial position data information to input parameters, and effectively improve the accuracy and reliability of clustering.
  • the method for determining the candidate velocity vector value of the core point q is not specifically limited.
  • the least squares (LS) or weighted least squares (WLS) or minimum mean square error can be used based on the data points contained in the core point q and the neighborhood of the core point q. (minimum mean squared error, MMSE) or Wiener filtering to obtain a candidate velocity vector value of the core point q.
  • MMSE minimum mean squared error
  • the core point q and the points pi in the neighborhood N(q) of the core point q can be used to determine the candidate velocity vector N(q) of the core point q, where 1 ⁇ M ⁇
  • the candidate velocity vector value of the core point q is determined according to the LS, and the candidate velocity vector value v c (q) of the core point q satisfies the following expression:
  • v c (q) represents the candidate velocity vector value of the core point q
  • h q represents the directional cosine vector of the core point q
  • h pi represents the directional cosine vector of the data point p i
  • Represents the radial velocity data of the data point p i , i 1,...,M.
  • the candidate velocity vector value of the core point q is determined according to the WLS, and the candidate velocity vector value v c (q) of the core point q satisfies the following expression:
  • the candidate velocity vector value of the core point q can be obtained, which will not be repeated here.
  • the velocity vector value of the core point q is determined according to the data points in the first data point set contained in the neighborhood N(q) of the core point q and the candidate velocity vector value of the core point q, including :
  • the velocity vector value of the core point q is determined.
  • the weight of at least one candidate velocity vector value of the core point q is obtained according to the position and radial velocity data of one or more data points contained in the core point q and/or the neighborhood N(q) of the core point q.
  • the weight of the candidate velocity vector value is the weight of one or more data points contained in the core point q and/or the neighborhood N(q) of the core point q relative to the candidate velocity vector value Cumulative value of
  • the weight of each data point contained in the core point q and/or the neighborhood N(q) of the core point q relative to the at least one candidate velocity vector value is based on the core point q and/or the neighborhood N(q) of the core point q It contains the position data and radial velocity data of one or more data points.
  • the weight of the candidate velocity vector value is the cumulative value of the weight of one or more data points contained in the core point q and/or the neighborhood N(q) of the core point q with respect to the candidate velocity vector value, and the core point Take a candidate velocity vector value v c (q) of q as an example,
  • ⁇ w c,i (v c (q)) is the weight of the data point with the sequence number i in the neighborhood N(q) of the core point q relative to v c (q).
  • the neighborhood of core point 1 in data point set A is N(1)
  • neighborhood N(1) includes core point 1, data point 2, and data point 3, and the candidate velocity vector of core point 1
  • the value is v 1 (1).
  • the weight of the candidate velocity vector value v 1 (1) of the core point 1 can satisfy the following expression:
  • the weight of the candidate velocity vector value v 1 (1) of the core point 1 may satisfy the following expression:
  • the weight of the candidate velocity vector value v 1 (1) of the core point 1 may satisfy the following expression:
  • w 1 (v 1 (1)) ⁇ w 1,1 (v 1 (1))+ ⁇ w 1,2 (v 1 (1))+ ⁇ w 1,3 (v 1 (1))
  • w 1 (v 1 (1)) is the weight of the candidate velocity vector value v 1 (1) of the core point 1; ⁇ w 1,1 (v 1 (1)) is the data point 1 relative to the candidate velocity vector value v 1 (1) weight; ⁇ w 1,2 (v 1 (1)) is the weight of data point 2 relative to the candidate velocity vector value v 1 (1); ⁇ w 1,3 (v 1 (1)) is the data point 3 The weight relative to the candidate velocity vector value v 1 (1).
  • the weight of a data point s in the neighborhood N(q) of the core point q relative to the candidate velocity vector value v c (q) can be the radial velocity data of the data point s And the velocity projection component of v c (q) and the candidate velocity vector value v c (q) at the data point s
  • the function of; the specific can be based on the radial velocity data of the data point s And the velocity projection component of v c (q) and the candidate velocity vector value v c (q) at the data point s Difference get.
  • the function is an exponential function, Gaussian density function and other similar probability density functions. It should be pointed out that the data point s can be the core point q.
  • the weight of a data point s in the neighborhood N(q) of the core point q relative to the candidate velocity vector value v c (q) may be based on the radial velocity data of the data point s And the velocity projection component of v c (q) and the candidate velocity vector value v c (q) at the data point s The difference is obtained.
  • the weight satisfies the following expression:
  • v c, x (q) represents the component of the candidate velocity vector value v c (q) on the x-axis
  • v c, y (q) represents the component of the candidate velocity vector value v c (q) on the y-axis
  • v c ,z (q) represents the component of the candidate velocity vector value v c (q) on the z axis.
  • ⁇ 2 is the projection component of the data point s and the radial velocity The variance of the error.
  • ⁇ 2 satisfies the following expression:
  • satisfies the following expression:
  • the weight of the candidate velocity vector value is that one or more data points in the first data point set contained in the core point q and/or the neighborhood N(q) of the core point q are relative to The product of the weighting factor of the candidate velocity vector value.
  • the weighting factor satisfies the following expression:
  • the weighting factor satisfies the following expression:
  • determining the velocity vector value v(q) of the core point q according to the weight of at least one candidate velocity vector value includes:
  • the candidate velocity vector value corresponding to the weight of the candidate velocity vector value greater than or equal to the third predefined threshold among the weights of the at least one candidate velocity vector value is determined as the velocity vector value v(q) of the core point q.
  • the candidate velocity vector value corresponding to the weight of the maximum candidate velocity vector value among the weights in the candidate velocity vector is determined as the velocity vector value v(q) of the core point q.
  • multiple candidate velocity vector values can be determined, and each of the multiple candidate velocity vector values corresponds to a weight
  • the candidate velocity vector value with the largest weight among the multiple candidate velocity vector values is determined as the velocity vector value v(q) of the core point q.
  • data point set A data point set A includes at least core point q, data point 1, and data point 2
  • only two candidate velocity vectors of core point q in data point set A are obtained by calculation
  • the two candidate velocity vector values are: v 1 (q), v 2 (q), where v 1 (q) corresponds to the weight w 1 (v 1 (q)), v 2 (q) corresponds to The weight of is w 2 (v 2 (q)), and w 1 (v 1 (q)) is greater than w 2 (v 2 (q)).
  • v 1 (q) can be determined as the velocity vector value v(q) of the core point q.
  • the weight of the velocity vector value v(q) of the core point q is greater than or equal to the third predefined threshold.
  • multiple candidate velocity vector values of the core point q can be determined, and the multiple candidate velocity vector values correspond to multiple weights. , Determining the candidate velocity vector value corresponding to the weight of the candidate velocity vector value greater than or equal to the third predefined threshold among the weights of the multiple candidate velocity vector values as the velocity vector value v(q) of the core point q.
  • data point set A data point set A includes at least core point q, data point 1, and data point 2
  • only two candidate velocity vectors of core point q in data point set A are obtained by calculation
  • the two candidate velocity vector values are: v 1 (q), v 2 (q), and the weight corresponding to v 1 (q) is w 1 (v 1 (q)), and v 2 (q)
  • the corresponding weight is w 2 (v 2 (q)).
  • v 1 (q) is the first candidate velocity vector of core point q determined according to the position data and radial velocity data of core point q and data point 1
  • v 2 (q) is based on core point q and data
  • the position data and radial velocity data of point 1 and data point 2 determine the second candidate velocity vector of the core point q.
  • w 1 (v 1 (q)) is less than the value of the third predefined threshold
  • w 2 (v 2 (q)) is greater than the value of the third predefined threshold
  • v 2 (q) is determined as the core The velocity vector value at point q.
  • the weights of the two candidate speed vector values can be added to The candidate velocity vector value corresponding to the weight of any one candidate velocity vector value is determined as the velocity vector value v(q) of the core point q.
  • data point set A data point set A includes at least core point q, data point 1, data point 2, and data point 3
  • the three candidate velocity vector values are: v 1 (q), v 2 (q), v 3 (q), and the weight corresponding to v 1 (q) is w 1,1 (v 1 (q)), the weight corresponding to v 2 (q) is w 2,3 (v 2 (q)), and the weight corresponding to v 3 (q) is w 3,2 (v 3 (q)).
  • v 1 (q) is the first candidate velocity vector of core point q determined according to the position data and radial velocity data of core point q and data point 1
  • v 2 (q) is based on core point q and data
  • v 3 (q) is based on the position data and radial velocity data of core point q and data point 2
  • v 2 (q) may be determined as the velocity vector value of the core point q, or v 3 (q) may also be determined as the velocity vector value of the core point q. Or, compare v 2 (q), v 3 (q) with the nearest candidate velocity vector value of the external input, and determine v 2 (q) as the velocity vector value of the core point q, or v 3 (q) as the core point q The velocity vector value.
  • Step 130 according to the core point q and the velocity vector value v(q) of the core point q, determine the cluster C(q) from the first data point set, and the radial direction of each data point in the cluster C(q) The velocity and velocity vector value v(q) satisfy the compatibility condition.
  • the compatibility condition is that the radial projection component of the velocity vector value at the data point and the radial velocity of the data point meet the fourth predefined threshold, and the radial projection component of the velocity vector value at the data point is based on the velocity vector The value and the position data of the data point are determined.
  • the size of the fourth predefined threshold can be set according to experience or application scenarios.
  • the fourth predefined threshold may be determined according to the error standard deviation of the radial velocity data of the data point or the standard deviation of the error between the radial velocity data of the data point and the radial velocity projection component.
  • the fourth predefined threshold may be the error standard deviation of the radial velocity data or m times the standard deviation of the error between the radial velocity data of the data point and the radial velocity projection component.
  • m may be 1.5, 2, 3, etc. ;
  • m can be determined according to a predefined probability such as 90%, 95%, 97%, 99%, etc.
  • the cluster C(q) includes the following data points: the core point q, the data point p i and the data point s i,j ,
  • the data point p i and/or the data point s i,j satisfy the compatibility condition: the radial velocity data of the data point p i and/or the data point s i,j and the velocity vector value v(q )
  • the radial projection component meets the fourth predefined threshold
  • the velocity vector value v(q) of the core point q is at the data point p i and/or the data point s i
  • the radial projection component of j is obtained according to the velocity vector value v(q) of the core point q and the position data of the data point p i and/or the data point s i,j .
  • the core point taking the velocity vector value v(q) of the core point q as a two-dimensional vector [v x (q), v y (q)] and the position data of the data point as polar coordinates as an example, the core point
  • the radial projection component of the velocity vector value v(q) of q at the data point p and the data point p meet the fourth predefined threshold, and the corresponding compatible neighborhood can be expressed as:
  • N rrc (q) represents the neighborhood composed of data points that meet the compatibility condition of the core point q; N(q) represents the neighborhood of the core point q; v x (q) represents the velocity vector v( q) component in the x-axis direction; v y (q) represents the component of the velocity vector v(q) of the core point q in the y-axis direction; ⁇ p represents the azimuth angle of the data point p; Indicates the radial velocity of the data point p; D T is the threshold of the compatibility neighborhood.
  • the position data of the data point can also be rectangular coordinates.
  • the cosine and sine of the azimuth angle of the data point p can be obtained from the rectangular coordinates (x p , y p ) of the position of the data point. Go into details again.
  • the value of the compatibility neighborhood threshold can be set according to experience and/or application scenarios.
  • the compatibility neighborhood threshold may be determined according to the error standard deviation of the radial velocity data of the data point or the standard deviation of the error between the radial velocity data of the data point and the radial velocity projection component.
  • the compatibility neighborhood threshold can be the error standard deviation of the radial velocity data or m times the standard deviation of the radial velocity data and the radial velocity projection component of the data point.
  • m can be 1.5, 2, 3, etc. ; Or, m can be determined according to a predefined probability such as 90%, 95%, 97%, 99%, etc.
  • the velocity vector value v(q) of the core point q is a three-dimensional vector [v x (q), v y (q), v z (q)], and the position data of the data point p is a ball Taking the coordinates as an example, the velocity vector value v(q) of the core point q in the radial projection of the data point p and the radial projection component of the data point p and the data point p meet the fourth predefined threshold, corresponding to the core point q
  • the neighborhood formed by the data points of the compatibility condition can be expressed as:
  • N rrc (q) represents the neighborhood composed of data points that meet the compatibility condition of the core point q; N(q) represents the neighborhood of the core point q; v x (q) represents the velocity vector v( q) component in the x-axis direction; v y (q) represents the component of the velocity vector v(q) of the core point q in the y-axis direction; v z (q) represents the velocity vector v(q) of the core point q in z Axis direction component; Represents the pitch angle of data point p; ⁇ p represents the azimuth angle of data point p; Indicates the radial velocity of the data point p; D T is the threshold of the compatibility neighborhood.
  • the position data of the data point can also be three-dimensional rectangular coordinates.
  • the pitch and azimuth cosine and azimuth sine of the data point p can be based on the rectangular coordinates (x p , y p ,z p ) is obtained, and will not be described in detail here.
  • cluster C(q) includes the following data points:
  • Cluster C(q) includes the following data points: core point q, data point p i and data point v j,k ,
  • the data points v j,k are the neighbors of the data point u j satisfy the compatibility condition data points data points within the domain of u j N (u j)
  • the data point p i and/or the data point v j,k satisfy the compatibility condition: the radial velocity data of the data point p i and/or the data point v j,k is the velocity vector value v(q ) At the data point p i and/or the data point v j,k the radial projection component meets the fourth predefined threshold, the velocity vector value v(q) of the core point q is at the data point p i and/or the data point v j The radial projection component of k is obtained from the velocity vector value v(q) of the core point q and the position data of the data point p i and/or the data point v j,k .
  • the above core point may be a data point whose neighborhood size meets a predefined threshold, and at the same time, the size of its compatibility neighborhood also meets a predefined threshold.
  • the compatibility neighborhood is a set of data points in the first data point set that meets the above compatibility condition.
  • the above definition of the core point is applicable to the above core point q and core point u j, etc., which are not listed here.
  • the clustering method provided in the embodiment of the present application further includes: acquiring a second data point set, where the data points included in the second data point set are the data points in the first data point set except for the data points included in the cluster C(q) And use the method of step 120 and the aforementioned method of step 130 to determine a cluster from the second set of data points.
  • the data point set A determine the core point of the data point set A and the candidate velocity vector value of the core point, and determine one from the data point set A according to the core point and the candidate velocity vector value of the core point Cluster #1, and the number of data points included in the cluster #1 is less than the number of data points included in the data point set A.
  • the data point set B can be obtained, which is the difference between the data point set A and the cluster #1, and the data point set B is clustered to obtain the cluster #2.
  • the specific method for obtaining cluster #2 is the same as the method for obtaining cluster #1.
  • the target velocity corresponding to the cluster C(q) is the velocity vector value v(q) of the core point q.
  • the target position corresponding to the cluster C(q) is the weighted sum of the positions of the data points in the neighborhood N(q) of the core point q.
  • the clustering method provided by this application clusters data points through the core point q and the velocity vector value v(q) of the core point q in the data point set, which can make full use of the velocity vector information of the core point q to avoid the path.
  • the finiteness of velocity data as component information while reducing the sensitivity of spatial position data to input parameters, effectively improving the accuracy and reliability of clustering.
  • the core point q and the velocity vector value of the core point q in the data point set can be determined in different ways, which is suitable for various application scenarios. For example, it is suitable for scenarios where the data points in the data point collection are sparse. For example, it is suitable for scenes with dense data points in a data point collection.
  • FIG. 2 shows a schematic flowchart of a clustering method 200 provided in an embodiment of the present application.
  • the clustering method 200 includes step 210 to step 250, and step 210 to step 250 are introduced below. It should be understood that FIG. 2 is only for illustration, and does not constitute any limitation to the clustering method 100 provided in the present application.
  • Fig. 3 shows a schematic diagram of a data point set provided by an embodiment of the present application.
  • the data point set #1 (ie, an example of the first data point set in method 100) includes 10 data points, which are data point 1, data point 2, data point 3, and data point. 4. Data point 5, data point 6, data point 7, data point 8, data point 9, data point 10.
  • the distances between different data points are not all the same.
  • the distance between data point 1 and data point 9 is greater than the distance between data point 1 and data point 6.
  • the distance between data point 2 and data point 4 is approximately the same as the distance between data point 1 and data point 2.
  • At least one cluster #1 can be obtained in data point set #1, where cluster #1 contains data points Data point 1, data point 6, and data point 10 in set #1.
  • FIG. 3 is only for illustration, and does not constitute any limitation to the first data point set and/or cluster C(q) in this application.
  • the first data point set and/or cluster C(q) may include more or fewer data points.
  • the distance of each data point in the first data point set and/or cluster C(q) is closer or farther.
  • Step 210 Obtain information about each data point in data point set #1 (that is, an example of the first data point set in method 100).
  • the information of each data point includes position data and radial velocity data.
  • the method of obtaining the information of the data point in step 210 is the same as the method of obtaining the information of the data point in step 110. For the sake of brevity, details are not repeated here.
  • Step 220 Determine the core point of the data point set #1 and the core point in the neighborhood of the core point.
  • data point 1 can be determined as the core point of data point set #1 according to the location data of each data point in data point set #1, the first predefined threshold, and the second predefined threshold, and The data points contained in the neighborhood N(1) of core point 1 are data point 1, data point 2, and data point 6.
  • the data point 6 in the neighborhood N(1) of data point 1 is the core point in N(1)
  • the data point contained in the neighborhood N(6) of the core point 6 is the data Point 6, data point 1, data point 10.
  • the core point in the data point set #1 and the core point in the neighborhood of the core point may also be determined in a predefined manner.
  • the method of determining the core point 1 in the data point set #1 and the method of determining the core point 6 in the neighborhood N(1) of the core point 1 provided by the embodiment of the present application is the same as the method of determining the core point in step 120
  • the point method is the same. For the sake of brevity, details are not repeated here.
  • Step 230 Determine the velocity vector value of the core point.
  • determining the velocity vector value v(q) of the core point q may include the following steps:
  • the candidate velocity vector value corresponding to the largest weight among the weights of the at least one candidate velocity vector value of the core point q is determined as the velocity vector value v(q) of the core point q.
  • the first candidate velocity vector value of core point 1 can be determined to be v 1 (1), and v 1 (1)
  • the corresponding weight is w 1 (v 1 (1)); in the neighborhood N(1) of core point 1, the second candidate velocity vector value of core point 1 can also be determined according to data point 6 and core point 1.
  • v 2 (1), and the weight corresponding to v 2 (1) is w 2 (v 2 (1)); in the neighborhood N(1) of core point 1, it can be based on data point 2, data point 6 and core point 1.
  • w 1 (v 1 (1)) ⁇ w 2 (v 2 (1)) ⁇ w 3 (v 3 (1)) is greater than w 2 (v 2 (1)), so v 1 (1) can be determined Is the velocity vector value v(1) of the core point 1.
  • the candidate velocity vector value of the core point 6 can be determined only according to the core point 6, the data point 1, and the data point 10. Specifically, according to the data point 10 and the core point 6, it can be determined that the first candidate velocity vector value of the core point 6 is v 1 (6), and the weight corresponding to v 1 (6) is w 1 (v 1 (6) ). According to data point 10 and data point 1, it can be determined that the second candidate velocity vector value of core point 6 is v 2 (6), and the weight corresponding to v 2 (6) is w 2 (v 2 (6)). In the case of w 1 (v 1 (6))>w 2 (v 2 (6)), v 1 (6) can be determined as the velocity vector value v(6) of the core point 6.
  • the method for determining the velocity vector value v(1) of the core point 1 is specifically introduced below. It should be understood that the following method may also be used to obtain the velocity vector value v(6) of the core point 6.
  • the first candidate velocity vector value v 1 (1) of core point 1 can be obtained as follows:
  • the candidate velocity vector value of core point 1 is determined according to WLS, and the candidate velocity vector value v 1 (1) of core point 1 satisfies the following expression:
  • v 1 (1) can also be used to determine v 2 (1) and v 3 (1).
  • the weight w 1 (v 1 (1)) of the candidate velocity vector value v 1 (1) of the core point 1 satisfies the following expression:
  • ⁇ w 1,1 (v 1 (1)) represents the weight of the core point 1 relative to the candidate velocity vector value v 1 (1)
  • ⁇ w 1,2 (v 1 (1)) represents the data point 2 relative to the candidate velocity The weight of the vector value v 1 (1).
  • the method of determining w 1 (v 1 (1)) can be used to determine w 2 (v 2 (1)) and w 3 (v 3 (1)).
  • the weight ⁇ w 1,2 (v 1 (1)) of data point 2 relative to the candidate velocity vector value v 1 (1) satisfies the following expression:
  • the method of determining ⁇ w 1,2 (v 1 (1)) can be used to determine ⁇ w 1,1 (v 1 (1)).
  • Step 240 Determine a cluster from the data point set #1 according to the core point and the velocity vector value of the core point.
  • step 230 it can be known that the velocity vector value of core point 1 is v 1 (1), the data point 6 in the neighborhood N(1) of core point 1 is the core point in neighborhood N(1), and the core point 6 The velocity vector value of is v 1 (6).
  • v 1 of core point 1 (1)
  • the radial projection component of data point 6 and the radial velocity of data point 6 meet the fourth predefined threshold, v 1 of core point 1 (1)
  • the radial projection component of data point 2 and the radial velocity of data point 2 do not meet the fourth predefined threshold.
  • the radial projection component of v 1 (6) of the core point 6 on the data point 10 and the radial velocity of the data point 10 satisfy the fourth predefined threshold.
  • data point 1, data point 6, and data point 10 in data point set #1 can be grouped into one class.
  • the position data of the data point is polar coordinates as an example, the core point 1
  • the radial projection component of the velocity vector value v(1) at the data point 6 and the radial velocity of the data point p meet the fourth predefined threshold, and the neighborhood formed by the data points corresponding to the compatibility condition of the core point 1 can be expressed as :
  • N rrc (1) represents the neighborhood composed of data points that meet the compatibility condition of core point 1; N(1) represents the neighborhood of core point 1; v x (1) represents the velocity vector v( 1) The component in the x-axis direction; v y (1) represents the component of the velocity vector v(1) of the core point 1 in the y-axis direction; ⁇ p represents the azimuth angle of the data point p; Indicates the radial velocity of the data point p; D T is the threshold of the compatibility neighborhood.
  • step 120 For the setting method of the size of DT , refer to step 120 in method 100.
  • Step 250 Obtain data point set #2 (ie, an example of the second data point set in method 100), and cluster the data points in data point set #2 using the method of step 220 to step 240
  • step 210 to step 240 it also includes acquiring data point set #2, and the data points included in acquiring data point set #2 are specifically shown in FIG. 4.
  • Fig. 4 shows a schematic diagram of another data point set provided by an embodiment of the present application.
  • Data point set #2 includes 7 data points, which are data point 2, data point 3, data point 4, data point 5, data point 7, data point 8, and data point 9.
  • Clustering the data points in the data point set #2 includes: determining the core point of the data point set #2 and the candidate velocity vector value of the core point, and according to the core point of the data point set #2 and the core point Candidate velocity vector value, determine another cluster from data point set #2.
  • the method of step 220 to step 240 may be used to cluster the data points in the data point set #2. For the sake of brevity, details are not repeated here.
  • the clustering method provided in this application does not acquire data point set #2.
  • step 250 is not executed.
  • the clustering method provided by the embodiment of the application clusters data points through the core point 1 in the data point set #1 and the velocity vector value v(1) of the core point 1, which can make full use of the velocity vector of the core point 1.
  • the value v(1) information avoids the limitation of radial velocity data as component information, and reduces the sensitivity of spatial position data information to input parameters, thereby achieving the purpose of accurately clustering data points.
  • the core point 1 and the velocity vector value v(1) of the core point 1 in the data point set can be determined in different ways, which is suitable for various application scenarios. For example, it is suitable for scenarios where the data points in the data point collection are sparse. For example, it is suitable for scenes with dense data points in a data point collection.
  • Fig. 5 shows a schematic diagram of another data point set provided by an embodiment of the present application.
  • Data point set #1 includes 4 data points, which are data point 1, data point 2, data point 3, and data point 4.
  • the clustering method 100 provided in the embodiment of the present application may be used to cluster the data point set #1. For the sake of brevity, details are not repeated here.
  • FIG. 1 to FIG. 5 The clustering method provided by the present application is described in detail above in conjunction with FIGS. 1 to 5. It should be understood that the methods in FIG. 1 to FIG. 5 are merely illustrative, and do not constitute any limitation to the present application.
  • FIG. 6 shows a schematic structural diagram of a clustering apparatus 600 provided in an embodiment of the present application.
  • the clustering device 600 includes: a transceiver unit 610 and a processing unit 620. Wherein, the transceiver unit 610 and the processing unit 620 communicate with each other through an internal connection path, and transfer control and/or data signals.
  • the transceiver unit 610 is configured to obtain a first data point set, where the first data point set includes at least two data points, and the information of each data point in the first data point set includes position data and radial velocity data;
  • the processing unit 620 is configured to determine the core point q and the velocity vector value v(q) of the core point q from the first data point set;
  • the processing unit 620 is further configured to determine a cluster C(q) from the first data point set according to the core point q and the velocity vector value v(q) of the core point q, and the cluster C(q) The radial velocity of each data point in and the velocity vector value v(q) satisfy the compatibility condition.
  • the core point q is a data point in the pre-designated first data point set; or,
  • the core point q is the data point q'in the first data point set, where the number of data points in the first data point set contained in the neighborhood N(q') of the data point q'satisfies the first A predefined threshold.
  • the neighborhood N(q’) of the data point q’ is a predefined neighborhood; or,
  • the neighborhood N(q') of the data point q' is a set of data points in the first data set whose distance from the data point q'satisfies a second predefined threshold, wherein the distance is based on the data point q'
  • the position data of and the position data of the data points in the first data set are determined, or the distance is determined based on the position data and radial velocity data of the data point q'and the positions of the data points in the first data set
  • the data and radial velocity data are determined.
  • the velocity vector value v(q) of the core point q is a predefined velocity vector value
  • the velocity vector value v(q) of the core point q is determined according to the data points contained in the neighborhood N(q) of the core point q.
  • the processing unit 620 is further configured to:
  • the core point q and the position data and radial velocity data of one or more data points contained in the neighborhood N(q) of the core point q are determined based on the following relational expression At least one candidate velocity vector value of the core point q;
  • v c (q) is the c-th candidate velocity vector of the core point q, c ⁇ 1, and s is the core point q or the neighborhood N(q) of the core point q to determine the v c (q) data points
  • Is the radial velocity data of data point s
  • n s is and The corresponding error.
  • h s is the direction cosine vector, where h s is obtained from the position data of the data point s.
  • the processing unit 620 is further configured to:
  • the velocity vector value v(q) of the core point q is determined.
  • the weight of the at least one candidate velocity vector value is that the core point q and/or the data point contained in the neighborhood N(q) of the core point q is relative to the at least one candidate velocity vector
  • the position data and radial velocity data of the data points in the first data point set contained in the neighborhood N(q) of the core point q are obtained.
  • the weight of a data point t contained in the neighborhood N(q) of the core point q relative to the candidate velocity vector value v c (q) is based on the candidate velocity vector value v c (q )
  • the difference between the radial projection component of the data point t and the radial velocity data of the data point t is obtained, where the candidate velocity vector value v c (q) is obtained by the radial projection component of the data point t according to the The candidate velocity vector value v c (q) and the position data of the data point t are obtained.
  • the processor is also used to:
  • the candidate velocity vector value corresponding to the weight of the candidate velocity vector value greater than or equal to the third predefined threshold among the weights of the at least one candidate velocity vector value is determined as the velocity vector value v(q) of the core point q.
  • the compatibility condition is that the radial projection component of the velocity vector value at the data point and the radial velocity of the data point meet a fourth predefined threshold, and the velocity vector value is at the radius of the data point.
  • the projection component is determined according to the velocity vector value and the position data of the data point.
  • the cluster C(q) includes the following data points: the core point q, the data point p i , the data point s i,j ,
  • the data point s i,j is the neighbor of the data point p i
  • the data point p i and/or the data point s i,j meets the compatibility condition: the radial velocity data of the data point p i and/or the data point s i,j is at the core point q The velocity vector value v(q) at the data point p i and/or the radial projection component of the data point s i,j satisfies the fourth predefined threshold, and the velocity vector value v(q) of the core point q is in the data point p i and/or the data point s i, j The radial projection component of the point p i and/or the data point s i,j is based on the velocity vector value v(q) of the core point q and the position data of the data point p i and/or the data point s i,j get.
  • the cluster C(q) includes the following data points: the core point q, the data point p i, and the data point v j,k ,
  • the data point p i and/or the data point v j,k satisfying the compatibility condition is: the radial velocity data of the data point p i and/or the data point v j,k is at the core point q
  • the radial projection component of the velocity vector value v(q) at the data point p i and/or the data point v j,k meets the fourth predefined threshold, and the velocity vector value v(q) of the core point q is in the data point p i and/or the data point v j,k.
  • the radial projection component of the point p i and/or the data point v j,k is based on the velocity vector value v(q) of the core point q and the position data of the data point p i and/or the data point v j,k get.
  • the target velocity corresponding to the cluster C(q) is the velocity vector value v(q) of the core point q;
  • the target position corresponding to the cluster C(q) is the weighted sum of the positions of the data points contained in the cluster C(q).
  • FIG. 7 shows a schematic structural diagram of a clustering device 700 provided in an embodiment of the present application.
  • the clustering device 700 includes a transceiver 710, a processor 720, and a memory 730.
  • the transceiver 710, the processor 720 and the memory 730 communicate with each other through internal connection paths to transfer control and/or data signals.
  • the memory 730 is used to store computer programs, and the processor 710 is used to call from the memory 730. And run the computer program to control the transceiver 720 to send and receive signals.
  • the function of the transceiver 710 corresponds to the specific function of the transceiver unit 610 shown in FIG. 6, and will not be repeated here.
  • the function of the processor 720 corresponds to the specific function of the processing unit 620 shown in FIG. 6, and details are not described herein again.
  • the processor in the embodiments of the present application may be a central processing unit (central processing unit, CPU), and the processor may also be other general-purpose processors, digital signal processors (digital signal processors, DSP), and application-specific integrated circuits. (application specific integrated circuit, ASIC), ready-made programmable gate array (field programmable gate array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc.
  • the general-purpose processor may be a microprocessor or the processor may also be any conventional processor or the like.
  • the memory in the embodiments of the present application may be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory.
  • the non-volatile memory can be read-only memory (ROM), programmable read-only memory (programmable ROM, PROM), erasable programmable read-only memory (erasable PROM, EPROM), and electrically available Erase programmable read-only memory (electrically EPROM, EEPROM) or flash memory.
  • the volatile memory may be random access memory (RAM), which is used as an external cache.
  • RAM random access memory
  • static random access memory static random access memory
  • DRAM dynamic random access memory
  • DRAM synchronous dynamic random access memory
  • Access memory synchronous DRAM, SDRAM
  • double data rate synchronous dynamic random access memory double data rate SDRAM, DDR SDRAM
  • enhanced synchronous dynamic random access memory enhanced SDRAM, ESDRAM
  • synchronous connection dynamic random access memory Take memory (synchlink DRAM, SLDRAM) and direct memory bus random access memory (direct rambus RAM, DR RAM).
  • the above-mentioned embodiments may be implemented in whole or in part by software, hardware, firmware or any other combination.
  • the above-mentioned embodiments may be implemented in the form of a computer program product in whole or in part.
  • the computer program product includes one or more computer instructions or computer programs.
  • the processes or functions described in the embodiments of the present application are generated in whole or in part.
  • the computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
  • the computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium.
  • the computer instructions may be transmitted from a website, computer, server, or data center. Transmission to another website, computer, server or data center via wired (such as infrared, wireless, microwave, etc.).
  • the computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or a data center that includes one or more sets of available media.
  • the usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium.
  • the semiconductor medium may be a solid state drive.
  • At least one refers to one or more, and “multiple” refers to two or more.
  • the following at least one item (a)” or similar expressions refers to any combination of these items, including any combination of a single item (a) or a plurality of items (a).
  • at least one item (a) of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple .
  • the size of the sequence number of the above-mentioned processes does not mean the order of execution, and the execution order of each process should be determined by its function and internal logic, and should not correspond to the embodiments of the present application.
  • the implementation process constitutes any limitation.
  • the disclosed system, device, and method can be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the units is only a logical function division, and there may be other divisions in actual implementation, for example, multiple units or components may be combined or It can be integrated into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of the present application essentially or the part that contributes to the existing technology or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including Several instructions are used to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program code .

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Image Analysis (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请提供了一种聚类的方法,该聚类的方法可以用于对数据集合中的数据点进行聚类。例如,可以用于对辅助驾驶和自动驾驶、无人机、舰载以及星载传感器和机器人等应用场景中获取的数据进行聚类。本申请提供的聚类的方法,通过数据点集合中的核心点q并确定核心点q的速度矢量值v(q),可以充分利用核心点q的速度矢量信息,避免径向速度数据作为分量信息的有限性,同时减少了空间位置数据信息对输入参数的敏感性,有效提高了聚类结果的准确度和可靠性。

Description

一种聚类的方法和装置
本申请要求于2020年04月30日提交中国专利局、申请号为202010368452.0、申请名称为“一种聚类的方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及数据处理领域,并且更具体地,涉及一种聚类的方法和装置。
背景技术
在先进驾驶辅助系统(advanced driver assistant system,ADAS)或者自动驾驶(autonomous driving,AD)系统中通常配置多种传感器,例如雷达、声纳、超声波传感器、视觉传感器如摄像头或者相机等,用于感知周边环境及目标信息。利用上述传感器获取的信息,可以实现对周边环境及物体的分类、识别以及跟踪等功能。随着传感器能力特别是空间分辨力的提升,对于一个距离传感器比较近的目标,在一次扫描过程中,传感器会产生多个测量数据。这类目标通常称为扩展目标。不同于点目标,扩展目标的维度或者尺寸将会跨越多个传感器的分辨单元。此外传感器一次扫描过程中,可能包含多个扩展目标,其中每个目标的数据可以包括位置和径向速度或者速度分量信息。分别确定并分离来自一个扩展目标的测量数据,是后续处理例如跟踪或者分类的前提/基础。因此,通过聚类方法对来自传感器的数据集进行聚类,分别确定并分离来自一个扩展目标的测量数据十分必要。
基于密度的聚类算法是目前应用较为广泛的聚类算法。例如,DBSCAN(density-based spatial clustering of applications with noise,DBSCAN)聚类及其扩展例如HDBSCAN(Hierarchical DBSCAN)或者OPTICS(ordering points to identify the clustering structure)等,可以基于数据点的空间位置信息对扩展目标进行聚类。上述基于密度的聚类方法应用于来自传感器的数据集时面临以下问题:一方面,上述方法对于输入参数比较敏感,对于不同的目标需要不同的参数配置,从而导致上述聚类方法难以达到预期目标,例如,参数阈值过小时,容易将同一聚类分割;参数阈值过大时,容易将不同聚类合并;另一方面,上述方法适用的数据集中的点的数据通常为相同类的数据,例如同为2维或者3维的空间位置矢量。当扩展用于同时包含位置和速度分量的数据时,直接计算不同点之间的矢量差值时通常差别比较大,聚类效果比较差。
因此,如何有效利用位置和径向速度或者速度分量数据,对数据集合进行有效聚类是目前亟待解决的问题。
发明内容
本申请提供一种聚类的方法和装置,以提高聚类的准确度和可靠性。
第一方面,提供了一种聚类的方法,该方法包括:
获取第一数据点集合,其中该第一数据点集合包括至少两个数据点,该第一数据点集合中的每个数据点的信息包括位置数据和径向速度数据;
从该第一数据点集合中确定核心点q以及该核心点q的速度矢量值v(q);
根据该核心点q以及该核心点q的速度矢量值v(q),从该第一数据点集合中确定聚类C(q),该聚类C(q)中的每个数据点的径向速度与该速度矢量值v(q)满足兼容性条件。
基于上述方案,通过第一数据点集合中的核心点q和核心点q的速度矢量值v(q)对数据点进行聚类,可以充分利用核心点q的速度矢量信息,避免径向速度数据作为分量信息的有限性,同时减少了空间位置数据信息对输入参数的敏感性,有效提高了聚类的准确度和可靠性。
结合第一方面,在第一方面的某些实现方式中,
该核心点q为预先指定的该第一数据点集合中的数据点;或者,
该核心点q为该第一数据点集合中的数据点q’,其中该数据点q’的邻域N(q’)内包含的该第一数据点集合中的数据点的个数满足第一预定义门限。
基于上述方案,可以通过不同的方式确定核心点q,可以满足不同的场景需求或者功能需求,一方面可以由根据外部需求预先指定,对特定的兴趣点或者其周围区域进行聚类;另一方面,可以根据数据点的信息确定数据集中感兴趣的点或者其周围区域,便于自行发现和确定潜在目标,例如可以通过聚类得到的扩展目标,例如,辅助驾驶或者自动驾驶环境中的车辆等。
结合第一方面,在第一方面的某些实现方式中,
该数据点q’的邻域N(q’)为预定义的邻域;或者,
该数据点q’的邻域N(q’)为与该数据点q’的距离满足第二预定义门限的该第一数据点集合中的数据点的集合,该距离根据该数据点q’的位置数据和该第一数据点集合中的数据点的位置数据确定,或者,该距离根据该数据点q’的位置数据和径向速度数据、以及该第一数据点集合中的数据点的位置数据和径向速度数据确定。
基于上述方案,可以通过不同的方式确定数据点q’的邻域N(q’),确定数据点q’的邻域N(q’)的灵活性较高,适用于各种的应用场景。一方面可以由根据外部需求预先指定,例如,对特定的兴趣点的邻域进行指定;另一方面,可以根据数据点的信息确定数据集中感兴趣的点的邻域,便于自行发现和确定潜在目标。
结合第一方面,在第一方面的某些实现方式中,
该核心点q的速度矢量值v(q)为预定义的速度矢量值;或者,
该核心点q的速度矢量值v(q)为根据该核心点q的邻域N(q)包含的数据点确定的。
基于上述方案,可以通过不同的方式确定核心点q的速度矢量值v(q),确定核心点q的速度矢量值v(q)的灵活性较高,适用于各种的应用场景。一方面可以由根据外部接口提供的速度矢量值确定;另一方面,可以根据该核心点q的邻域N(q)内数据点的信息确定,便于自行确定目标的速度矢量。
结合第一方面,在第一方面的某些实现方式中,
该核心点q的速度矢量值v(q)为根据该核心点q的邻域N(q)包含的数据点确定的,包括:
根据该核心点q以及该核心点q的邻域N(q)包含的一个或多个数据点的信息,确定该核心点q的至少一个候选速度矢量值;
根据该核心点q的邻域N(q)包含的数据点,以及该核心点q的至少一个候选速度矢量值,确定该核心点q的速度矢量值v(q)。
结合第一方面,在第一方面的某些实现方式中,
该核心点q以及该核心点q的邻域N(q)包含的一个或多个数据点的信息,确定该核心点q的至少一个候选速度矢量值,包括:
根据该核心点q以及该核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据,基于以下关系式,确定该核心点q的至少一个候选速度矢量值;
Figure PCTCN2021078386-appb-000001
其中,v c(q)为该核心点q的至少一个候选速度矢量,s为核心点q或者该核心点q的邻域内的用于确定该v c(q)的数据点,
Figure PCTCN2021078386-appb-000002
为数据点s的径向速度数据,n s为与
Figure PCTCN2021078386-appb-000003
对应的误差。h s为方向余弦矢量,其中h s根据该数据点s的位置数据得到。结合第一方面,在第一方面的某些实现方式中,
该根据该核心点q的邻域N(q)包含的数据点,以及该核心点q的至少一个候选速度矢量值,确定该核心点q的速度矢量值v(q),包括:
根据该核心点q,以及该核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据,确定该核心点q的至少一个候选速度矢量值的权重;
根据该至少一个候选速度矢量值的权重,确定该核心点q的速度矢量值v(q)。
结合第一方面,在第一方面的某些实现方式中,
该至少一个候选速度矢量值的权重为该核心点q和/或该核心点q的邻域N(q)包含的的数据点相对于该至少一个候选速度矢量值的权重的累加值;
其中该核心点q和/或该核心点q的邻域N(q)包含的数据点相对于该候选速度矢量值的权重根据该核心点q和/或该核心点q的邻域N(q)包含的该第一数据点集合内的数据点的位置数据和径向速度数据得到。
结合第一方面,在第一方面的某些实现方式中,
该核心点q的邻域N(q)包含的一个数据点t相对于候选速度矢量值v c(q)的权重根据该候选速度矢量值v c(q)在该数据点t的径向投影分量与该数据点t的径向速度数据的差值得到,其中,该候选速度矢量值v c(q)在该数据点t的径向投影分量根据该候选速度矢量值v c(q)以及该数据点t的位置数据得到。
结合第一方面,在第一方面的某些实现方式中,
该根据该至少一个候选速度矢量值的权重,确定该核心点q的速度矢量值v(q),包括:
将该至少一个候选速度矢量值的权重中最大候选速度矢量值的权重对应的候选速度矢量值,确定为该核心点q的速度矢量值v(q);或者,
将该至少一个候选速度矢量值的权重中大于等于第三预定义门限的候选速度矢量值的权重对应的候选速度矢量值,确定为该核心点q的速度矢量值v(q)。
结合第一方面,在第一方面的某些实现方式中,
该兼容性条件为速度矢量值在数据点的径向投影分量与数据点的径向速度满足第四预定义门限,该速度矢量值在数据点的径向投影分量为根据该速度矢量值和该数据点的位 置数据确定。
结合第一方面,在第一方面的某些实现方式中,
该聚类C(q)包括以下数据点:该核心点q,数据点p i和数据点s i,j
该数据点p i为该核心点q的邻域N(q)内满足兼容性条件的数据点,i=1,…,N q,该数据点s i,j为该数据点p i的邻域N(p i)内满足兼容性条件的数据点,i=1,…,N q,j=1,…,N pi
其中,该数据点p i和/或该数据点s i,j满足该兼容性条件为:该数据点p i和/或该数据点s i,j的径向速度数据在该核心点q的速度矢量值v(q)在该数据点p i和/或该数据点s i,j的径向投影分量满足第四预定义门限,该核心点q的速度矢量值v(q)在该数据点p i和/或该数据点s i,j的径向投影分量根据该核心点q的速度矢量值v(q)以及该数据点p i和/或该数据点s i,j的位置数据得到。
结合第一方面,在第一方面的某些实现方式中,
该聚类C(q)包括以下数据点:该核心点q、数据点p i和数据点v j,k
该数据点p i为该核心点q的邻域N(q)内满足该核心点q的兼容性条件的数据点,i=1,…,N q,该该该该数据点v j,k为该数据点u j的邻域N(u j)内满足该数据点u j的兼容性条件的数据点,该数据点u j为该数据点p i,i=1,…,N q中满足邻域内包含的数据点的个数满足该第二预定义门限的数据点,j=1,…,M q,k=1,…,N uj
其中,该数据点p i和/或该数据点v j,k满足该兼容性条件为:该数据点p i和/或该数据点v j,k的径向速度数据在该核心点q的速度矢量值v(q)在该数据点p i和/或该数据点v j,k的径向投影分量满足第四预定义门限,该核心点q的速度矢量值v(q)在该数据点p i和/或该数据点v j,k的径向投影分量根据该核心点q的速度矢量值v(q)以及该数据点p i和/或该数据点v j,k的位置数据得到。
结合第一方面,在第一方面的某些实现方式中,
该聚类C(q)对应的目标速度为该核心点q的速度矢量值v(q);
该聚类C(q)对应的目标位置为该聚类C(q)包含的数据点的位置的加权和。
第二方面,提供了一种聚类的装置,该装置包括:
收发单元,用于获取第一数据点集合,其中该第一数据点集合包括至少两个数据点,该第一数据点集合中的每个数据点的信息包括位置数据和径向速度数据;
处理单元,用于从该第一数据点集合中确定核心点q以及该核心点q的速度矢量值v(q);
该处理单元,还用于根据该核心点q以及该核心点q的速度矢量值v(q),从该第一数据点集合中确定聚类C(q),该聚类C(q)中的每个数据点的径向速度与该速度矢量值v(q)满足兼容性条件。
结合第二方面,在第二方面的某些实现方式中,
该核心点q为预先指定的该第一数据点集合中的数据点;或者,
该核心点q为该第一数据点集合中的数据点q’,其中该数据点q’的邻域N(q’)内包含的该第一数据点集合中的数据点的个数满足第一预定义门限。
结合第二方面,在第二方面的某些实现方式中,
该数据点q’的邻域N(q’)为预定义的邻域;或者,
该数据点q’的邻域N(q’)为与该数据点q’的距离满足第二预定义门限的该第一数据集 合中的数据点的集合,其中该距离根据该数据点q’的位置数据和该该第一数据集合中的数据点的位置数据确定,或者,该距离根据该数据点q’的位置数据和径向速度数据以及该该第一数据集合中的数据点的位置数据和径向速度数据确定。
结合第二方面,在第二方面的某些实现方式中,
该核心点q的速度矢量值v(q)为预定义的速度矢量值;或者,
该核心点q的速度矢量值v(q)为根据该核心点q的邻域N(q)包含的数据点确定的。
结合第二方面,在第二方面的某些实现方式中,该处理单元还用于:
根据该核心点q以及该核心点q的邻域N(q)包含的一个或多个数据点的信息,确定该核心点q的至少一个候选速度矢量值;
根据该核心点q的邻域N(q)包含的数据点,以及该核心点q的至少一个候选速度矢量值,确定该核心点q的速度矢量值v(q)。
结合第二方面,在第二方面的某些实现方式中,该处理单元还用于:
根据该核心点q以及该核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据,基于以下关系式,确定该核心点q的至少一个候选速度矢量值;
Figure PCTCN2021078386-appb-000004
其中,v c(q)为该核心点q的第c个候选速度矢量,c≥1,s为该核心点q或者该核心点q的邻域N(q)包含的用于确定该v c(q)的数据点,
Figure PCTCN2021078386-appb-000005
为数据点s的径向速度数据,n s为与
Figure PCTCN2021078386-appb-000006
对应的误差。h s为方向余弦矢量,其中h s根据该数据点s的位置数据得到。
结合第二方面,在第二方面的某些实现方式中,该处理单元还用于:
根据该核心点q,以及该核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据,确定该核心点q的至少一个候选速度矢量值的权重;
根据该至少一个候选速度矢量值的权重,确定该核心点q的速度矢量值v(q)。
结合第二方面,在第二方面的某些实现方式中,该至少一个候选速度矢量值的权重为该核心点q和/或该核心点q的邻域N(q)包含的数据点相对于该至少一个候选速度矢量值的权重的累加值;
其中该核心点q和/或该核心点q的邻域N(q)包含的数据点相对于该至少一个候选速度矢量值的权重根据该核心点q和/或该核心点q的邻域N(q)包含的该第一数据点集合内的数据点的位置数据和径向速度数据得到。
结合第二方面,在第二方面的某些实现方式中,该核心点q的邻域N(q)包含的一个数据点t相对于候选速度矢量值v c(q)的权重根据该候选速度矢量值v c(q)在该数据点t的径向投影分量与该数据点t的径向速度数据的差值得到,其中,该候选速度矢量值v c(q)在该数据点t的径向投影分量根据该候选速度矢量值v c(q)以及该数据点t的位置数据得到。
结合第二方面,在第二方面的某些实现方式中,该处理器还用于:
将该至少一个候选速度矢量值的权重中最大候选速度矢量值的权重对应的候选速度矢量值,确定为该核心点q的速度矢量值v(q);或者,
将该至少一个候选速度矢量值的权重中大于等于第三预定义门限的候选速度矢量值的权重对应的候选速度矢量值,确定为该核心点q的速度矢量值v(q)。
结合第二方面,在第二方面的某些实现方式中,
该兼容性条件为速度矢量值在数据点的径向投影分量与该数据点的径向速度满足第 四预定义门限,该速度矢量值在数据点的径向投影分量根据该速度矢量值和该数据点的位置数据确定。
结合第二方面,在第二方面的某些实现方式中,
该聚类C(q)包括以下数据点:该核心点q,数据点p i和数据点s i,j
该数据点p i为该核心点q的邻域N(q)内满足兼容性条件的数据点,i=1,…,N q,该数据点s i,j为该数据点p i的邻域N(p i)内满足兼容性条件的数据点,i=1,…,N q,j=1,…,N pi
其中,该数据点p i和/或该数据点s i,j满足该兼容性条件为:该数据点p i和/或该数据点s i,j的径向速度数据在该核心点q的速度矢量值v(q)在该数据点p i和/或该数据点s i,j的径向投影分量满足第四预定义门限,该核心点q的速度矢量值v(q)在该数据点p i和/或该数据点s i,j的径向投影分量根据该核心点q的速度矢量值v(q)以及该数据点p i和/或该数据点s i,j的位置数据得到。
结合第二方面,在第二方面的某些实现方式中,
该聚类C(q)包括以下数据点:该核心点q、数据点p i和数据点v j,k
该数据点p i为该核心点q的邻域N(q)内满足该核心点q的兼容性条件的数据点,i=1,…,N q,该数据点v j,k为该数据点u j的邻域N(u j)内满足该数据点u j的兼容性条件的数据点,该数据点u j为该数据点p i,i=1,…,N q中满足邻域内包含的数据点的个数满足该第二预定义门限的数据点,j=1,…,M q,k=1,…,N uj
其中,该数据点p i和/或该数据点v j,k满足该兼容性条件为:该数据点p i和/或该数据点v j,k的径向速度数据在该核心点q的速度矢量值v(q)在该数据点p i和/或该数据点v j,k的径向投影分量满足第四预定义门限,该核心点q的速度矢量值v(q)在该数据点p i和/或该数据点v j,k的径向投影分量根据该核心点q的速度矢量值v(q)以及该数据点p i和/或该数据点v j,k的位置数据得到。
结合第二方面,在第二方面的某些实现方式中,
该聚类C(q)对应的目标速度为该核心点q的速度矢量值v(q);
该聚类C(q)对应的目标位置为该聚类C(q)包含的数据点的位置的加权和。
第三方面,提供了一种设备,该设备包括存储器和处理器,该存储器用于存储指令,该处理器用于读取该存储器中存储的指令,使得该装置执行上述第一方面及第一方面的任意可能的实现方式中的方法。
第四方面,提供了一种处理器,包括:输入电路、输出电路和处理电路。所述处理电路用于通过所述输入电路接收信号,并通过所述输出电路发射信号,使得所述第一方面中的任一方面,以及第一方面中任一种可能实现方式中的方法被实现。
在具体实现过程中,上述处理器可以为芯片,输入电路可以为输入管脚,输出电路可以为输出管脚,处理电路可以为晶体管、门电路、触发器和各种逻辑电路等。输入电路所接收的输入的信号可以是由例如但不限于接收器接收并输入的,输出电路所输出的信号可以是例如但不限于输出给发射器并由发射器发射的,且输入电路和输出电路可以是同一电路,该电路在不同的时刻分别用作输入电路和输出电路。本申请实施例对处理器及各种电路的具体实现方式不做限定。
第五方面,提供了一种处理装置,包括处理器和存储器。该处理器用于读取存储器中存储的指令,并可通过接收器接收信号,通过发射器发射信号,以执行第一方面以及第一方面任一种可能实现方式中的方法。
可选地,所述处理器为一个或多个,所述存储器为一个或多个。
可选地,所述存储器可以与所述处理器集成在一起,或者所述存储器与处理器分离设置。
在具体实现过程中,存储器可以为非瞬时性(non-transitory)存储器,例如只读存储器(read only memory,ROM),其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请实施例对存储器的类型以及存储器与处理器的设置方式不做限定。
应理解,相关的数据交互过程例如发送指示信息可以为从处理器输出指示信息的过程,接收能力信息可以为处理器接收输入能力信息的过程。具体地,处理输出的数据可以输出给发射器,处理器接收的输入数据可以来自接收器。其中,发射器和接收器可以统称为收发器。
第六方面,提供了一种计算机可读存储介质,用于存储计算机程序,该计算机程序包括用于执行上述第一方面及上述第一方面的任意可能的实现方式中的方法的指令。
第七方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面及上述第一方面的任意可能的实现方式中的方法。
第八方面,提供了一种芯片,包括至少一个处理器和接口;所述至少一个所述处理器,用于调用并运行计算机程序,以使所述芯片执行上述第一方面及上述第一方面的任意可能的实现方式中的方法。
附图说明
图1是本申请实施例提供的一种聚类的方法100的示意性流程图。
图2是本申请实施例提供的聚类的方法200的示意性流程图。
图3是本申请实施例提供的一个数据点集合的示意图。
图4是本申请实施例提供的另一个数据点集合的示意图。
图5是本申请实施例提供的又一个数据点集合的示意图。
图6是本申请实施例提供的聚类的装置600的示意性结构图。
图7本申请实施例提供的聚类的设备700的示意性结构图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
本申请将围绕包括多个设备、组件、模块等的系统来呈现各个方面、实施例或特征。应当理解和明白的是,各个系统可以包括另外的设备、组件、模块等,并且/或者可以并不包括结合附图讨论的所有设备、组件、模块等。此外,还可以使用这些方案的组合。
图1示出了本申请实施例提供的一种聚类的方法100的示意性流程图。该方法100的执行主体可以是传感器系统或者融合感知系统或者集成上述系统的规划/控制系统如辅助驾驶或者自动驾驶系统等。或者,该方法100的执行主体也可以是软件或者硬件(如与相应传感器通过无线或者有线连接或者集成在一起的数据处理装置)。以下不同的执行步骤可以集中式实现,或者,以下不同的执行步骤也可以分布式实现。
如图1所示,该聚类的方法100包括步骤110至骤130,下面对步骤110至骤130进 行详细介绍。
步骤110,获取第一数据点集合。
其中,第一数据点集合包括至少两个数据点,第一数据点集合中的每个数据点的信息包括位置数据和径向速度数据。
在本申请实施例中,对获取第一数据点集合的方式不作具体限定。
第一数据点集合可以从一个或者多个传感器获取,也可以通过有线或者无线方式从云端获取。该第一数据点集合是从一个或者多个传感器直接测量得到的集合,第一数据点集合也是上述一个或者多个传感器处理过的集合。
在本申请实施例中,传感器可以是雷达传感器,例如,毫米波雷达或者激光雷达。或者,传感器可以是声纳或者超声波传感器。或者,传感器也可以是视觉传感器或者成像传感器,如摄像头或者摄像机。或者,传感器也可以是成像雷达,如激光雷达、合成孔径雷达等。或者,传感器也可以是具有测量频移能力的测向传感器,该测向传感器器除了可以得到方位角或者方位角和俯仰角数据之外,还可以通过测量接收信号相对已知频率的频移得到径向速度数据。
其中,传感器平台可以为可移动的设备。例如,传感器平台可以为车载平台,如汽车、摩托车或者自行车等。或者,传感器平台可以为舰载平台,如船只、轮船、汽艇等。或者,传感器平台可以为车载平台可以是机载平台,如无人机、直升机或者喷气式飞机、气球等。或者,传感器平台可以为星载平台,如卫星等。
在本申请实施例中,数据处理装置可以部署于传感器平台中,即数据处理装置可以与传感器平台集成于一体。或者,该数据处理装置可以部署于传感器平台之外,该数据处理装置与传感器平台可以通过无线网络进行通信。
需要进一步指出的是,此处传感器的物理构成可以是一个或者多个物理传感器。例如,该一个或者多个物理传感器的中各个物理传感器可以分别测量方位角、俯仰角以及径向速度,也可以是从该一个或者多个物理传感器的测量数据导出所述方位角、俯仰角以及径向速度,此处不作具体限定。
示例性的,雷达传感器可以通过获取数据点与雷达传感器的距离、仰俯角、方位角,计算获取该数据点的位置数据。
示例性的,雷达传感器可以通过直接测量获取数据点相对于雷达传感器的径向速度。
在本申请实施例中,对位置数据的格式不作具体限定。
例如,位置数据可以用直角坐标表示。例如,该位置数据可以包括二维直角坐标分量,例如表示为(x,y)。又如,该位置数据可以包括三维直角坐标分量,例如表示为(x,y,z)。
又如,位置数据可以用极坐标表示。例如,该位置数据可以表示为(ρ,θ)。其中,ρ表示距离,θ表示方位角。
再如,位置数据可以用球坐标表示。例如,该位置数据可以表示为
Figure PCTCN2021078386-appb-000007
其中,r表示距离,θ表示方位角,
Figure PCTCN2021078386-appb-000008
表示仰俯角。
步骤120,从第一数据点集合中确定核心点q以及核心点q的速度矢量值v(q)。
在本申请实施例中,对获取核心点q的方式不作具体限定。
作为一种实现方式,核心点q为预先指定的第一数据点集合中的数据点。
具体的,对于第一数据点集合,包括M个数据点,可以指定M个数据点中的第k个 数据点为核心点,其中M≥2,1≤k≤M。
示例性的,假设雷达传感器A获取到的数据点集合A包括3个数据点,分别是数据点1、数据点2、数据点3。在此情况下,可以通过该雷达传感器A预先指定数据点2为核心点。或者,也可以通过雷达传感器B预先指定数据点2为核心点,其中雷达传感器B为与雷达传感器A可以进行通信的雷达传感器。
通过上述方式,可以快速、灵活地获取第一数据点集合中的核心点q。
在本申请实施例中,M个数据点中的第k个数据点可以由外部输入。例如第k个数据点为传感器的视野(field of view,FoV)内某一需要关注的一个点;该外部输入的点可以由系统从本传感器得到,也可以根据其它传感器的信息获取。例如从相机得到关注区域,从雷达传感器的FoV中选择其中的一个点为核心点。
作为另一种实现方式,核心点q为第一数据点集合中的数据点q’,其中数据点q’的邻域N(q’)内包含的第一数据点集合中的数据点的个数满足第一预定义门限。
具体的,数据点q’的邻域N(q’)内包含的第一数据点集合中的数据点的个数满足第一预定义门限,可以是数据点q’的邻域N(q’)内包含的第一数据点集合中的数据点的个数大于或者大于等于第一预定义门限。
应理解的是,数据点q’的邻域N(q’)包含该数据点q’。
在本申请实施例中,第一预定义门限的大小可以根据经验或者应用场景进行设置。
以第一数据点集合为来自传感器的测量数据为例,第一预定义门限的大小可以根据传感器的分辨力以及所要聚类的目标的大小以及目标与传感器的距离等因素确定。
例如,基于毫米波雷达或者激光雷达或者超声波雷达或者声纳,可以根据其距离和/或角度分辨单元大小,计算对应的数据点附近数据点的个数,根据期望的数据点的个数确定第一预定义门限的大小。
例如,第一预定义门限的值可以为3、4、5…等;或者,第一预定义门限的值可以为10等。
可选的,第一预定义门限可以根据确定速度矢量所需要的最小点数设置。具体的,确定速度矢量需要m个数据点,则第一预定义门限为大于等于m的整数。例如,确定二维速度矢量需要至少2个数据点,则第一预定义门限为大于等于2。再如,为了保证二维速度矢量的精度,需要至少l个数据点,则第一预定义门限为大于等于l。例如l=4,6,8,等。
在本申请实施中,可以通过上述不同的方式确定核心点q,可以满足不同的场景需求或者功能需求,一方面可以由根据外部需求预先指定,对特定的兴趣点或者其周围区域进行聚类;另一方面,可以根据数据点的信息确定数据集中感兴趣的点或者其周围区域,便于自行发现和确定潜在目标,例如可以通过聚类得到的扩展目标,例如,辅助驾驶或者自动驾驶环境中的车辆等。
在本申请实施例中,对获取数据点q’的邻域N(q’)方式不作具体限定。
作为一种实现方式,数据点q’的邻域N(q’)为预定义的邻域。
具体的,数据点q’的邻域N(q’)为预定义的邻域,可以包含数据点q’以及第一数据集合中的数据点的子集;具体的,对于第一数据点集合,包括M个数据点,可以指定M个数据点中的j个数据点为数据点q’的邻域N(q’)中包含的数据点,其中M≥2,1≤j≤M。
示例性的,数据点集合A包括6个数据点,分别为数据点1、数据点2、数据点3、数据点4、数据点5、数据点6,可以指定数据点集合A中的2个数据点为数据点q’的邻域N(q’)中包含的数据点,或者,也可以指定数据点集合A中的3个数据点为数据点q’的邻域N(q’)中包含的数据点,或者,也可以指定数据点集合A中的4个数据点为数据点q’的邻域N(q’)中包含的数据点。
作为一种实现,数据点q’的邻域N(q’)为预定义的邻域,可以根据外部输入确定;
例如,可以根据外部输入的位置或者速度矢量值,以及误差协方差矩阵,确定与所述外部输入的位置或者速度矢量值距离最近的第一数据点集合中的数据点为所述数据点q’,
确定外部输入的位置或者速度矢量值的预定义概率范围内的数据点为数据点q’的邻域N(q’),其中预定义概率范围内的数据点根据外部输入的位置或者速度矢量值以及误差协方差矩阵确定;预定义概率可以为90%,95%,99%等,此处不做限定;
示例性的,外部输入的位置或者速度矢量值以及误差协方差矩阵,可以由其它传感器如雷达或者传感器融合系统得到;所述位置或者速度矢量值以及误差协方差矩阵可以从其它传感器或者融合系统得到的状态矢量及其协方差矩阵得到。
再如,可以根据外部输入的边框(Bounding Box),确定与所述数据点q’同在一个边框的数据点为数据点q’邻域N(q’)内的数据点;例如,所述外部输入的边框可以从视觉传感器或者激光雷达等传感器得到。
作为另一种实现方式,数据点q’的邻域N(q’)为与数据点q’的距离满足第二预定义门限的第一数据集合中的数据点的集合,其中该距离根据数据点q’的位置数据和的第一数据集合中的数据点的位置数据确定,或者,该距离根据数据点q’的位置数据和径向速度数据以及该第一数据集合中的数据点的位置数据和径向速度数据确定。
在此情况下,核心点q的邻域N(q)中包括的每个数据点与核心点q之间的个数应该满足第一预定义门限,且核心点q的邻域N(q)中包括的每个数据点与核心点q的距离应该满足第二预定义门限。
具体的,所述与数据点q’的距离满足第二预定义门限可以理解为,与数据点q’的距离小于或者小于等于第二预定义门限。
示例性的,以数据点集合中的数据点k为例,数据点k的邻域N(k)是第一数据点集合的一个子集,N(k)可以表示为:
N(k)={l∈D|d(k,l)≤T 1}
或者,数据点k的邻域N(k)是第一数据点集合的一个子集,N(k)可以表示为:
N(k)={l∈D|d p(k,l)+d v(k,l)≤T 1}
或者,数据点k的邻域N(k)是第一数据点集合的一个子集,N(k)可以表示为:
N(k)={l∈D|d p(k,l)≤T 11,d v(k,l)≤T 12}
其中D为第一数据点集合,d(k,l)表示数据点k和数据点l之间的距离,可以根据数据点的距离数据或者距离和径向速度数据获取;d p(k,l)表示根据数据点的距离数据得到的数据点k和数据点l之间的距离,d v(k,l)表示根据数据点的径向速度数据得到的数据点k和数据点l之间的距离;T 1,T 11,T 12均表示第二预定义门限。
可选的,数据点之间的距离,可以是欧氏距离(Euclidean Distance),也可以是马氏 距离(Mahalanobis Distance),也可以是与上述距离等价的其它距离。
示例性的,可以根据欧氏距离或者马氏距离,以及两个数据点的位置数据,或者两个数据点的位置数据以及径向速度数据,获取两个数据点间的距离。
具体的,两个数据点之间的欧氏距离为:
Figure PCTCN2021078386-appb-000009
具体的,两个数据点之间的马氏距离为:
Figure PCTCN2021078386-appb-000010
上述表达式中,
Figure PCTCN2021078386-appb-000011
为两个数据的矢量差,
Figure PCTCN2021078386-appb-000012
为与
Figure PCTCN2021078386-appb-000013
对应的误差协方差。
以二维位置数据为例,数据点k和数据点l之间的位置差
Figure PCTCN2021078386-appb-000014
为:
Figure PCTCN2021078386-appb-000015
数据点k和数据点l间的欧氏距离d E(k,l)可以表示为:
Figure PCTCN2021078386-appb-000016
以三维位置数据为例,数据点k和数据点l之间的位置差
Figure PCTCN2021078386-appb-000017
为:
Figure PCTCN2021078386-appb-000018
数据点k和数据点l间的欧氏距离d E(k,l)可以表示为:
Figure PCTCN2021078386-appb-000019
在本申请实施例中,第二预定义门限的大小可以根据经验或者应用场景进行设置。
具体的,可以按照所述门限内的数据点位于所在门限的概率确定,例如90%以上的概率,如97%,或者99%等。例如,对于欧氏距离,第二预定义门限可以是对应的误差标准差的倍数,例如1.5、2、3倍的误差标准差等。对于马氏距离,该第二预定义门限可以是1+m/2,或者是3等。其中m为矢量的维度,对于二维位置数据组成的矢量,m=2;三维位置数据组成的矢量或者二维位置数据与径向速度数据组成的矢量,m=3;三维位置数据与径向速度数据组成的矢量m=4。
作为另一种实现方式,核心点q为根据第一数据点集合中的数据点的邻域确定的,其中,数据点的邻域为数据点所在边框(Bounding Box)内的数据点以及与数据点的距离满足第二预定义门限的数据点的集合,数据点的距离根据数据点的位置数据确定,或数据点的距离根据数据点的位置数据和径向速度数据确定。
在一些实现方式中,数据点所在边框(Bounding Box)可以由外部预先指定,例如。其中,可以根据相机或者激光雷达等传感器获取边框信息,该边框可以根据相机或者激光雷达的数据基于机器学习或者计算机视觉或者深度学习等方法获取,此处不加限定。
示例性的,以数据点集合中的数据点k为例,可以将数据点k所在的边框内包括的数据点,以及距离该数据点k的距离小于预设门限值的数据点构成的区域,作为数据点k的邻域。其中,对该预设门限值的大小可以按照如前述设置第二预定义门限的类似方法设置。
在本申请实施中,可以通过上述不同的方式确定数据点q’的邻域N(q’),确定数据点 q’的邻域N(q’)的灵活性较高,适用于各种的应用场景。一方面可以由根据外部需求预先指定,例如,对特定的兴趣点的邻域进行指定;另一方面,可以根据数据点的信息确定数据集中感兴趣的点的邻域,便于自行发现和确定潜在目标。
在本申请实施例中,对获取核心点q的速度矢量值v(q)的方式不作具体限定。
作为一种实现方式,核心点q的速度矢量值v(q)为预定义的速度矢量值。
示例性的,可以通过与传感器A通信的传感器B预定义核心点q的速度矢量值v(q),其中传感器A为获取核心点q的传感器。
示例性的,可以通过其它传感器或者融合系统输入的数据,获取一个预定义的核心点q及该核心点q的速度矢量值v(q)。
具体的,上述其它传感器或者融合系统输入的数据可以包括状态矢量数据X,或者状态矢量数据X及其协方差矩阵X,其中状态矢量X可以包括位置数据和速度矢量数据。根据状态矢量X,从第一数据点集合选择一个数据点作为核心点q,以状态矢量X中包含的速度数据作为核心点q的速度矢量值v(q)。核心点q可以为第一数据点集合中与状态矢量中的位置数据以及速度数据最近的数据点。
通过上述方式,可以快速、灵活地获取第一数据点集合中关注的核心点q及该核心点q的速度矢量值v(q)。作为另一种实现方式,核心点q的速度矢量值v(q)为根据核心点q的邻域N(q)包含的的数据点确定的。
在本申请实施例中,核心点q的速度矢量值v(q)为根据核心点q的邻域N(q)包含的数据点确定的,包括:
根据核心点q以及核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据,确定核心点q的至少一个候选速度矢量值;
根据核心点q的邻域N(q)包含的数据点,以及核心点q的至少一个候选速度矢量值,确定核心点q的速度矢量值。
具体的,核心点q的邻域N(q)包含数据点为p i,i=1,…,|N(q)|,其中,|N(q)|为核心点q的邻域N(q)的大小,也就是N(q)中包含的数据点的个数;可以根据所述核心点q以及数据点p i,i=1,…,|N(q)|中的一个或者多个数据点确定核心点q的至少一个候选速度矢量值。
示例性的,核心点q为第一数据点集合内的数据点3,且核心点q的邻域N(q)包含的第一数据点集合内的数据点为数据点1、数据点4和数据点8。例如,可以根据核心点q=3和数据点1,确定核心点q=3的一个候选速度矢量值。又如,可以根据核心点q=3、数据点4和数据点8,确定核心点q=3的一个候选速度矢量值。为了简洁,此处不再一一列举。
在本申请实施例中,根据核心点q以及核心点q的邻域N(q)包含的一个或多个数据点的信息,确定核心点q的至少一个候选速度矢量值,包括:
根据核心点q以及核心点q的邻域N(q)包含的一个或多个数据点数据点的位置数据和径向速度数据,基于以下关系式,确定核心点q的至少一个候选速度矢量值;
Figure PCTCN2021078386-appb-000020
其中,v c(q)为核心点q的第c个候选速度矢量,c≥1,s为核心点q或者核心点q的邻域内的用于确定候选速度矢量v c(q)的数据点,
Figure PCTCN2021078386-appb-000021
为数据点s的径向速度数据,n s为与
Figure PCTCN2021078386-appb-000022
对应的误差。h s为方向余弦矢量,其中h s根据数据点s的位置数据得到。
具体的,以二维直角坐标或者极坐标为例,方向余弦矢量h s可以表示为:
h s=[cosθ s sinθ s]
或者,方向余弦矢量h s可以表示为:
Figure PCTCN2021078386-appb-000023
具体的,以三维直角坐标或者球坐标为例,方向余弦矢量h s可以表示为:
Figure PCTCN2021078386-appb-000024
或者,方向余弦矢量h s可以表示为:
Figure PCTCN2021078386-appb-000025
其中,
Figure PCTCN2021078386-appb-000026
θ s均为数据点s的位置数据,具体的θ s为数据点s的方位角,
Figure PCTCN2021078386-appb-000027
为数据点s的俯仰角;x s,y s,z s为数据点s的直角坐标位置数据。
本申请提供的聚类的方法,通过核心点q的邻域内的数据点确定核心点q的速度矢量值v(q),并基于此速度矢量值v(q)对数据点进行聚类,可以充分利用目标数据点的位置和径向速度分量信息,重构目标的速度矢量信息。从而可以充分利用核心点q的速度矢量信息,避免径向速度数据作为分量信息的有限性,同时减少了空间位置数据信息对输入参数的敏感性,有效提高了聚类的准确度和可靠性。
在本申请实施例中,对确定核心点q的候选速度矢量值的方法不作具体限定。
例如,根据上述关系公式,可以基于核心点q和核心点q邻域包含的数据点,利用最小二乘法(least squares,LS)或者加权最小二乘法(weighted least squares,WLS)或者最小均方误差(minimum mean squared error,MMSE)或者维纳滤波等获得核心点q的一个候选速度矢量值。
作为一种实现方式,可以以核心点q以及核心点q的邻域N(q)内的点pi,i=1,…,M确定核心点q的候选速度矢量N(q),其中1≤M≤|N(q)|。
以最小二乘法LS为例,根据LS确定核心点q的候选速度矢量值,核心点q的候选速度矢量值v c(q)满足如下表达式:
Figure PCTCN2021078386-appb-000028
其中,v c(q)表示核心点q的候选速度矢量值;h q表示核心点q的方向余弦矢量,h pi表示数据点p i的方向余弦矢量;
Figure PCTCN2021078386-appb-000029
表示核心点q的径向速度数据,
Figure PCTCN2021078386-appb-000030
表示数据点p i的径向速度数据,i=1,…,M。
以加权最小二乘WLS法为例,根据WLS确定核心点q的候选速度矢量值,核心点q的候选速度矢量值v c(q)满足如下表达式:
Figure PCTCN2021078386-appb-000031
其中,
Figure PCTCN2021078386-appb-000032
表示核心点q的径向速度数据的误差方差,
Figure PCTCN2021078386-appb-000033
表示数据点p i的径向速度数据的误差方差,i=1,…,M;其它变量如上所述,此处不再赘述。
类似的,基于MMSE准则或者维纳滤波,可以得到核心点q的候选速度矢量值,此处不再赘述。
需要指出的是,利用核心点q以及核心点q的邻域内不同的数据点或者数据点的组合,可以得到不同的候选速度矢量值。
在本申请实施例中,根据核心点q的邻域N(q)包含的第一数据点集合内的数据点,以及核心点q的候选速度矢量值,确定核心点q的速度矢量值,包括:
根据核心点q,以及核心点q的邻域N(q)包含的一个或多个数据点,确定核心点q的至少一个候选速度矢量值的权重;
根据至少一个候选速度矢量值的权重,确定核心点q的速度矢量值。
其中核心点q的至少一个候选速度矢量值的权重,根据核心点q和/或者核心点q的邻域N(q)包含的一个或多个数据点的位置和径向速度数据得到。
可选的,在一些实施例中,候选速度矢量值的权重为核心点q和/或核心点q的邻域N(q)包含的一个或多个数据点相对于该候选速度矢量值的权重的累加值;
其中核心点q和/或核心点q的邻域N(q)包含的各个数据点相对于该至少一个候选速度矢量值的权重根据核心点q和/或核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据得到。
具体的,候选速度矢量值的权重为核心点q和/或核心点q的邻域N(q)包含的一个或多个数据点相对于该候选速度矢量值的权重的累加值,以核心点q的一个候选速度矢量值v c(q)为例,
核心点q的候选速度矢量值v c(q)的权重满足如下表达式:
w c(v c(q))=∑Δw c,i(v c(q)),i=1,2,......,N,N≥1
其中,Δw c,i(v c(q))为核心点q的邻域N(q)内的序号为i的数据点相对于v c(q)的权重,权重。
示例性的,数据点集合A中的核心点1的邻域为N(1),邻域N(1)中包括核心点1、数据点2和数据点3,且核心点1的候选速度矢量值为v 1(1)。在此情况下,核心点1的候选速度矢量值v 1(1)的权重可以满足如下表达式:
w 1(v 1(1))=Δw 1,1(v 1(1))
或者,核心点1的候选速度矢量值v 1(1)的权重可以满足如下表达式:
w 1(v 1(1))=Δw 1,1(v 1(1))+Δw 1,2(v 1(1))
或者,核心点1的候选速度矢量值v 1(1)的权重可以满足如下表达式:
w 1(v 1(1))=Δw 1,1(v 1(1))+Δw 1,2(v 1(1))+Δw 1,3(v 1(1))
其中,w 1(v 1(1))为核心点1的候选速度矢量值v 1(1)的权重;Δw 1,1(v 1(1))为数据点1相对于候选速度矢量值v 1(1)的权重;Δw 1,2(v 1(1))为数据点2相对于候选速度矢量值v 1(1)的权重;Δw 1,3(v 1(1))为数据点3相对于候选速度矢量值v 1(1)的权重。
作为一种实现,核心点q的邻域N(q)内的一个数据点s相对于候选速度矢量值v c(q)的权重可以为数据点s的径向速度数据
Figure PCTCN2021078386-appb-000034
与v c(q)与候选速度矢量值v c(q)在数据点s的速度投影分量
Figure PCTCN2021078386-appb-000035
的函数;具体的可以根据数据点s的径向速度数据
Figure PCTCN2021078386-appb-000036
与v c(q)与候选速度矢量值v c(q)在数据点s的速度投影分量
Figure PCTCN2021078386-appb-000037
的差值
Figure PCTCN2021078386-appb-000038
得到。例如该函数为指数函数,高斯密度函数和其它类似概率密度函数等。需要指出的是,该数据点s可以是核心点q。
可选的,在一些实施例中,核心点q的邻域N(q)内的一个数据点s相对于候选速度矢量值v c(q)的权重可以根据数据点s的径向速度数据
Figure PCTCN2021078386-appb-000039
与v c(q)与候选速度矢量值v c(q)在数据点s的速度投影分量
Figure PCTCN2021078386-appb-000040
的差值得到。
示例性的,该权重满足如下表达式:
Figure PCTCN2021078386-appb-000041
或者,该权重满足如下表达式:
Figure PCTCN2021078386-appb-000042
或者,该权重满足如下表达式:
Figure PCTCN2021078386-appb-000043
或者,权重满足如下表达式:
Figure PCTCN2021078386-appb-000044
上述表达式中,
Figure PCTCN2021078386-appb-000045
为候选速度矢量值v c(q)在数据点s的径向投影分量;
Figure PCTCN2021078386-appb-000046
表示数据点s的径向速度;σ 2为数据点s与径向速度投影分量
Figure PCTCN2021078386-appb-000047
的误差的方差。a 0和β 0为配置参数。例如,a 0=1,或者,
Figure PCTCN2021078386-appb-000048
等,β 0=1,2,......等。
其中,
Figure PCTCN2021078386-appb-000049
可以根据候选速度矢量值v c(q)以及数据点s的位置数据得到。
例如,
Figure PCTCN2021078386-appb-000050
满足如下表达式:
Figure PCTCN2021078386-appb-000051
或者,
Figure PCTCN2021078386-appb-000052
满足如下表达式:
Figure PCTCN2021078386-appb-000053
其中,v c,x(q)表示候选速度矢量值v c(q)在x轴的分量;v c,y(q)表示候选速度矢量值v c(q)在y轴的分量;v c,z(q)表示候选速度矢量值v c(q)在z轴的分量。
其中,σ 2为数据点s与径向速度投影分量
Figure PCTCN2021078386-appb-000054
的误差的方差。
具体的,σ 2满足如下表达式:
Figure PCTCN2021078386-appb-000055
其中,
Figure PCTCN2021078386-appb-000056
表示数据点s的径向速度误差的方差;Δ为补偿项,Δ可以表示由其它因素引起的径向速度的误差的方差,例如由方位角或方位角和俯仰角引起的误差的方差。Δ可以为预先设定的常数。或者,Δ可以根据候选速度矢量值v c,x(q)确定。
以二维速度矢量为例,Δ满足如下表达式:
Figure PCTCN2021078386-appb-000057
可选的,在一些实施例中,候选速度矢量值的权重为核心点q和/或核心点q的邻域N(q)包含的第一数据点集合内的一个或多个数据点相对于该候选速度矢量值的权重因子的乘积。
例如,该权重因子满足如下表达式:
Figure PCTCN2021078386-appb-000058
或者,该权重因子满足如下表达式:
Figure PCTCN2021078386-appb-000059
在本申请实施例中,根据至少一个候选速度矢量值的权重,确定核心点q的速度矢量值v(q),包括:
将至少一个候选速度矢量值的权重中最大候选速度矢量值的权重对应的候选速度矢量值,确定为核心点q的速度矢量值v(q);或者,
将至少一个候选速度矢量值的权重中大于等于第三预定义门限的候选速度矢量值的权重对应的候选速度矢量值,确定为核心点q的速度矢量值v(q)。
下面,对将候选速度矢量中的权重中最大候选速度矢量值的权重对应的候选速度矢量值,确定为核心点q的速度矢量值v(q)进行介绍。
具体的,根据第一数据点集合内的一个或多个数据点以及核心点q,可以确定多个候 选速度矢量值,该多个候选速度矢量值各自对应一个权重;
将该多个候选速度矢量值中权重最大的候选速度矢量值,确定为核心点q的速度矢量值v(q)。
示例性的,在数据点集合A中(数据点集合A至少包括核心点q、数据点1、数据点2),通过计算仅获取到数据点集合A中的核心点q的两个候选速度矢量值,这两个候选速度矢量值分别为:v 1(q)、v 2(q),其中v 1(q)对应的权重为w 1(v 1(q)),v 2(q)对应的权重为w 2(v 2(q)),且w 1(v 1(q))大于w 2(v 2(q))。在此情况下,可以将v 1(q)确定为核心点q的速度矢量值v(q)。
下面,对核心点q的速度矢量值v(q)的权重大于或等于第三预定义门限进行介绍。
作为一种实现方式,根据根据第一数据点集合内的一个或多个数据点以及核心点q,可以确定核心点q的多个候选速度矢量值,该多个候选速度矢量值对应多个权重,将多个候选速度矢量值的权重中大于或等于第三预定义门限的候选速度矢量值的权重对应的候选速度矢量值,确定为核心点q的速度矢量值v(q)。
示例性的,在数据点集合A中(数据点集合A至少包括核心点q、数据点1、数据点2),通过计算仅获取到数据点集合A中的核心点q的两个候选速度矢量值,这两个候选速度矢量值分别为:v 1(q)、v 2(q),且v 1(q)对应的权重为w 1(v 1(q)),且v 2(q)对应的权重为w 2(v 2(q))。其中,v 1(q)为根据核心点q以及数据点1的位置数据和径向速度数据,确定的核心点q的第1个候选速度矢量,v 2(q)为根据核心点q、数据点1以及数据点2的位置数据和径向速度数据,确定的核心点q的第2个候选速度矢量。在w 1(v 1(q))小于第三预定义门限的值,且w 2(v 2(q))大于第三预定义门限的值的情况下,将v 2(q)确定为核心点q的速度矢量值。
需说明的是,若多个候选速度矢量值的权重中大于第三预定义门限的候选速度矢量值的权重至少有两个候选速度矢量值时,可以将这两个候选速度矢量值的权重中的任意一个候选速度矢量值的权重对应的候选速度矢量值,确定为核心点q的速度矢量值v(q)。
或者,若多个候选速度矢量值的权重中大于第三预定义门限的候选速度矢量值的权重至少有两个候选速度矢量值时,可以根据外部输入,在该至少有两个候选速度矢量值中选择与外部输入最近的候选速度矢量值,确定为核心点q的速度矢量值v(q)。
示例性的,在数据点集合A中(数据点集合A至少包括核心点q、数据点1、数据点2、数据点3),通过计算仅获取到数据点集合A中的核心点q的三个候选速度矢量值,这三个候选速度矢量值分别为:v 1(q)、v 2(q)、v 3(q),且v 1(q)对应的权重为w 1,1(v 1(q)),v 2(q)对应的权重为w 2,3(v 2(q)),v 3(q)对应的权重为w 3,2(v 3(q))。其中,v 1(q)为根据核心点q以及数据点1的位置数据和径向速度数据,确定的核心点q的第1个候选速度矢量,v 2(q)为根据核心点q、数据点1以及数据点2的位置数据和径向速度数据,确定的核心点q的第2个候选速度矢量,v 3(q)为根据核心点q以及数据点2的位置数据和径向速度数据,确定的核心点q的第3个候选速度矢量。在w 1,1(v 1(q))小于第三预定义门限的值,且w 2,3(v 2(q))、均w 3,2(v 3(q))大于第三预定义门限的值的情况下,可以将v 2(q)确定为核心点q的速度矢量值,或者,也可以将v 3(q)确定为核心点q的速度矢量值。或者,将v 2(q)、v 3(q)与外部输入最近的候选速度矢量值比较,确定v 2(q)为核心点q的速度矢量值,或v 3(q)为核心点q的速度矢量值。
步骤130,根据核心点q以及核心点q的速度矢量值v(q),从第一数据点集合中确定聚类C(q),聚类C(q)中的每个数据点的径向速度与速度矢量值v(q)满足兼容性条件。
作为一种实现方式,兼容性条件为速度矢量值在数据点的径向投影分量与数据点的径向速度满足第四预定义门限,速度矢量值在数据点的径向投影分量为根据速度矢量值和数据点的位置数据确定。
在本申请实施例中,第四预定义门限的大小可以根据经验或者应用场景进行设置。
具体的,第四预定义门限可以根据数据点的径向速度数据的误差标准差或者数据点的径向速度数据与径向速度投影分量的误差的标准差确定。
例如,第四预定义门限可以为径向速度数据的误差标准差或者数据点的径向速度数据与径向速度投影分量的误差的标准差的m倍,例如m可以为1.5,2,3等;或者,m可以按照预定义的概率如90%,95%,97%,99%等确定。
作为一种实现方式,所述聚类C(q)包括以下数据点:所述核心点q,数据点p i和数据点s i,j
数据点p i为核心点q的邻域N(q)内满足兼容性条件的数据点,i=1,…,N q,数据点s i,j为数据点p i的邻域N(p i)内满足兼容性条件的数据点,i=1,…,N q,j=1,…,N pi
其中,数据点p i和/或数据点s i,j满足兼容性条件为:数据点p i和/或数据点s i,j的径向速度数据与核心点q的速度矢量值v(q)在数据点p i和/或数据点s i,j的径向投影分量满足第四预定义门限,核心点q的速度矢量值v(q)在数据点p i和/或数据点s i,j的径向投影分量根据核心点q的速度矢量值v(q)以及数据点p i和/或数据点s i,j的位置数据得到。
在一些实现方式中,以核心点q的速度矢量值v(q)为二维矢量[v x(q),v y(q)]、数据点的位置数据为极坐标为例,该核心点q的速度矢量值v(q)在数据点p的径向投影分量与数据点p满足第四预定义门限,对应有兼容性邻域可以表示为:
Figure PCTCN2021078386-appb-000060
其中,N rrc(q)表示满足核心点q的兼容性条件的数据点构成的邻域;N(q)表示核心点q的邻域;v x(q)表示核心点q的速度矢量v(q)在x轴方向的分量;v y(q)表示核心点q的速度矢量v(q)在y轴方向的分量;θ p表示数据点p的方位角;
Figure PCTCN2021078386-appb-000061
表示数据点p的径向速度;D T为兼容性邻域门限值。
需说明的是,数据点的位置数据也可以为直角坐标,此时数据点p的方位角余弦和方位角正弦可以根据数据点的位置的直角坐标(x p,y p)得到,此处不再详细赘述。
在本申请实施例中,对兼容性邻域门限的取值可以根据经验和/或应用场景进行设置。
具体的,兼容性邻域门限可以根据数据点的径向速度数据的误差标准差或者数据点的径向速度数据与径向速度投影分量的误差的标准差确定。例如,兼容性邻域门限可以为径向速度数据的误差标准差或者数据点的径向速度数据与径向速度投影分量的误差的标准差的m倍,例如m可以为1.5,2,3等;或者,m可以按照预定义的概率如90%,95%,97%,99%等确定。
在另一些实现方式中,以核心点q的速度矢量值v(q)为三维矢量[v x(q),v y(q),v z(q)]、数据点p的位置数据为球坐标为例,该核心点q的速度矢量值v(q)在数据点p的径向投影在数据点p的径向投影分量与数据点p满足第四预定义门限,对应有核心点q的兼容性条 件的数据点构成的邻域可以表示为:
Figure PCTCN2021078386-appb-000062
其中,N rrc(q)表示满足核心点q的兼容性条件的数据点构成的邻域;N(q)表示核心点q的邻域;v x(q)表示核心点q的速度矢量v(q)在x轴方向的分量;v y(q)表示核心点q的速度矢量v(q)在y轴方向的分量;v z(q)表示核心点q的速度矢量v(q)在z轴方向的分量;
Figure PCTCN2021078386-appb-000063
表示数据点p的俯仰角;θ p表示数据点p的方位角;
Figure PCTCN2021078386-appb-000064
表示数据点p的径向速度;D T为兼容性邻域门限值。
需说明的是,数据点的位置数据也可以为三维直角坐标,此时数据点p的俯仰角和方位角余弦和方位角正弦值,可以根据数据点的位置的直角坐标(x p,y p,z p)得到,此处不再详细赘述。
可选的,作为另一种实现方式,聚类C(q)包括以下数据点:
聚类C(q)包括以下数据点:核心点q,数据点p i和数据点v j,k
数据点p i为核心点q的邻域N(q)内满足核心点q的兼容性条件的数据点,i=1,…,N q,数据点v j,k为数据点u j的邻域N(u j)内满足数据点u j的兼容性条件的数据点,所述数据点u j为数据点p i,i=1,…,N q中满足邻域内包含的数据点的个数满足第二预定义门限的数据点,j=1,…,M q,k=1,…,N uj
其中,数据点p i和/或数据点v j,k满足兼容性条件为:数据点p i和/或数据点v j,k的径向速度数据在核心点q的速度矢量值v(q)在数据点p i和/或数据点v j,k的径向投影分量满足第四预定义门限,核心点q的速度矢量值v(q)在数据点p i和/或数据点v j,k的径向投影分量根据核心点q的速度矢量值v(q)以及数据点p i和/或数据点v j,k的位置数据得到。
可选的,作为另一种实现,以上核心点,可以是其邻域大小满足预定义门限,同时,其兼容性邻域的大小也满足预定义的门限的数据点。其中该兼容性邻域为满足上述兼容性条件的第一数据点集合中的数据点的集合。上述对核心点的定义适用于上述核心点q以及核心点u j等,此处不一一列举。
在本申请实施例提供的聚类的方法,还包括:获取第二数据点集合,第二数据点集合包括的数据点为第一数据点集合中除聚类C(q)中包含的数据点之外的数据点;并利用步骤120的方法和步骤130前述的方法,从第二数据点集合中确定一个聚类。
示例性的,在数据点集合A中,确定数据点集合A的核心点以及该核心点的候选速度矢量值,根据核心点以及该核心点的候选速度矢量值,从数据点集合A中确定一个聚类#1,且该聚类#1中包括的数据点的数目小于数据点集合A中包括的数据点的数目。在此情况下,可以获取数据点集合B,数据点集合B为数据点集合A与聚类#1的差,对数据点集合B进行聚类,获取聚类#2。其中,具体获取聚类#2的方法与获取聚类#1的方法相同。
进一步的,作为一种实现方式,聚类C(q)对应的目标速度为核心点q的速度矢量值v(q)。
此外,聚类C(q)对应的目标位置为核心点q的邻域N(q)内的数据点的位置的加权和。
本申请提供的聚类的方法,通过数据点集合中的核心点q和核心点q的速度矢量值v(q)对数据点进行聚类,可以充分利用核心点q的速度矢量信息,避免径向速度数据作为分量 信息的有限性,同时减少了空间位置数据信息对输入参数的敏感性,有效提高了聚类的准确度和可靠性。此外,本申请实施例中,可以通过不同的方式确定数据点集合中的核心点q以及核心点q的速度矢量值,从而适用于各种的应用场景。例如,适用于数据点集合中数据点稀疏的场景。例如,适用于数据点集合中数据点密集的场景等。
图2示出了本申请实施例提供的聚类的方法200的示意性流程图。
如图2所示,该聚类的方法200包括步骤210至步骤250,下面对步骤210至步骤250,进行介绍。应理解,图2仅为示意,并不对本申请提供的聚类的方法100构成任何限定。
为了便于理解,首先,介绍一下本申请实施例提供的一个数据点集合的示意图。
图3示出了本申请实施例提供的一个数据点集合的示意图。
如图3所示,该数据点集合#1(即,方法100中第一数据点集合的一例)中包括了10个数据点,分别为数据点1、数据点2、数据点3、数据点4、数据点5、数据点6、数据点7、数据点8、数据点9、数据点10。
其中,不同数据点之间的距离不都相同。例如,数据点1和数据点9之间的距离,大于数据点1和数据点6之间的距离。又如,数据点2和数据点4之间的距离,与数据点1和数据点2之间的距离大致相同。
作为示例非限定,通过本申请实施例提供的一种聚类的方法100,在数据点集合#1中至少可以获取一个聚类#1(参见图3),其中聚类#1中包含数据点集合#1中的数据点1、数据点6和数据点10。
应理解,图3仅为示意,并不对本申请中的第一数据点集合和/或聚类C(q)构成任何限定。例如,第一数据点集合和/或聚类C(q)中可以包括更多或更少的数据点。又如,第一数据点集合和/或聚类C(q)中的各数据点的距离更近或更远。
下面,结合图3提供的数据点集合#1,对本申请实施例提供的聚类的方法200进行详细介绍。
步骤210,获取数据点集合#1(即,方法100中第一数据点集合的一例)中每个数据点的信息。
其中,每个数据点的信息包括位置数据和径向速度数据。
步骤210中获取数据点的信息的方法与步骤110中获取数据点的信息的方法相同,为了简洁,此处不再详细赘述。
步骤220,确定数据点集合#1的核心点,以及核心点邻域中的核心点。
为了便于描述,下面以数据点集合#1中的数据点1为核心点进行介绍。
在本申请实施例中,可以根据数据点集合#1中每个数据点的位置数据、第一预定义门限以及第二预定义门限,确定数据点1为数据点集合#1的核心点,且核心点1的邻域N(1)包含的数据点为数据点1、数据点2和数据点6。在此情况下,还可以确定数据点1的邻域N(1)中的数据点6是N(1)中的核心点,且核心点6的邻域N(6)包含的数据点为数据点6、数据点1、数据点10。
可选的,在一些实现方式中,也可以通过预定义的方式确定数据点集合#1中的核心点,以及该核心点邻域中的核心点。
需说明的是,本申请实施例提供的确定数据点集合#1中的核心点1的方法,以及核心点1的邻域N(1)中的核心点6的方法,与步骤120中确定核心点的方法相同。为了简洁, 此处不再详细赘述。
步骤230,确定核心点的速度矢量值。
作为一种实现方式,确定核心点q的速度矢量值v(q),可以包括以下步骤:
根据核心点q,以及核心点q的邻域中的一个或多个数据点,获取该核心点的至少一个候选速度矢量值;
根据核心点,以及核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据,确定核心点q的至少一个候选速度矢量值的权重;
将该核心点q的至少一个候选速度矢量值的的权重中最大权重对应的候选速度矢量值,确定为该核心点q的速度矢量值v(q)。
在本申请实施例中,根据步骤220确定的两个核心点(数据点1和数据点6),采用上述方式以及步骤120中的相关公式,可以分别确定核心点1的速度矢量值v(1)和核心点6的速度矢量值v(6)。
具体的,在核心点1的邻域N(1)中可以根据数据点2和核心点1,确定核心点1的第1个候选速度矢量值为v 1(1),且v 1(1)对应的权重为w 1(v 1(1));在核心点1的邻域N(1)中还可以根据数据点6和核心点1,确定核心点1的第2个候选速度矢量值为v 2(1),且v 2(1)对应的权重为w 2(v 2(1));在核心点1的邻域N(1)中可以根据数据点2、数据点6和核心点1,确定核心点1的第3个候选速度矢量值为v 3(1),且v 3(1)对应的权重为w 3(v 3(1))。又w 1(v 1(1))≥w 2(v 2(1))≥w 3(v 3(1))大于w 2(v 2(1)),故可以将v 1(1)确定为核心点1的速度矢量值v(1)。
在核心点6的邻域N(6)中可以仅根据核心点6、数据点1、数据点10确定核心点6的候选速度矢量值。具体的,可以根据数据点10和核心点6,确定核心点6的第1个候选速度矢量值为v 1(6),且v 1(6)对应的权重为w 1(v 1(6))。可以根据数据点10和数据点1,确定核心点6的第2个候选速度矢量值为v 2(6),且v 2(6)对应的权重为w 2(v 2(6))。在w 1(v 1(6))>w 2(v 2(6))的情况下,可以将v 1(6)确定为核心点6的速度矢量值v(6)。
为了便于理解,下面具体介绍确定核心点1的速度矢量值v(1)的方法。应理解,也可以采用下述方法获取获取核心点6的速度矢量值v(6)。
以核心点1的邻域N(1)中的数据点2和核心点1为例,可以通过如下方式获取核心点1的第1个候选速度矢量值v 1(1):
Figure PCTCN2021078386-appb-000065
其中,v 1(1)表示核心点1的候选速度矢量值;h 1表示核心点1的方向余弦矢量,h 2表示数据点2的方向余弦矢量;
Figure PCTCN2021078386-appb-000066
表示核心点2的径向速度数据,
Figure PCTCN2021078386-appb-000067
表示数据点2的径向速度数据。
以加权最小二乘WLS法为例,根据WLS确定核心点1的候选速度矢量值,核心点1的候选速度矢量值v 1(1)满足如下表达式:
Figure PCTCN2021078386-appb-000068
其中,
Figure PCTCN2021078386-appb-000069
表示核心点1的径向速度数据的误差方差,
Figure PCTCN2021078386-appb-000070
表示数据点2的径向速度数据的误差方差;其它变量如前所述,此处不再赘述。
同样的,也可以采用上述确定v 1(1)的方法确定v 2(1)、v 3(1)。
其中,以核心点1的该候选速度矢量值v 1(1)的权重w 1(v 1(1))满足如下表达式:
w 1(v 1(1))=Δw 1,1(v 1(1))+Δw 1,2(v 1(1))
其中,Δw 1,1(v 1(1))表示核心点1相对于候选速度矢量值v 1(1)的权重;Δw 1,2(v 1(1))表示数据点2相对于候选速度矢量值v 1(1)的权重。
同样的,可以采用确定w 1(v 1(1))的方法确定w 2(v 2(1))、w 3(v 3(1))。
其中,数据点2相对于候选速度矢量值v 1(1)的权重Δw 1,2(v 1(1))满足如下表达式:
Figure PCTCN2021078386-appb-000071
上述表达式中,
Figure PCTCN2021078386-appb-000072
为候选速度矢量值v 1(1)在数据点2的径向投影分量;
Figure PCTCN2021078386-appb-000073
表示数据点2的径向速度;σ 2为数据点2与径向速度投影分量
Figure PCTCN2021078386-appb-000074
的误差的方差。a 0和β 0为配置参数。例如,a 0=1,或者,
Figure PCTCN2021078386-appb-000075
等,β 0=1,2,......等。
同样的,可以采用确定Δw 1,2(v 1(1))的方法确定Δw 1,1(v 1(1))。
步骤240,根据核心点以及核心点的速度矢量值,从数据点集合#1中确定一个聚类。
根据步骤230,可知核心点1的速度矢量值为v 1(1),核心点1的邻域N(1)中的数据点6为邻域N(1)内的核心点,且核心点6的速度矢量值为v 1(6)。
根据步骤130中的径向投影公式,可以计算获得:
在数据点集合#1内,核心点1的v 1(1)在数据点6的径向投影分量与数据点6的径向速度满足第四预定义门限,核心点1的v 1(1)在数据点2的径向投影分量与数据点2的径向速度不满足第四预定义门限。此外,核心点6的v 1(6)在数据点10的径向投影分量与数据点10的径向速度满足第四预定义门限。在此情况下,可以将数据点集合#1内的数据点1、数据点6、数据点10聚为一个类。
具体的,以核心点1的速度矢量值v(1)为二维矢量[v x(1),v y(1)]时,数据点的位置数据为极坐标为例,该核心点1的速度矢量值v(1)在数据点6的径向投影分量与数据点p的径向速度满足第四预定义门限,对应有核心点1的兼容性条件的数据点构成的邻域可以表示为:
Figure PCTCN2021078386-appb-000076
其中,N rrc(1)表示满足核心点1的兼容性条件的数据点构成的邻域;N(1)表示核心点1的邻域;v x(1)表示核心点1的速度矢量v(1)在x轴方向的分量;v y(1)表示核心点1的速度矢量v(1)在y轴方向的分量;θ p表示数据点p的方位角;
Figure PCTCN2021078386-appb-000077
表示数据点p的径向速度;D T为兼容性邻域门限值。D T的大小的设置方法参见方法100中的步骤120。
步骤250,获取数据点集合#2(即,方法100中的第二数据点集合的一例),用步骤220至步骤240的方法对数据点集合#2中的数据点进行聚类
经过步骤210至步骤240后,还包括获取数据点集合#2,获取数据点集合#2中包含的数据点具体如图4所示。
图4示出了本申请实施例提供的另一个数据点集合的示意图。
数据点集合#2中包括7个数据点,分别为数据点2、数据点3、数据点4、数据点5、数据点7、数据点8和数据点9。
对数据点集合#2中的数据点进行聚类,包括:确定数据点集合#2的核心点以及该核心点的候选速度矢量值,并根据数据点集合#2的核心点以及该核心点的候选速度矢量值,从数据点集合#2中确定另一个聚类。具体的,可以采用步骤220至步骤240的方法对数据点集合#2中的数据点进行聚类。为了简洁,此处不再详细赘述。
可选的,作为另一种实现方式,本申请提供的聚类的方法不获取数据点集合#2。也就是说,经过步骤210至步骤240后,不再执行步骤250。
传统的聚类的方法对数据点集合#1中的数据点进行聚类时,由于密度参数值选取不合适,容易将不同类的数据点聚为一类。例如,将数据点集合#1中的数据点1、数据点2、数据点4、数据点6聚为一类,从而导致分类结果不准确。
本申请实施例提供的聚类的方法,通过数据点集合#1中的核心点1以及核心点1的速度矢量值v(1)对数据点进行聚类,可以充分利用核心点1的速度矢量值v(1)信息,避免径向速度数据作为分量信息的有限性,同时减少了空间位置数据信息对输入参数的敏感性,从而实现了准确地对数据点进行聚类的目的。此外,本申请实施例中,可以通过不同的方式确定数据点集合中的核心点1以及核心点1的速度矢量值v(1),从而适用于各种的应用场景。例如,适用于数据点集合中数据点稀疏的场景。例如,适用于数据点集合中数据点密集的场景等。
图5示出了本申请实施例提供的又一个数据点集合的示意图。
数据点集合#1中包括4个数据点,分别为数据点1、数据点2、数据点3、数据点4。可以采用本申请实施例提供的聚类的方法100对该数据点集合#1进行聚类。为了简洁,此处不再详细赘述。
以上结合图1至图5详细描述了本申请提供的聚类的方法。应理解,图1至图5的方法仅为示意,并不对本申请构成任何限定。
下面,结合图6和图7详细介绍本申请提供的聚类的装置和聚类的设备。
图6示出了本申请实施例提供的聚类的装置600的示意性结构图。
该聚类的装置600包括:收发单元610、处理单元620。其中,收发单元610和处理单元620之间通过内部连接通路互相通信,传递控制和/或数据信号。
收发单元610,用于获取第一数据点集合,其中该第一数据点集合包括至少两个数据点,该第一数据点集合中的每个数据点的信息包括位置数据和径向速度数据;
处理单元620,用于从该第一数据点集合中确定核心点q以及该核心点q的速度矢量值v(q);
该处理单元620,还用于根据该核心点q以及该核心点q的速度矢量值v(q),从该第一数据点集合中确定聚类C(q),该聚类C(q)中的每个数据点的径向速度与该速度矢量值v(q)满足兼容性条件。
可选的,在一些实现方式中,
该核心点q为预先指定的该第一数据点集合中的数据点;或者,
该核心点q为该第一数据点集合中的数据点q’,其中该数据点q’的邻域N(q’)内包含的该第一数据点集合中的数据点的个数满足第一预定义门限。
可选的,在一些实现方式中,
该数据点q’的邻域N(q’)为预定义的邻域;或者,
该数据点q’的邻域N(q’)为与该数据点q’的距离满足第二预定义门限的该第一数据集合中的数据点的集合,其中该距离根据该数据点q’的位置数据和该该第一数据集合中的数据点的位置数据确定,或者,该距离根据该数据点q’的位置数据和径向速度数据以及该该第一数据集合中的数据点的位置数据和径向速度数据确定。
可选的,在一些实现方式中,
该核心点q的速度矢量值v(q)为预定义的速度矢量值;或者,
该核心点q的速度矢量值v(q)为根据该核心点q的邻域N(q)包含的数据点确定的。
可选的,在一些实现方式中,该处理单元620还用于:
根据该核心点q以及该核心点q的邻域N(q)包含的一个或多个数据点的信息,确定该核心点q的至少一个候选速度矢量值;
根据该核心点q的邻域N(q)包含的数据点,以及该核心点q的至少一个候选速度矢量值,确定该核心点q的速度矢量值v(q)。
可选的,在一些实现方式中,根据该核心点q以及该核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据,基于以下关系式,确定该核心点q的至少一个候选速度矢量值;
Figure PCTCN2021078386-appb-000078
其中,v c(q)为该核心点q的第c个候选速度矢量,c≥1,s为该核心点q或者该核心点q的邻域N(q)包含的用于确定该v c(q)的数据点,
Figure PCTCN2021078386-appb-000079
为数据点s的径向速度数据,n s为与
Figure PCTCN2021078386-appb-000080
对应的误差。h s为方向余弦矢量,其中h s根据该数据点s的位置数据得到。
可选的,在一些实现方式中,该处理单元620还用于:
根据该核心点q,以及该核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据,确定该核心点q的至少一个候选速度矢量值的权重;
根据该至少一个候选速度矢量值的权重,确定该核心点q的速度矢量值v(q)。
可选的,在一些实现方式中,该至少一个候选速度矢量值的权重为该核心点q和/或该核心点q的邻域N(q)包含的数据点相对于该至少一个候选速度矢量值的权重的累加值;其中该核心点q和/或该核心点q的邻域N(q)包含的数据点相对于该至少一个候选速度矢量值的权重根据该核心点q和/或该核心点q的邻域N(q)包含的该第一数据点集合内的数据点的位置数据和径向速度数据得到。
可选的,在一些实现方式中,该核心点q的邻域N(q)包含的一个数据点t相对于候选速度矢量值v c(q)的权重根据该候选速度矢量值v c(q)在该数据点t的径向投影分量与该数据点t的径向速度数据的差值得到,其中,该候选速度矢量值v c(q)在该数据点t的径向投影分量根据该候选速度矢量值v c(q)以及该数据点t的位置数据得到。
可选的,在一些实现方式中,该处理器还用于:
将该至少一个候选速度矢量值的权重中最大候选速度矢量值的权重对应的候选速度 矢量值,确定为该核心点q的速度矢量值v(q);或者,
将该至少一个候选速度矢量值的权重中大于等于第三预定义门限的候选速度矢量值的权重对应的候选速度矢量值,确定为该核心点q的速度矢量值v(q)。
可选的,在一些实现方式中,该兼容性条件为速度矢量值在数据点的径向投影分量与该数据点的径向速度满足第四预定义门限,该速度矢量值在数据点的径向投影分量根据该速度矢量值和该数据点的位置数据确定。
可选的,在一些实现方式中,该聚类C(q)包括以下数据点:该核心点q,数据点p i,数据点s i,j
该数据点p i为该核心点q的邻域N(q)内满足兼容性条件的数据点,i=1,…,N q,该数据点s i,j为该数据点p i的邻域N(p i)内满足兼容性条件的数据点,i=1,…,N q,j=1,…,N pi
其中,该数据点p i和/或该数据点s i,j满足该兼容性条件为:该数据点p i和/或该数据点s i,j的径向速度数据在该核心点q的速度矢量值v(q)在该数据点p i和/或该数据点s i,j的径向投影分量满足第四预定义门限,该核心点q的速度矢量值v(q)在该数据点p i和/或该数据点s i,j的径向投影分量根据该核心点q的速度矢量值v(q)以及该数据点p i和/或该数据点s i,j的位置数据得到。
可选的,在一些实现方式中,该聚类C(q)包括以下数据点:该核心点q,数据点p i和数据点v j,k
该数据点p i为该核心点q的邻域N(q)内满足该核心点q的兼容性条件的数据点,i=1,…,N q,该数据点v j,k为该数据点u j的邻域N(u j)内满足该数据点u j的兼容性条件的数据点,该数据点u j为该数据点p i,i=1,…,N q中满足邻域内包含的数据点的个数满足该第二预定义门限的数据点,j=1,…,M q,k=1,…,N uj
其中,该数据点p i和/或该数据点v j,k满足该兼容性条件为:该数据点p i和/或该数据点v j,k的径向速度数据在该核心点q的速度矢量值v(q)在该数据点p i和/或该数据点v j,k的径向投影分量满足第四预定义门限,该核心点q的速度矢量值v(q)在该数据点p i和/或该数据点v j,k的径向投影分量根据该核心点q的速度矢量值v(q)以及该数据点p i和/或该数据点v j,k的位置数据得到。
可选的,在一些实现方式中,该聚类C(q)对应的目标速度为该核心点q的速度矢量值v(q);
该聚类C(q)对应的目标位置为该聚类C(q)包含的数据点的位置的加权和。
图7示出了本申请实施例提供的聚类的设备700的示意性结构图。
该聚类的设备700包括:收发器710、处理器720和存储器730。其中,收发器710、处理器720和存储器730之间通过内部连接通路互相通信,传递控制和/或数据信号,该存储器730用于存储计算机程序,该处理器710用于从该存储器730中调用并运行该计算机程序,以控制该收发器720收发信号。
具体的,收发器710的功能与图6所示的收发单元610的具体功能相对应,此处不再赘述。
具体的,处理器720的功能与图6所示的处理单元620的具体功能相对应,此处不再赘述。
应理解,本申请实施例中的处理器可以为中央处理单元(central processing unit,CPU), 该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random access memory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进行理解。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程 构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (31)

  1. 一种聚类的方法,其特征在于,所述方法包括:
    获取第一数据点集合,其中所述第一数据点集合包括至少两个数据点,所述第一数据点集合中的每个数据点的信息包括位置数据和径向速度数据;
    从所述第一数据点集合中确定核心点q以及所述核心点q的速度矢量值v(q);
    根据所述核心点q以及所述核心点q的速度矢量值v(q),从所述第一数据点集合中确定聚类C(q),所述聚类C(q)中的每个数据点的径向速度与所述速度矢量值v(q)满足兼容性条件。
  2. 根据权利要求1所述的方法,其特征在于,
    所述核心点q为预先指定的所述第一数据点集合中的数据点;或者,
    所述核心点q为所述第一数据点集合中的数据点q’,其中所述数据点q’的邻域N(q’)内包含的所述第一数据点集合中的数据点的个数满足第一预定义门限。
  3. 根据权利要求2所述的方法,其特征在于,
    所述数据点q’的邻域N(q’)为预定义的邻域;或者,
    所述数据点q’的邻域N(q’)为与所述数据点q’的距离满足第二预定义门限的所述第一数据集合中的数据点的集合,其中所述距离根据所述数据点q’的位置数据和所述所述第一数据集合中的数据点的位置数据确定,或者,所述距离根据所述数据点q’的位置数据和径向速度数据以及所述所述第一数据集合中的数据点的位置数据和径向速度数据确定。
  4. 根据权利要求1-3中任一项所述的方法,其特征在于,
    所述核心点q的速度矢量值v(q)为预定义的速度矢量值;或者,
    所述核心点q的速度矢量值v(q)为根据所述核心点q的邻域N(q)包含的数据点确定的。
  5. 根据权利要求4所述的方法,其特征在于,所述核心点q的速度矢量值v(q)为根据所述核心点q的邻域N(q)包含的数据点确定的,包括:
    根据所述核心点q以及所述核心点q的邻域N(q)包含的一个或多个数据点的信息,确定所述核心点q的至少一个候选速度矢量值;
    根据所述核心点q的邻域N(q)包含的数据点,以及所述核心点q的至少一个候选速度矢量值,确定所述核心点q的速度矢量值v(q)。
  6. 根据权利要求5所述的方法,其特征在于,所述根据所述核心点q以及所述核心点q的邻域N(q)包含的一个或多个数据点的信息,确定所述核心点q的至少一个候选速度矢量值,包括:
    根据所述核心点q以及所述核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据,基于以下关系式,确定所述核心点q的至少一个候选速度矢量值;
    Figure PCTCN2021078386-appb-100001
    其中,v c(q)为所述核心点q的第c个候选速度矢量,c≥1,s为所述核心点q或者所述核心点q的邻域N(q)包含的用于确定所述v c(q)的数据点,
    Figure PCTCN2021078386-appb-100002
    为数据点s的径向速度数据,n s为与
    Figure PCTCN2021078386-appb-100003
    对应的误差,h s为方向余弦矢量,其中h s根据所述数据点s的位置数据得到。
  7. 根据权利要求5或6所述的方法,其特征在于,所述根据所述核心点q的邻域N(q)包含的数据点,以及所述核心点q的至少一个候选速度矢量值,确定所述核心点q的速度矢量值v(q),包括:
    根据所述核心点q,以及所述核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据,确定所述核心点q的至少一个候选速度矢量值的权重;
    根据所述至少一个候选速度矢量值的权重,确定所述核心点q的速度矢量值v(q)。
  8. 根据权利要求7所述的方法,其特征在于,
    所述至少一个候选速度矢量值的权重为所述核心点q和/或所述核心点q的邻域N(q)包含的数据点相对于所述至少一个候选速度矢量值的权重的累加值;
    其中所述核心点q和/或所述核心点q的邻域N(q)包含的数据点相对于所述至少一个候选速度矢量值的权重根据所述核心点q和/或所述核心点q的邻域N(q)包含的所述第一数据点集合内的数据点的位置数据和径向速度数据得到。
  9. 根据权利要求7或8所述的方法,其特征在于,所述核心点q的邻域N(q)包含的一个数据点t相对于候选速度矢量值v c(q)的权重根据所述候选速度矢量值v c(q)在所述数据点t的径向投影分量与所述数据点t的径向速度数据的差值得到,其中,所述候选速度矢量值v c(q)在所述数据点t的径向投影分量根据所述候选速度矢量值v c(q)以及所述数据点t的位置数据得到。
  10. 根据权利要求7至9中任一项所述的方法,其特征在于,所述根据所述至少一个候选速度矢量值的权重,确定所述核心点q的速度矢量值v(q),包括:
    将所述至少一个候选速度矢量值的权重中最大候选速度矢量值的权重对应的候选速度矢量值,确定为所述核心点q的速度矢量值v(q);或者,
    将所述至少一个候选速度矢量值的权重中大于等于第三预定义门限的候选速度矢量值的权重对应的候选速度矢量值,确定为所述核心点q的速度矢量值v(q)。
  11. 根据权利要求1-10中任一项所述的方法,其特征在于,
    所述兼容性条件为速度矢量值在数据点的径向投影分量与所述数据点的径向速度满足第四预定义门限,所述速度矢量值在数据点的径向投影分量根据所述速度矢量值和所述数据点的位置数据确定。
  12. 根据权利要求1-11中任一项所述的方法,其特征在于,
    所述聚类C(q)包括以下数据点:所述核心点q,数据点p i和数据点s i,j
    所述数据点p i为所述核心点q的邻域N(q)内满足兼容性条件的数据点,i=1,…,N q,所述数据点s i,j为所述数据点p i的邻域N(p i)内满足兼容性条件的数据点,i=1,…,N q,j=1,…,N pi
    其中,所述数据点p i和/或所述数据点s i,j满足所述兼容性条件为:所述数据点p i和/或所述数据点s i,j的径向速度数据在所述核心点q的速度矢量值v(q)在所述数据点p i和/或所述数据点s i,j的径向投影分量满足第四预定义门限,所述核心点q的速度矢量值v(q)在所述数据点p i和/或所述数据点s i,j的径向投影分量根据所述核心点q的速度矢量值v(q)以及所述数据点p i和/或所述数据点s i,j的位置数据得到。
  13. 根据权利要求1-11中任一项所述的方法,其特征在于,
    所述聚类C(q)包括以下数据点:所述核心点q,数据点p i和数据点v j,k
    所述数据点p i为所述核心点q的邻域N(q)内满足所述核心点q的兼容性条件的数据点,i=1,…,N q,所述数据点v j,k为所述数据点u j的邻域N(u j)内满足所述数据点u j的兼容性条件的数据点,所述数据点u j为所述数据点p i,i=1,…,N q中满足邻域内包含的数据点的个数满足所述第二预定义门限的数据点,j=1,…,M q,k=1,…,N uj
    其中,所述数据点p i和/或所述数据点v j,k满足所述兼容性条件为:所述数据点p i和/或所述数据点v j,k的径向速度数据在所述核心点q的速度矢量值v(q)在所述数据点p i和/或所述数据点v j,k的径向投影分量满足第四预定义门限,所述核心点q的速度矢量值v(q)在所述数据点p i和/或所述数据点v j,k的径向投影分量根据所述核心点q的速度矢量值v(q)以及所述数据点p i和/或所述数据点v j,k的位置数据得到。
  14. 根据权利要求1-13中任一项所述的方法,其特征在于,
    所述聚类C(q)对应的目标速度为所述核心点q的速度矢量值v(q);
    所述聚类C(q)对应的目标位置为所述聚类C(q)包含的数据点的位置的加权和。
  15. 一种聚类的装置,其特征在于,所述装置包括:
    收发单元,用于获取第一数据点集合,其中所述第一数据点集合包括至少两个数据点,所述第一数据点集合中的每个数据点的信息包括位置数据和径向速度数据;
    处理单元,用于从所述第一数据点集合中确定核心点q以及所述核心点q的速度矢量值v(q);
    所述处理单元,还用于根据所述核心点q以及所述核心点q的速度矢量值v(q),从所述第一数据点集合中确定聚类C(q),所述聚类C(q)中的每个数据点的径向速度与所述速度矢量值v(q)满足兼容性条件。
  16. 根据权利要求15所述的装置,其特征在于,
    所述核心点q为预先指定的所述第一数据点集合中的数据点;或者,
    所述核心点q为所述第一数据点集合中的数据点q’,其中所述数据点q’的邻域N(q’)内包含的所述第一数据点集合中的数据点的个数满足第一预定义门限。
  17. 根据权利要求16所述的装置,其特征在于,
    所述数据点q’的邻域N(q’)为预定义的邻域;或者,
    所述数据点q’的邻域N(q’)为与所述数据点q’的距离满足第二预定义门限的所述第一数据集合中的数据点的集合,其中所述距离根据所述数据点q’的位置数据和所述所述第一数据集合中的数据点的位置数据确定,或者,所述距离根据所述数据点q’的位置数据和径向速度数据以及所述所述第一数据集合中的数据点的位置数据和径向速度数据确定。
  18. 根据权利要求15-17中任一项所述的装置,其特征在于,
    所述核心点q的速度矢量值v(q)为预定义的速度矢量值;或者,
    所述核心点q的速度矢量值v(q)为根据所述核心点q的邻域N(q)包含的数据点确定的。
  19. 根据权利要求18所述的装置,其特征在于,所述处理单元还用于:
    根据所述核心点q以及所述核心点q的邻域N(q)包含的一个或多个数据点的信息,确定所述核心点q的至少一个候选速度矢量值;
    根据所述核心点q的邻域N(q)包含的数据点,以及所述核心点q的至少一个候选速度矢量值,确定所述核心点q的速度矢量值v(q)。
  20. 根据权利要求19所述的装置,其特征在于,所述处理单元还用于:
    根据所述核心点q以及所述核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据,基于以下关系式,确定所述核心点q的至少一个候选速度矢量值;
    Figure PCTCN2021078386-appb-100004
    其中,v c(q)为所述核心点q的第c个候选速度矢量,c≥1,s为所述核心点q或者所述核心点q的邻域N(q)包含的用于确定所述v c(q)的数据点,
    Figure PCTCN2021078386-appb-100005
    为数据点s的径向速度数据,n s为与
    Figure PCTCN2021078386-appb-100006
    对应的误差,h s为方向余弦矢量,其中h s根据所述数据点s的位置数据得到。
  21. 根据权利要求19或20所述的装置,其特征在于,所述处理单元还用于:
    根据所述核心点q,以及所述核心点q的邻域N(q)包含的一个或多个数据点的位置数据和径向速度数据,确定所述核心点q的至少一个候选速度矢量值的权重;
    根据所述至少一个候选速度矢量值的权重,确定所述核心点q的速度矢量值v(q)。
  22. 根据权利要求21所述的装置,其特征在于,
    所述至少一个候选速度矢量值的权重为所述核心点q和/或所述核心点q的邻域N(q)包含的数据点相对于所述至少一个候选速度矢量值的权重的累加值;
    其中所述核心点q和/或所述核心点q的邻域N(q)包含的数据点相对于所述至少一个候选速度矢量值的权重根据所述核心点q和/或所述核心点q的邻域N(q)包含的所述第一数据点集合内的数据点的位置数据和径向速度数据得到。
  23. 根据权利要求21或22所述的装置,其特征在于,所述核心点q的邻域N(q)包含的一个数据点t相对于候选速度矢量值v c(q)的权重根据所述候选速度矢量值v c(q)在所述数据点t的径向投影分量与所述数据点t的径向速度数据的差值得到,其中,所述候选速度矢量值v c(q)在所述数据点t的径向投影分量根据所述候选速度矢量值v c(q)以及所述数据点t的位置数据得到。
  24. 根据权利要求21或23中任一项所述的装置,其特征在于,所述处理器还用于:
    将所述至少一个候选速度矢量值的权重中最大候选速度矢量值的权重对应的候选速度矢量值,确定为所述核心点q的速度矢量值v(q);或者,
    将所述至少一个候选速度矢量值的权重中大于等于第三预定义门限的候选速度矢量值的权重对应的候选速度矢量值,确定为所述核心点q的速度矢量值v(q)。
  25. 根据权利要求15-24中任一项所述的装置,其特征在于,
    所述兼容性条件为速度矢量值在数据点的径向投影分量与所述数据点的径向速度满足第四预定义门限,所述速度矢量值在数据点的径向投影分量根据所述速度矢量值和所述数据点的位置数据确定。
  26. 根据权利要求15-25中任一项所述的装置,其特征在于,
    所述聚类C(q)包括以下数据点:所述核心点q,数据点p i和数据点s i,j
    所述数据点p i为所述核心点q的邻域N(q)内满足兼容性条件的数据点,i=1,…,N q,所述数据点s i,j为所述数据点p i的邻域N(p i)内满足兼容性条件的数据点,i=1,…,N q,j=1,…,N pi
    其中,所述数据点p i和/或所述数据点s i,j满足所述兼容性条件为:所述数据点p i和/或所述数据点s i,j的径向速度数据在所述核心点q的速度矢量值v(q)在所述数据点p i和/或 所述数据点s i,j的径向投影分量满足第四预定义门限,所述核心点q的速度矢量值v(q)在所述数据点p i和/或所述数据点s i,j的径向投影分量根据所述核心点q的速度矢量值v(q)以及所述数据点p i和/或所述数据点s i,j的位置数据得到。
  27. 根据权利要求15-25中任一项所述的装置,其特征在于,
    所述聚类C(q)包括以下数据点:所述核心点q,数据点p i和数据点v j,k
    所述数据点p i为所述核心点q的邻域N(q)内满足所述核心点q的兼容性条件的数据点,i=1,…,N q,所述数据点v j,k为所述数据点u j的邻域N(u j)内满足所述数据点u j的兼容性条件的数据点,所述数据点u j为所述数据点p i,i=1,…,N q中满足邻域内包含的数据点的个数满足所述第二预定义门限的数据点,j=1,…,M q,k=1,…,N uj
    其中,所述数据点p i和/或所述数据点v j,k满足所述兼容性条件为:所述数据点p i和/或所述数据点v j,k的径向速度数据在所述核心点q的速度矢量值v(q)在所述数据点p i和/或所述数据点v j,k的径向投影分量满足第四预定义门限,所述核心点q的速度矢量值v(q)在所述数据点p i和/或所述数据点v j,k的径向投影分量根据所述核心点q的速度矢量值v(q)以及所述数据点p i和/或所述数据点v j,k的位置数据得到。
  28. 根据权利要求15-27中任一项所述的装置,其特征在于,
    所述聚类C(q)对应的目标速度为所述核心点q的速度矢量值v(q);
    所述聚类C(q)对应的目标位置为所述聚类C(q)包含的数据点的位置的加权和。
  29. 一种聚类的装置,其特征在于,包括处理器和存储器,所述存储器用于存储指令,所述处理器用于读取所述存储器中存储的指令,以执行权利要求1至14中任一项所述的方法。
  30. 一种计算机可读存储介质,其特征在于,包括计算机程序,当所述计算机程序在计算机上运行时,所述计算机执行权利要求1至14中任一项所述的方法。
  31. 一种芯片,其特征在于,包括至少一个处理器和接口;
    所述至少一个所述处理器,用于调用并运行计算机程序,以使所述芯片执行如权利要求1至14中任一项所述的方法。
PCT/CN2021/078386 2020-04-30 2021-03-01 一种聚类的方法和装置 WO2021218347A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010368452.0A CN113591891A (zh) 2020-04-30 2020-04-30 一种聚类的方法和装置
CN202010368452.0 2020-04-30

Publications (1)

Publication Number Publication Date
WO2021218347A1 true WO2021218347A1 (zh) 2021-11-04

Family

ID=78237841

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/078386 WO2021218347A1 (zh) 2020-04-30 2021-03-01 一种聚类的方法和装置

Country Status (2)

Country Link
CN (1) CN113591891A (zh)
WO (1) WO2021218347A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115236627A (zh) * 2022-09-21 2022-10-25 深圳安智杰科技有限公司 一种基于多帧多普勒速度扩维的毫米波雷达数据聚类方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109581312A (zh) * 2018-11-22 2019-04-05 西安电子科技大学昆山创新研究院 一种高分辨毫米波雷达多目标聚类方法
US20190310378A1 (en) * 2018-04-05 2019-10-10 Apex.AI, Inc. Efficient and scalable three-dimensional point cloud segmentation for navigation in autonomous vehicles
CN110361727A (zh) * 2019-07-22 2019-10-22 浙江大学 一种毫米波雷达多目标跟踪方法
CN110533087A (zh) * 2019-08-16 2019-12-03 成都电科慧安科技有限公司 一种基于速度矢量人群聚类的分类方法
CN110634299A (zh) * 2019-10-25 2019-12-31 福州大学 基于多源轨迹数据的城市交通状态精细划分与识别方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190310378A1 (en) * 2018-04-05 2019-10-10 Apex.AI, Inc. Efficient and scalable three-dimensional point cloud segmentation for navigation in autonomous vehicles
CN109581312A (zh) * 2018-11-22 2019-04-05 西安电子科技大学昆山创新研究院 一种高分辨毫米波雷达多目标聚类方法
CN110361727A (zh) * 2019-07-22 2019-10-22 浙江大学 一种毫米波雷达多目标跟踪方法
CN110533087A (zh) * 2019-08-16 2019-12-03 成都电科慧安科技有限公司 一种基于速度矢量人群聚类的分类方法
CN110634299A (zh) * 2019-10-25 2019-12-31 福州大学 基于多源轨迹数据的城市交通状态精细划分与识别方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115236627A (zh) * 2022-09-21 2022-10-25 深圳安智杰科技有限公司 一种基于多帧多普勒速度扩维的毫米波雷达数据聚类方法
CN115236627B (zh) * 2022-09-21 2022-12-16 深圳安智杰科技有限公司 一种基于多帧多普勒速度扩维的毫米波雷达数据聚类方法

Also Published As

Publication number Publication date
CN113591891A (zh) 2021-11-02

Similar Documents

Publication Publication Date Title
US10867189B2 (en) Systems and methods for lane-marker detection
US11216951B2 (en) Method and apparatus for representing environmental elements, system, and vehicle/robot
WO2020139511A1 (en) Crowdsourced detection, identification and sharing of hazardous road objects in hd maps
US11144770B2 (en) Method and device for positioning vehicle, device, and computer readable storage medium
US20170343665A1 (en) Low Cost Apparatus and Method for Multi-Modal Sensor Fusion with Single Look Ghost-free 3D Target Association from Geographically Diverse Sensors
EP3460715B1 (en) Template creation apparatus, object recognition processing apparatus, template creation method, and program
WO2021218346A1 (zh) 一种聚类的方法和装置
CN110609562B (zh) 一种图像信息采集方法和装置
CN110907906B (zh) 目标分类方法和相关设备
US20200401825A1 (en) Object detection device, object detection method, and storage medium
WO2022054422A1 (ja) 障害物検知装置、障害物検知システム及び障害物検知方法
US20220215197A1 (en) Data processing method and apparatus, chip system, and medium
CN115147333A (zh) 一种目标检测方法及装置
WO2021218347A1 (zh) 一种聚类的方法和装置
WO2023045182A1 (zh) 目标物体的定位
WO2022083529A1 (zh) 一种数据处理方法及装置
US11698459B2 (en) Method and apparatus for determining drivable region information
Chung et al. Pohang canal dataset: A multimodal maritime dataset for autonomous navigation in restricted waters
US11429757B2 (en) Sensor calibration via extrinsic scanning
WO2021087751A1 (zh) 距离检测方法、距离检测设备、自主移动平台和存储介质
EP4180834A1 (en) Radar-lidar extrinsic calibration in unstructured environments
WO2022037370A1 (zh) 一种运动估计方法及装置
WO2022007465A1 (zh) 一种确定协方差的方法及相关装置
CN115131756A (zh) 一种目标检测方法及装置
WO2021196983A1 (zh) 一种自运动估计的方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21796933

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21796933

Country of ref document: EP

Kind code of ref document: A1