CN112393735B - Positioning method and device, storage medium and electronic device - Google Patents

Positioning method and device, storage medium and electronic device Download PDF

Info

Publication number
CN112393735B
CN112393735B CN201910755343.1A CN201910755343A CN112393735B CN 112393735 B CN112393735 B CN 112393735B CN 201910755343 A CN201910755343 A CN 201910755343A CN 112393735 B CN112393735 B CN 112393735B
Authority
CN
China
Prior art keywords
point cloud
cloud data
target object
coordinates
map
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910755343.1A
Other languages
Chinese (zh)
Other versions
CN112393735A (en
Inventor
请求不公布姓名
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ninebot Beijing Technology Co Ltd
Original Assignee
Ninebot Beijing Technology Co Ltd
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 Ninebot Beijing Technology Co Ltd filed Critical Ninebot Beijing Technology Co Ltd
Priority to CN201910755343.1A priority Critical patent/CN112393735B/en
Publication of CN112393735A publication Critical patent/CN112393735A/en
Application granted granted Critical
Publication of CN112393735B publication Critical patent/CN112393735B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • G01C21/30Map- or contour-matching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • G01S17/42Simultaneous measurement of distance and other co-ordinates
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position
    • G01S19/48Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Automation & Control Theory (AREA)
  • Navigation (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

The invention provides a positioning method and device, a storage medium and an electronic device, wherein the method comprises the following steps: determining an initial coordinate of a target object under a preset coordinate system; in the moving process of the target object, acquiring point cloud data in a preset range of initial coordinates; performing point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map; matching the local point cloud segmentation map with the global feature map to obtain coordinates of clustered point cloud data in the global feature map; and positioning the coordinates of the target object by using the coordinates of the clustered point cloud data in the global feature map. The invention solves the problem of higher positioning cost and achieves the effect of reducing the positioning cost.

Description

Positioning method and device, storage medium and electronic device
Technical Field
The present invention relates to the field of communications, and in particular, to a positioning method and apparatus, a storage medium, and an electronic apparatus.
Background
Existing positioning methods for outdoor unmanned vehicles generally rely on multi-beam lidar and real-time kinematic (Real Time Kinematic, RTK) techniques, which are as follows: firstly, according to longitude and latitude information obtained by an RTK measuring unit and coordinate conversion relation, obtaining the position of a vehicle under a laser high-precision map coordinate system established in advance; and then according to the position as an initial value, in a certain range near the initial value, further matching is carried out by using the point cloud information returned by the current laser radar, so that the pose information of the current vehicle with high precision can be obtained. However, the method requires that the vehicle is equipped with a multi-beam laser radar and an RTK measuring unit, and the RTK measuring unit is high in price, so that high cost is caused in a large-scale deployment stage.
In view of the above technical problems, no effective solution has been proposed in the related art.
Disclosure of Invention
The embodiment of the invention provides a positioning method and device, a storage medium and an electronic device, which are used for at least solving the problem of high positioning cost in the related technology.
According to an embodiment of the present invention, there is provided a positioning method including: determining an initial coordinate of a target object under a preset coordinate system; acquiring point cloud data in a preset range of the initial coordinate in the process of moving the target object, wherein the point cloud data comprises characteristic vectors of the point cloud data of the target object in the preset range and characteristic vectors of the point cloud data of other objects; performing point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map, wherein the local point cloud segmentation map comprises clustered point cloud data, and the local point cloud segmentation map comprises feature vectors of different objects in the clustered point cloud data; matching the local point cloud segmentation map with a global feature map to obtain coordinates of the clustered point cloud data in the global feature map, wherein the global feature map comprises coordinates corresponding to the point cloud data; and positioning the coordinates of the target object by using the coordinates of the clustered point cloud data in the global feature map.
Optionally, determining initial coordinates of the target object in the preset coordinate system includes: acquiring coordinate information of the target object by using a Global Positioning System (GPS), wherein the coordinate information comprises longitude information and latitude information of the position of the target object; and setting the coordinate information of the target object in the preset coordinate system according to a preset conversion algorithm to obtain an initial coordinate of the target object in the preset coordinate system, wherein the initial coordinate comprises distance information corresponding to the longitude information and the latitude information.
Optionally, after determining the initial coordinates of the target object in the preset coordinate system, the method further includes: before the target object moves, acquiring point cloud data in a preset range of the initial coordinates by using laser radar equipment; matching the feature vectors of different objects in the point cloud data with the preset feature vectors of the target objects to obtain the feature vectors of the target objects in the point cloud data; and determining the coordinate position corresponding to the feature vector of the target object as the target initial coordinate of the target object.
Optionally, before performing point cloud segmentation on the point cloud data to obtain the local point cloud segmentation map, the method further includes: filtering the ground point cloud data in the point cloud data to obtain point cloud data to be processed; and according to the spatial distribution of the point cloud data to be processed, performing point cloud segmentation on the point cloud data to be processed to obtain first target point cloud data.
Optionally, performing point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map, including: extracting a feature vector of cloud data of a first target point; determining second target point cloud data which corresponds to the feature vector and has the same dimension as the first target point cloud data; determining identification information of the class to which the cloud data of the second target point belong by utilizing the feature vector; and performing point cloud segmentation on the second target point cloud data according to the identification information of the class to which the second target point cloud data belongs to obtain the local point cloud segmentation map, wherein the local point cloud segmentation map comprises point cloud segmentation data respectively corresponding to the target object and other objects.
Optionally, matching the local point cloud segmentation map with the global feature map to obtain coordinates of the clustered point cloud data in the global feature map, including: determining a first Euclidean distance of the mass centers of every two point cloud clusters in the clustered point cloud data in the local point cloud segmentation map; determining a second Euclidean distance of the mass centers of every two point cloud clusters in the clustered point cloud data in the global feature map; and under the condition that the difference value between the first Euclidean distance and the second Euclidean distance is smaller than a preset threshold value, determining that the local point cloud segmentation map is matched with the global feature map, and obtaining coordinates of the clustered point cloud data in the global feature map.
Optionally, locating the coordinates of the target object by using the clustered point cloud data in the coordinates of the global feature map includes: determining a point cloud cluster corresponding to the first euclidean distance and the second euclidean distance as the point cloud cluster of the target object; and determining the coordinates of the point cloud clusters of the target object in the global feature map as the coordinates of the target object so as to position the target object.
According to another embodiment of the present invention, there is provided a positioning device including: the first determining module is used for determining initial coordinates of the target object under a preset coordinate system; the first acquisition module is used for acquiring point cloud data in the preset range of the initial coordinate in the process of moving the target object, wherein the point cloud data comprises characteristic vectors of the point cloud data of the target object in the preset range and characteristic vectors of the point cloud data of other objects; the second determining module is used for carrying out point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map, wherein the local point cloud segmentation map comprises clustered point cloud data, and the local point cloud segmentation map comprises feature vectors of different objects in the clustered point cloud data; the third determining module is used for matching the local point cloud segmentation map with the global feature map to obtain coordinates of the clustered point cloud data in the global feature map, wherein the global feature map comprises coordinates corresponding to the point cloud data; and the first positioning module is used for positioning the coordinates of the target object by using the coordinates of the clustered point cloud data in the global feature map.
According to a further embodiment of the invention, there is also provided a storage medium having stored therein a computer program, wherein the computer program is arranged to perform the steps of any of the method embodiments described above when run.
According to a further embodiment of the invention, there is also provided an electronic device comprising a memory having stored therein a computer program and a processor arranged to run the computer program to perform the steps of any of the method embodiments described above.
According to the method and the device, the initial coordinates of the target object under the preset coordinate system are determined; in the moving process of the target object, acquiring point cloud data in a preset range of initial coordinates, wherein the point cloud data comprises characteristic vectors of the point cloud data of the target object in the preset range and characteristic vectors of the point cloud data of other objects; performing point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map, wherein the local point cloud segmentation map comprises clustered point cloud data, and the local point cloud segmentation map comprises feature vectors of different objects in the clustered point cloud data; matching the local point cloud segmentation map with the global feature map to obtain coordinates of clustered point cloud data in the global feature map, wherein the global feature map comprises coordinates corresponding to the point cloud data; and positioning the coordinates of the target object by using the coordinates of the clustered point cloud data in the global feature map. The target object can be positioned by utilizing the local point cloud segmentation map and the global feature map, so that the problem of high positioning cost can be solved, and the effect of reducing the positioning cost is achieved.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this application, illustrate embodiments of the invention and together with the description serve to explain the invention and do not constitute a limitation on the invention. In the drawings:
fig. 1 is a block diagram of a hardware structure of a mobile terminal of a positioning method according to an embodiment of the present invention;
FIG. 2 is a flow chart of a positioning method according to an embodiment of the invention;
FIG. 3 is a schematic diagram of feature extraction according to an embodiment of the invention;
fig. 4 is a block diagram of a positioning device according to an embodiment of the present invention.
Detailed Description
The invention will be described in detail hereinafter with reference to the drawings in conjunction with embodiments. It should be noted that, in the case of no conflict, the embodiments and features in the embodiments may be combined with each other.
It should be noted that the terms "first," "second," and the like in the description and the claims of the present invention and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order.
The method embodiments provided by the embodiments of the present application may be performed in a mobile terminal, a computer terminal, or similar computing device. Taking the mobile terminal as an example, fig. 1 is a block diagram of a hardware structure of a mobile terminal of a positioning method according to an embodiment of the present invention. As shown in fig. 1, the mobile terminal 10 may include one or more (only one is shown in fig. 1) processors 102 (the processor 102 may include, but is not limited to, a microprocessor MCU or a processing device such as a programmable logic device FPGA) and a memory 104 for storing data, and optionally a transmission device 106 for communication functions and an input-output device 108. It will be appreciated by those skilled in the art that the structure shown in fig. 1 is merely illustrative and not limiting of the structure of the mobile terminal described above. For example, the mobile terminal 10 may also include more or fewer components than shown in FIG. 1 or have a different configuration than shown in FIG. 1.
The memory 104 may be used to store a computer program, for example, a software program of application software and a module, such as a positioning method in an embodiment of the present invention, and the corresponding computer program, and the processor 102 executes the computer program stored in the memory 104, thereby performing various functional applications and data processing, that is, implementing the above-mentioned method. Memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include memory located remotely from the processor 102, which may be connected to the mobile terminal 10 via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The transmission means 106 is arranged to receive or transmit data via a network. The specific examples of networks described above may include wireless networks provided by the communication provider of the mobile terminal 10. In one example, the transmission device 106 includes a network adapter (Network Interface Controller, simply referred to as NIC) that can connect to other network devices through a base station to communicate with the internet. In one example, the transmission device 106 may be a Radio Frequency (RF) module, which is used to communicate with the internet wirelessly.
In this embodiment, a positioning method is provided, fig. 2 is a flowchart of the positioning method according to an embodiment of the present invention, and as shown in fig. 2, the flowchart includes the following steps:
step S202, determining initial coordinates of a target object under a preset coordinate system;
step S204, in the process of moving the target object, acquiring point cloud data in a preset range of initial coordinates, wherein the point cloud data comprises feature vectors of the point cloud data of the target object in the preset range and feature vectors of the point cloud data of other objects;
step S206, performing point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map, wherein the local point cloud segmentation map comprises clustered point cloud data, and the local point cloud segmentation map comprises feature vectors of different objects in the clustered point cloud data;
step S208, matching the local point cloud segmentation map with the global feature map to obtain coordinates of clustered point cloud data in the global feature map, wherein the global feature map comprises coordinates corresponding to the point cloud data;
and S210, positioning the coordinates of the target object by using the coordinates of the clustered point cloud data in the global feature map.
Alternatively, the execution subject of the above steps may be a terminal or the like, but is not limited thereto.
Alternatively, in the present embodiment, the target object includes, but is not limited to, an unmanned vehicle, a terminal device, a robot, or the like. The execution subject of the above steps may also be a controller or a processor provided in the target object. The preset coordinate system includes, but is not limited to, a high-precision laser coordinate system.
Optionally, a plurality of objects are included within the initial coordinate preset range, for example, in an application scene of the unmanned vehicle, there may be objects such as buildings, trees, etc. within 50 meters of the initial coordinates of the vehicle.
Optionally, included in the local point cloud segmentation map is a cluster of point cloud data for each object. The point cloud data includes feature vectors of the respective objects.
Alternatively, in this embodiment, the positioning of the target object may also be calculated by combining the laser odometer with the positioning result of the previous time. The laser odometer can calculate the sensor motion pose through the laser radar device.
Alternatively, the point cloud data of the target object may be acquired by a lidar device, for example, by a high-precision lidar odometer. The laser radar odometer has the characteristic of small drift within a certain distance (generally within 100 meters), and after the initialization positioning is finished, the laser radar odometer can be used for estimating positioning information of a period of time in a transition stage before the positioning based on the local point cloud segmentation map occurs. Similarly, in the transition stage between positioning based on the local point cloud segmentation map, a laser radar odometer may be used instead of positioning information.
According to the method and the device, the initial position of the target object is acquired before the target object moves, so that the preset range of the target object moving in a period of time is determined, the point cloud data of each object is determined in the preset range, and therefore the characteristic that the laser radar device acquires the point cloud data of the close-range object can be met. After the point cloud data of each object are acquired, the point cloud data of each object are subjected to point cloud segmentation to obtain the feature vector of each object, so that a local point cloud segmentation map is determined. And then, matching the local point cloud segmentation map with a predetermined global feature map, namely matching the objects in the local point cloud segmentation map into the global feature map, and determining the coordinate positions of the objects in the global feature map so as to determine the coordinate positions of the target objects, thereby realizing the real-time positioning of the target objects. Therefore, in this embodiment, the target object can be positioned only by using the point cloud data acquired by the laser radar device, and other positioning devices such as a global positioning system (Global Position System, abbreviated as GPS) can be omitted, so that not only can the target object be accurately positioned, but also the adoption of a plurality of positioning devices can be avoided, and the positioning cost can be reduced.
In an alternative embodiment, determining the initial coordinates of the target object in the preset coordinate system includes:
s1, acquiring coordinate information of a target object by using a GPS, wherein the coordinate information comprises longitude information and latitude information of a position of the target object;
s2, setting the coordinate information of the target object in a preset coordinate system according to a preset conversion algorithm to obtain an initial coordinate of the target object in the preset coordinate system, wherein the initial coordinate comprises distance information corresponding to longitude information and latitude information.
Alternatively, in this embodiment, for example, in a scenario of locating a vehicle, before the vehicle travels, the position of the vehicle under a laser high-precision map coordinate system established in advance may be obtained by using latitude and longitude information obtained by the GPS and a conversion relationship between GPS coordinates and distance. The position can be used as an initial coordinate, and in a certain range near the initial coordinate, the laser radar equipment is utilized to acquire the point cloud data of each object, so that a data basis is provided for the subsequent positioning of the vehicle.
Alternatively, in this embodiment, since the initial position of the target object is acquired before the target device moves, the initial positioning may be completed by using the GPS device carried by the target object itself, and no other positioning device may be used, thereby saving positioning resources, but not limited thereto.
According to the embodiment, the initial coordinates of the target object are determined, so that the scene range of the target object is defined, and the target object can be positioned more accurately.
In an alternative embodiment, after determining the initial coordinates of the target object in the preset coordinate system, the method further includes:
s1, before a target object moves, acquiring point cloud data in a preset range of initial coordinates by using laser radar equipment;
s2, before the target object moves, carrying out point cloud data matching on the feature vectors of different objects in the point cloud data and the preset feature vectors of the target object to obtain feature vector point cloud data of which the data are determined to be the target object in the point cloud data;
and S3, determining the coordinate position corresponding to the point cloud data feature vector of the target object as the target initial coordinate of the target object.
Alternatively, in the present embodiment, for example, in a scene where a vehicle is located, after the initial coordinates of the vehicle are acquired using the GPS device, in order to further accurately the initial coordinates of the vehicle, point cloud data of each object in the vicinity of the vehicle may be acquired using the lidar device to optimize the initial coordinates. After the point cloud data of each object are acquired by the laser radar equipment, feature vectors of the point cloud data of each object are determined, each feature vector is compared with a preset feature vector of the vehicle, the feature vector matched with the preset feature vector of the vehicle in the feature vectors of each object is determined to be the feature vector of the vehicle, and therefore the coordinate position corresponding to the feature vector is determined to be the target initial coordinate.
Alternatively, if the initial coordinates do not match the target initial coordinates, then the target initial coordinates are subject to. If so, the initial coordinates are taken as the coordinate positions before the target object moves.
According to the embodiment, the initial coordinates of the target object are optimized by combining the laser radar equipment, so that a relatively accurate preset range can be determined, and the accuracy of positioning the target object is improved.
In an optional embodiment, before performing point cloud segmentation on the point cloud data to obtain the local point cloud segmentation map, the method further includes:
s1, filtering ground point cloud data in point cloud data to obtain point cloud data to be processed;
and S2, performing point cloud segmentation on the point cloud data to be processed according to the spatial distribution of the point cloud data to be processed, and obtaining first target point cloud data.
Optionally, in this embodiment, in a scenario of locating a vehicle, point cloud data of the vehicle may also be acquired by using a vehicle sensor, and feature vectors of the point cloud data may be segmented according to spatial distribution, so as to obtain feature vectors of the vehicle.
According to the embodiment, through processing of the point cloud data and point cloud segmentation, the point cloud data of the target object can be accurately determined. Thereby improving positioning accuracy.
In an optional embodiment, performing point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map, including:
s1, extracting a feature vector of cloud data of a first target point; in this embodiment, the feature extraction module may be used to extract the feature vector of the cloud data of the first target point, where the feature extraction module includes, but is not limited to, a part of a convolutional neural network (Convolutional Neural Network, abbreviated as CNN) model, where CNN is a feedforward neural network, and its artificial neurons may respond to surrounding units within a part of coverage, and have excellent performance for large-scale image processing. Convolutional neural networks consist of one or more convolutional layers and a top fully connected layer (corresponding to classical neural networks) and also include associated weights and pooling layers (pooling layers). This structure enables the convolutional neural network to take advantage of the two-dimensional structure of the input data. Convolutional neural networks can give better results in terms of image and speech recognition than other deep learning structures. For three-dimensional point cloud data, researchers imitate two-dimensional convolution operators and propose three-dimensional convolution operators, so that CNN can better extract effective information from the three-dimensional data. For example, the first target point cloud data is input into the feature extraction module, and the feature vector of the first target point cloud data output by the feature extraction module is obtained.
S2, determining second target point cloud data which correspond to the feature vectors and have the same dimension as the first target point cloud data; in this embodiment, the point cloud reconstruction module in the convolutional neural network model may determine second target point cloud data corresponding to the feature vector and having the same dimension as the first target point cloud data, for example, input the feature vector into the point cloud reconstruction module to obtain second target point cloud data output by the point cloud reconstruction module and having the same dimension as the first target point cloud data.
S3, determining identification information of the class to which the cloud data of the second target point belong by using the feature vector; in this embodiment, the identification information of the class to which the cloud data of the second target point belongs may be determined by a segmentation semantic extraction module in the convolutional neural network model. For example, the feature vector is input to a point cloud segmentation semantic extraction module to obtain identification information of the class to which the second target point cloud data output by the point cloud segmentation semantic extraction module belongs;
and S4, performing point cloud segmentation on the second target point cloud data according to the identification information of the class to which the second target point cloud data belongs to obtain a local point cloud segmentation map, wherein the local point cloud segmentation map comprises point cloud segmentation data corresponding to the target object and other objects respectively.
Alternatively, the structure of the convolutional neural network model is shown in fig. 3.
Optionally, in this embodiment, the feature extraction module and the point cloud reconstruction module form an encoder and decoder structure, which makes feature vectors extracted by the feature extraction module for different point cloud partitions uniformly distributed in the feature space.
Alternatively, in the present embodiment, the laser odometer module may be used to perform point cloud segmentation on feature vectors of point cloud data of each object acquired by the laser radar apparatus. The laser odometer module can match the feature vectors of the obtained point cloud data in the adjacent frames of each object, so that the vector features of each object are determined. The laser odometer module can process the point cloud data of each object, wherein the point cloud data are filtered through the point cloud height information, and the processed point cloud data are subjected to clustering operation, so that a local point cloud segmentation map is determined.
Alternatively, in the present embodiment, the local point cloud segmentation map may be determined by a preset feature, for example, the number of set point cloud segmentations, the position of the centroid of the point cloud segmentations, the maximum height, the minimum height, and the like of the points cloud segmentations.
According to the embodiment, through the feature extraction of the point cloud data, the feature vector of the target object can be accurately determined, and the local point cloud segmentation map of each object is obtained, so that the positioning of the target object is facilitated.
In an optional embodiment, matching the local point cloud segmentation map with the global feature map to obtain coordinates of clustered point cloud data in the global feature map includes:
s1, determining a first Euclidean distance of the mass centers of every two point cloud clusters in clustered point cloud data in a local point cloud segmentation map;
s2, determining a second Euclidean distance of the mass centers of every two point cloud clusters in the clustered point cloud data in the global feature map;
and S3, under the condition that the difference value between the first Euclidean distance and the second Euclidean distance is smaller than a preset threshold value, determining that the local point cloud segmentation map is matched into the global feature map, and obtaining coordinates of clustered point cloud data in the global feature map.
Alternatively, in the present embodiment, feature vectors corresponding to feature vectors of respective objects in the local point cloud segmentation map may be obtained by performing nearest neighbor search in a feature space constituted by the global feature map. The feature vector satisfying a specific position in the global feature vector can be determined by the following formula: d l (c i ,c j )-d t (c i ,c j ) E is smaller than or equal to d l (c i ,c j ) Representing the Euclidean distance of the centroid of a pair of feature vectors in a local point cloud segmentation map, d t (c i ,c j ) Representing the euclidean distance of the feature vector to the centroid in the global feature map. Constructing g= (V, E), wherein v= { c i The point cloud segmentation, e= { E } is represented ij And (c) represents an undirected edge, to which are connected all pairs of point cloud segments (c i ,c j ). And (5) finding out the maximum group problem (Maximal Clique Problem) of G, namely finding out the position of the matched local point cloud segmentation map in the global feature map, and obtaining the pose of the laser sensor in the global feature map.
According to the embodiment, the matching local point cloud segmentation map is matched with the global feature map, so that the target object can be accurately positioned, GPS positioning is not needed, only laser radar equipment is needed, and positioning resources are saved.
In an alternative embodiment, locating coordinates of the target object in the global feature map using the clustered coordinates of the point cloud data includes:
s1, determining point cloud clusters corresponding to a first Euclidean distance and a second Euclidean distance as point cloud clusters of a target object;
s2, determining the coordinates of the point cloud clusters of the target object in the global feature map as the coordinates of the target object so as to locate the target object.
Optionally, the first euclidean distance refers to a distance of a centroid of the two point cloud clusters in the local point cloud segmentation map. The second euclidean distance refers to the distance of the centroids of the two point cloud clusters in the global feature map. The object corresponding to the point cloud cluster meeting the above condition can be determined as the point cloud cluster of the target object, so as to determine the coordinate position of the target object.
Optionally, in this embodiment, the feature vector of the target object in the local point cloud segmentation map is combined with the coordinate position in the global feature map, so as to obtain the location of the target object, and the location is completed only by relying on the laser radar information, so that the cost of location can be reduced.
From the description of the above embodiments, it will be clear to a person skilled in the art that the method according to the above embodiments may be implemented by means of software plus the necessary general hardware platform, but of course also by means of hardware, but in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art in the form of a software product stored in a storage medium (e.g. ROM/RAM, magnetic disk, optical disk) comprising instructions for causing a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) to perform the method according to the embodiments of the present invention.
The embodiment also provides a positioning device, which is used for implementing the above embodiment and the preferred implementation manner, and is not described in detail. As used below, the term "module" may be a combination of software and/or hardware that implements a predetermined function. While the means described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware, is also possible and contemplated.
Fig. 4 is a block diagram of a positioning device according to an embodiment of the present invention, as shown in fig. 4, the device includes:
a first determining module 42, configured to determine an initial coordinate of the target object in a preset coordinate system;
the first obtaining module 44 is configured to obtain, during movement of the target object, point cloud data within a preset range of initial coordinates, where the point cloud data includes feature vectors of the point cloud data of the target object within the preset range and feature vectors of the point cloud data of other objects;
the second determining module 46 is configured to perform point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map, where the local point cloud segmentation map includes clustered point cloud data, and the local point cloud segmentation map includes feature vectors of the point cloud data;
the third determining module 48 is configured to match the local point cloud segmentation map with the global feature map to obtain coordinates of clustered point cloud data in the global feature map, where the global feature map includes coordinates corresponding to the point cloud data;
the first positioning module 410 is configured to position coordinates of the target object in the global feature map by using the clustered coordinates of the point cloud data.
Optionally, the first determining module includes:
the first acquisition unit is used for acquiring coordinate information of the target object by using a Global Positioning System (GPS), wherein the coordinate information comprises longitude information and latitude information of the position of the target object;
the first setting unit is used for setting the coordinate information of the target object in a preset coordinate system according to a preset conversion algorithm to obtain an initial coordinate of the target object in the preset coordinate system, wherein the initial coordinate comprises distance information corresponding to the longitude information and the latitude information.
Optionally, the apparatus further includes:
the second acquisition module is used for acquiring point cloud data in a preset range of the initial coordinate by using the laser radar equipment after determining the initial coordinate of the target object under the preset coordinate system;
a fourth determining module, configured to determine, as point cloud data of the target object, point cloud data that matches preset point cloud data of the target object, from among the point cloud data, before the target object moves;
and the fifth determining module is used for determining the coordinate position corresponding to the point cloud data of the target object as the target initial coordinate of the target object.
Optionally, the apparatus further includes:
the sixth determining module is used for filtering the ground point cloud data in the point cloud data to obtain point cloud data to be processed before the point cloud data are subjected to point cloud segmentation to obtain a local point cloud segmentation map;
and the seventh determining module is used for carrying out point cloud segmentation on the point cloud data to be processed according to the spatial distribution of the point cloud data to be processed to obtain first target point cloud data.
Optionally, the sixth determining module includes:
the first determining unit is used for inputting the first target point cloud data into the feature extraction module to obtain a feature vector of the first target point cloud data output by the feature extraction module;
the second determining unit is used for inputting the feature vector into the point cloud reconstruction module to obtain second target point cloud data which is output by the point cloud reconstruction module and has the same dimension as the first target point cloud data;
the third determining unit is used for inputting the feature vector to the point cloud segmentation semantic extraction module to obtain the identification information of the class of the second target point cloud data output by the point cloud segmentation semantic extraction module;
and the fourth determining unit is used for carrying out point cloud segmentation on the second target point cloud data according to the identification information of the class to which the second target point cloud data belongs to obtain a local point cloud segmentation map, wherein the local point cloud segmentation map comprises point cloud segmentation data corresponding to the target object and other objects respectively.
Optionally, the third determining module includes:
a fifth determining unit, configured to determine a first euclidean distance of centroids of every two point cloud clusters in the clustered point cloud data in the local point cloud segmentation map;
a sixth determining unit, configured to determine a second euclidean distance between centroids of every two point cloud clusters in the clustered point cloud data in the global feature map;
and a seventh determining unit, configured to determine that the local point cloud segmentation map is matched to the global feature map when the difference between the first euclidean distance and the second euclidean distance is smaller than a preset threshold, so as to obtain coordinates of the clustered point cloud data in the global feature map.
Optionally, the first positioning module includes:
an eighth determining unit configured to determine a point cloud cluster corresponding to the first euclidean distance and the second euclidean distance as a point cloud cluster of the target object;
and a ninth determining unit, configured to determine coordinates of the point cloud clusters of the target object in the global feature map as coordinates of the target object, so as to locate the target object.
It should be noted that, the embodiment of the positioning device is similar to the embodiment of the method described above, and will not be described herein.
It should be noted that each of the above modules may be implemented by software or hardware, and for the latter, it may be implemented by, but not limited to: the modules are all located in the same processor; alternatively, the above modules may be located in different processors in any combination.
An embodiment of the invention also provides a storage medium having a computer program stored therein, wherein the computer program is arranged to perform the steps of any of the method embodiments described above when run.
Alternatively, in the present embodiment, the above-described storage medium may be configured to store a computer program for performing the steps of:
s1, determining initial coordinates of a target object under a preset coordinate system;
s2, acquiring point cloud data in a preset range of initial coordinates in the process of moving the target object, wherein the point cloud data comprises feature vectors of the point cloud data of the target object in the preset range and feature vectors of the point cloud data of other objects;
s3, performing point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map;
s4, matching the local point cloud segmentation map with the global feature map to obtain coordinates of clustered point cloud data in the global feature map, wherein the global feature map comprises coordinates corresponding to the point cloud data;
s5, positioning the coordinates of the target object by using the coordinates of the clustered point cloud data in the global feature map.
Alternatively, in the present embodiment, the storage medium may include, but is not limited to: a usb disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a removable hard disk, a magnetic disk, or an optical disk, or other various media capable of storing a computer program.
An embodiment of the invention also provides an electronic device comprising a memory having stored therein a computer program and a processor arranged to run the computer program to perform the steps of any of the method embodiments described above.
Optionally, the electronic apparatus may further include a transmission device and an input/output device, where the transmission device is connected to the processor, and the input/output device is connected to the processor.
Alternatively, in the present embodiment, the above-described processor may be configured to execute the following steps by a computer program:
s1, determining initial coordinates of a target object under a preset coordinate system;
s2, acquiring point cloud data in a preset range of initial coordinates in the process of moving the target object, wherein the point cloud data comprises feature vectors of the point cloud data of the target object in the preset range and feature vectors of the point cloud data of other objects;
s3, performing point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map;
s4, matching the local point cloud segmentation map with the global feature map to obtain coordinates of clustered point cloud data in the global feature map, wherein the global feature map comprises coordinates corresponding to the point cloud data;
s5, positioning the coordinates of the target object by using the coordinates of the clustered point cloud data in the global feature map.
Alternatively, specific examples in this embodiment may refer to examples described in the foregoing embodiments and optional implementations, and this embodiment is not described herein.
It will be appreciated by those skilled in the art that the modules or steps of the invention described above may be implemented in a general purpose computing device, they may be concentrated on a single computing device, or distributed across a network of computing devices, they may alternatively be implemented in program code executable by computing devices, so that they may be stored in a memory device for execution by computing devices, and in some cases, the steps shown or described may be performed in a different order than that shown or described, or they may be separately fabricated into individual integrated circuit modules, or multiple modules or steps within them may be fabricated into a single integrated circuit module for implementation. Thus, the present invention is not limited to any specific combination of hardware and software.
The above description is only of the preferred embodiments of the present invention and is not intended to limit the present invention, but various modifications and variations can be made to the present invention by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the principle of the present invention should be included in the protection scope of the present invention.

Claims (9)

1. A positioning method, comprising:
determining an initial coordinate of a target object under a preset coordinate system;
in the moving process of the target object, acquiring point cloud data in the preset range of the initial coordinate, wherein the point cloud data comprises characteristic vectors of the point cloud data of the target object in the preset range and characteristic vectors of the point cloud data of other objects;
performing point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map, wherein the local point cloud segmentation map comprises clustered point cloud data, and the local point cloud segmentation map comprises feature vectors of different objects in the clustered point cloud data;
matching a local point cloud segmentation map with a global feature map to obtain coordinates of the clustered point cloud data in the global feature map, wherein the global feature map comprises coordinates corresponding to the point cloud data;
positioning the coordinates of the target object by utilizing the coordinates of the clustered point cloud data in the global feature map;
after determining the initial coordinates of the target object in the preset coordinate system, the method further comprises:
before the target object moves, acquiring point cloud data in a preset range of the initial coordinates by using laser radar equipment;
matching the feature vectors of different objects in the point cloud data with the preset feature vectors of the target object to obtain the feature vectors of the target object in the point cloud data;
and determining the coordinate position corresponding to the feature vector of the target object as the target initial coordinate of the target object.
2. The method of claim 1, wherein determining initial coordinates of the target object in the preset coordinate system comprises:
acquiring coordinate information of the target object by using a Global Positioning System (GPS), wherein the coordinate information comprises longitude information and latitude information of the position of the target object;
setting the coordinate information of the target object in a preset coordinate system according to a preset conversion algorithm to obtain an initial coordinate of the target object in the preset coordinate system, wherein the initial coordinate comprises distance information corresponding to the longitude information and the latitude information.
3. The method of claim 1, wherein prior to performing point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map, the method further comprises:
filtering ground point cloud data in the point cloud data to obtain point cloud data to be processed;
and according to the spatial distribution of the point cloud data to be processed, performing point cloud segmentation on the point cloud data to be processed to obtain first target point cloud data.
4. A method according to claim 3, wherein performing point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map comprises:
extracting a feature vector of the first target point cloud data;
determining second target point cloud data corresponding to the feature vector, wherein the second target point cloud data is identical to the first target point cloud data in dimension;
determining identification information of the class to which the second target point cloud data belongs by utilizing the feature vector;
and performing point cloud segmentation on the second target point cloud data according to the identification information of the class to which the second target point cloud data belongs to obtain the local point cloud segmentation map, wherein the local point cloud segmentation map comprises point cloud segmentation data corresponding to the target object and other objects respectively.
5. The method of claim 1, wherein matching the local point cloud segmentation map with the global feature map results in coordinates of the clustered point cloud data in the global feature map, comprising:
determining a first Euclidean distance of the mass centers of every two point cloud clusters in the clustered point cloud data in the local point cloud segmentation map;
determining a second Euclidean distance of the mass centers of every two point cloud clusters in the clustered point cloud data in the global feature map;
and under the condition that the difference value between the first Euclidean distance and the second Euclidean distance is smaller than a preset threshold value, determining that the local point cloud segmentation map is matched into the global feature map, and obtaining coordinates of the clustered point cloud data in the global feature map.
6. The method of claim 5, wherein locating coordinates of the target object using coordinates of the clustered point cloud data in the global feature map comprises:
determining a point cloud cluster corresponding to the first Euclidean distance and the second Euclidean distance as the point cloud cluster of the target object;
and determining the coordinates of the point cloud clusters of the target object in the global feature map as the coordinates of the target object so as to position the target object.
7. A positioning device, comprising:
the first determining module is used for determining initial coordinates of the target object under a preset coordinate system;
the first acquisition module is used for acquiring point cloud data in the preset range of the initial coordinate in the process of moving the target object, wherein the point cloud data comprises characteristic vectors of the point cloud data of the target object in the preset range and characteristic vectors of the point cloud data of other objects;
the second determining module is used for carrying out point cloud segmentation on the point cloud data to obtain a local point cloud segmentation map, wherein the local point cloud segmentation map comprises clustered point cloud data, and the local point cloud segmentation map comprises feature vectors of different objects in the clustered point cloud data;
the third determining module is used for matching the local point cloud segmentation map with the global feature map to obtain coordinates of the clustered point cloud data in the global feature map, wherein the global feature map comprises coordinates corresponding to the point cloud data;
the first positioning module is used for positioning the coordinates of the target object by utilizing the coordinates of the clustered point cloud data in the global feature map;
the device is also used for acquiring point cloud data in a preset range of the initial coordinate by using laser radar equipment after the initial coordinate in a preset coordinate system and before the target object moves; matching the feature vectors of different objects in the point cloud data with the preset feature vectors of the target object to obtain the feature vectors of the target object in the point cloud data; and determining the coordinate position corresponding to the feature vector of the target object as the target initial coordinate of the target object.
8. A storage medium having a computer program stored therein, wherein the computer program is arranged to perform the method of any of claims 1 to 6 when run.
9. An electronic device comprising a memory and a processor, characterized in that the memory has stored therein a computer program, the processor being arranged to run the computer program to perform the method of any of the claims 1 to 6.
CN201910755343.1A 2019-08-15 2019-08-15 Positioning method and device, storage medium and electronic device Active CN112393735B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910755343.1A CN112393735B (en) 2019-08-15 2019-08-15 Positioning method and device, storage medium and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910755343.1A CN112393735B (en) 2019-08-15 2019-08-15 Positioning method and device, storage medium and electronic device

Publications (2)

Publication Number Publication Date
CN112393735A CN112393735A (en) 2021-02-23
CN112393735B true CN112393735B (en) 2023-05-30

Family

ID=74601746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910755343.1A Active CN112393735B (en) 2019-08-15 2019-08-15 Positioning method and device, storage medium and electronic device

Country Status (1)

Country Link
CN (1) CN112393735B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113267787A (en) * 2021-02-26 2021-08-17 深圳易行机器人有限公司 AGV accurate positioning system based on laser navigation and control method thereof
CN112734810B (en) * 2021-04-06 2021-07-02 北京三快在线科技有限公司 Obstacle tracking method and device
CN113537314A (en) * 2021-06-30 2021-10-22 上海西井信息科技有限公司 Longitudinal positioning method and device for unmanned vehicle, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106023210A (en) * 2016-05-24 2016-10-12 百度在线网络技术(北京)有限公司 Unmanned vehicle, and unmanned vehicle positioning method, device and system
CN106529573A (en) * 2016-10-14 2017-03-22 北京联合大学 Real-time object detection method based on combination of three-dimensional point cloud segmentation and local feature matching
CN108089191A (en) * 2017-12-25 2018-05-29 中山大学 A kind of Global localization system and method based on laser radar
CN109887028A (en) * 2019-01-09 2019-06-14 天津大学 A kind of unmanned vehicle assisted location method based on cloud data registration
CN110095752A (en) * 2019-05-07 2019-08-06 百度在线网络技术(北京)有限公司 Localization method, device, equipment and medium

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108732603B (en) * 2017-04-17 2020-07-10 百度在线网络技术(北京)有限公司 Method and device for locating a vehicle

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106023210A (en) * 2016-05-24 2016-10-12 百度在线网络技术(北京)有限公司 Unmanned vehicle, and unmanned vehicle positioning method, device and system
CN106529573A (en) * 2016-10-14 2017-03-22 北京联合大学 Real-time object detection method based on combination of three-dimensional point cloud segmentation and local feature matching
CN108089191A (en) * 2017-12-25 2018-05-29 中山大学 A kind of Global localization system and method based on laser radar
CN109887028A (en) * 2019-01-09 2019-06-14 天津大学 A kind of unmanned vehicle assisted location method based on cloud data registration
CN110095752A (en) * 2019-05-07 2019-08-06 百度在线网络技术(北京)有限公司 Localization method, device, equipment and medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
室内服务机器人实时目标识别与定位系统设计;黄海卫等;《计算机工程与设计》;20160816(第08期);全文 *

Also Published As

Publication number Publication date
CN112393735A (en) 2021-02-23

Similar Documents

Publication Publication Date Title
CN112179330B (en) Pose determination method and device of mobile equipment
US11145073B2 (en) Computer vision systems and methods for detecting and modeling features of structures in images
US20210390329A1 (en) Image processing method, device, movable platform, unmanned aerial vehicle, and storage medium
CN111199564B (en) Indoor positioning method and device of intelligent mobile terminal and electronic equipment
CN111079685B (en) 3D target detection method
CN112393735B (en) Positioning method and device, storage medium and electronic device
CN108763287A (en) On a large scale can traffic areas driving map construction method and its unmanned application process
US20210358153A1 (en) Detection methods, detection apparatuses, electronic devices and storage media
EP3505868A1 (en) Method and apparatus for adjusting point cloud data acquisition trajectory, and computer readable medium
CN110908374B (en) Mountain orchard obstacle avoidance system and method based on ROS platform
CN110796135A (en) Target positioning method and device, computer equipment and computer storage medium
CN113343840B (en) Object identification method and device based on three-dimensional point cloud
CN110705385B (en) Method, device, equipment and medium for detecting angle of obstacle
CN109459759B (en) Urban terrain three-dimensional reconstruction method based on quad-rotor unmanned aerial vehicle laser radar system
CN115018039A (en) Neural network distillation method, target detection method and device
CN113343858A (en) Road network geographic position identification method and device, electronic equipment and storage medium
CN111899279A (en) Method and device for detecting motion speed of target object
CN109636897B (en) Octmap optimization method based on improved RGB-D SLAM
CN112991440A (en) Vehicle positioning method and device, storage medium and electronic device
CN110472092B (en) Geographical positioning method and system of street view picture
CN112689234A (en) Indoor vehicle positioning method and device, computer equipment and storage medium
CN111104861A (en) Method and apparatus for determining position of electric wire and storage medium
CN115830342A (en) Method and device for determining detection frame, storage medium and electronic device
CN111890358B (en) Binocular obstacle avoidance method and device, storage medium and electronic device
CN111504335B (en) Map construction method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant