Error elimination method, device and electronic equipment
By detecting the latest moving trajectory of the mobile device in real time and determining the common-view linear trajectory, error elimination is used to eliminate the point cloud data corresponding to the target straight trajectory and the common-view linear trajectory, the problem of closed-loop error elimination in 3D digital modeling is solved, and high-precision 3D digital modeling is achieved.
Patent Information
- Application Number
- CN202210751590.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-28
- Publication Date
- 2025-04-01
- Estimated Expiration
- 2042-06-28
AI Technical Summary
LiDAR mobile devices carrying small perspectives are difficult to effectively eliminate closed-loop errors during 3D digital modeling.
By detecting the latest moving trajectory of the mobile device in real time, the target linear trajectory and the common-view linear trajectory are determined, and the error is eliminated using the point cloud data corresponding to the target linear trajectory and the common-view linear trajectory.
The closed-loop error elimination of mobile devices carrying small-view angle lidar is achieved, the accuracy of 3D digital modeling is improved, and computing power consumption is reduced.
Smart Images

Figure CN115063461B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of digital modeling, and in particular to an error elimination method, device and electronic equipment. Background Art
[0002] High-precision and fast 3D (3-dimension) digital modeling of real scenes based on LiDAR has been applied in many industries. In the process of modeling 3D data models, mobile devices carrying LiDAR need to move in real scenes and collect point cloud data, and build 3D digital models based on the collected point cloud data.
[0003] In order to improve the accuracy of 3D digital models, it is necessary to eliminate closed-loop errors during the modeling process to eliminate the difference between the distance of the actual relative position and the distance of the closed-loop relative position. In the related technology, how to eliminate closed-loop errors for mobile devices carrying laser radars with a small viewing angle is a technical problem that needs to be solved urgently. Summary of the invention
[0004] The purpose of the embodiments of the present application is to provide an error elimination method, device and electronic device to perform closed-loop error elimination for a mobile device carrying a laser radar with a small viewing angle. The specific technical solution is as follows:
[0005] In a first aspect, an embodiment of the present invention provides an error elimination method, the method comprising:
[0006] During the movement of the mobile device, a straight line trajectory detection is performed on the latest moving trajectory of the mobile device in real time; wherein the latest moving trajectory is: a newly generated trajectory that has not been detected as a straight line trajectory;
[0007] When the latest target straight line trajectory is detected from the latest moving trajectory, a common view straight line trajectory corresponding to the target straight line trajectory is determined from the straight line trajectories detected in history; the common view straight line trajectory is a straight line trajectory whose corresponding visual field space has a common view space with the visual field space corresponding to the target straight line trajectory; the visual field space corresponding to each straight line trajectory is a set of visual field spaces of the mobile device at each position corresponding to the straight line trajectory;
[0008] Eliminate errors in target data based on a first point cloud about a target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory;
[0009] Among them, the target object is an object in the common visual space; the point cloud about the object corresponding to each straight line trajectory is: the point cloud about the object collected by the mobile device at each posture corresponding to the straight line trajectory; the target data includes: the posture information and point cloud data obtained during the movement of the mobile device.
[0010] Optionally, determining a common view straight line trajectory corresponding to the target straight line trajectory from the straight line trajectory detected historically includes:
[0011] From the linear trajectories detected historically, determine a linear trajectory whose trajectory direction is opposite to the target linear trajectory and whose line segment spacing with the target linear trajectory is less than a specified distance threshold as a preselected linear trajectory;
[0012] From each pre-selected linear trajectory, determine the corresponding point cloud coverage range and the point cloud coverage range corresponding to the target linear trajectory, and the pre-selected linear trajectory whose overlap ratio is greater than a specified ratio threshold is used as the common view linear trajectory;
[0013] The point cloud coverage of each straight line trajectory is: the coverage of the point cloud collected by the mobile device at each posture corresponding to the straight line trajectory, projected on the moving plane of the mobile device.
[0014] Optionally, there are multiple common view straight line trajectories;
[0015] Eliminating errors in target data based on a first point cloud about a target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory includes:
[0016] According to the order of the overlap ratio between the point cloud coverage range corresponding to each of the common-view linear trajectories and the point cloud coverage range corresponding to the target linear trajectory, a straight line trajectory is selected from each of the common-view linear trajectories as the linear trajectory to be used;
[0017] Attempting to use a first point cloud about a target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the straight line trajectory to be used to eliminate errors in target data;
[0018] If the error elimination is unsuccessful, the step of returning to the step of selecting a straight line trajectory from each of the common-view straight line trajectories as the straight line trajectory to be used, according to the order of the overlap ratio of the point cloud coverage range corresponding to each of the common-view straight line trajectories and the point cloud coverage range corresponding to the target straight line trajectory, until the error elimination is successful.
[0019] Optionally, performing error elimination on the target data based on a first point cloud about the target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory includes:
[0020] Performing point cloud registration on a first trajectory point cloud corresponding to the target linear trajectory and a second trajectory point cloud corresponding to the common-view linear trajectory; wherein the trajectory point cloud corresponding to each linear trajectory is: a point cloud obtained by splicing point clouds collected by the mobile device at each posture corresponding to the linear trajectory;
[0021] Determine a first point cloud about the target object from the registered first track point cloud, and determine a second point cloud about the target object from the registered second track point cloud;
[0022] Based on the first point cloud and the second point cloud, error elimination is performed on the target data collected by the mobile device.
[0023] Optionally, the target object is: a specified plane whose normal vector is perpendicular to a specified direction;
[0024] The step of determining a first point cloud about the target object from the registered first track point cloud, and determining a second point cloud about the target object from the registered second track point cloud, comprises:
[0025] Performing plane detection along the specified direction on the registered first trajectory point cloud, and taking the plane point cloud corresponding to the detected plane as the first point cloud;
[0026] The registered second trajectory point cloud is subjected to plane detection along the specified direction, and the plane point cloud corresponding to the detected plane is used as the second point cloud.
[0027] Optionally, performing error elimination on the target data collected by the mobile device based on the first point cloud and the second point cloud includes:
[0028] constructing a same-object constraint for the target data based on the first point cloud and the second point cloud;
[0029] Based on the same-object constraint, error elimination is performed on the target data collected by the mobile device.
[0030] Optionally, when the target object belongs to a plane, the same-object constraint is a same-plane constraint.
[0031] In a second aspect, an embodiment of the present invention provides an error elimination device, the device comprising:
[0032] The trajectory detection module is used to detect the latest moving trajectory of the mobile device in real time during the movement of the mobile device; wherein the latest moving trajectory is: the latest generated trajectory that has not been detected as a straight line trajectory;
[0033] A trajectory determination module is used to determine a common view linear trajectory corresponding to the target linear trajectory from the linear trajectories detected in history when the latest target linear trajectory is detected from the latest moving trajectory; the common view linear trajectory is a linear trajectory whose corresponding visual field space has a common view space with the visual field space corresponding to the target linear trajectory; the visual field space corresponding to each linear trajectory is a set of visual field spaces of the mobile device at each position corresponding to the linear trajectory;
[0034] An error elimination module, configured to eliminate errors of target data based on a first point cloud about a target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory;
[0035] Wherein, the target object is an object in the common visual space; the point cloud corresponding to each straight line trajectory is: the point cloud about the object collected by the mobile device at each posture corresponding to the straight line trajectory; the target data includes: the posture information and point cloud data acquired during the movement of the mobile device. Optionally, the trajectory determination module is specifically used to determine, from the historically detected straight line trajectories, a straight line trajectory whose trajectory direction is opposite to the target straight line trajectory and whose line segment spacing with the target straight line trajectory is less than a specified distance threshold, as a preselected straight line trajectory; from each preselected straight line trajectory, determine the preselected straight line trajectory whose corresponding point cloud coverage range and the point cloud coverage range corresponding to the target straight line trajectory, and whose overlap ratio is greater than a specified ratio threshold, as a common visual straight line trajectory; wherein the point cloud coverage range of each straight line trajectory is: the coverage range of the point cloud collected by the mobile device at each posture corresponding to the straight line trajectory, projected on the moving plane of the mobile device.
[0036] Optionally, there are multiple common view straight line trajectories;
[0037] The error elimination module is specifically used to select a straight line trajectory from each of the common view straight line trajectories as the straight line trajectory to be used in the order of the overlap ratio of the point cloud coverage range corresponding to each of the common view straight line trajectories and the point cloud coverage range corresponding to the target straight line trajectory; try to use the first point cloud of the target object corresponding to the target straight line trajectory and the second point cloud of the target object corresponding to the straight line trajectory to be used to eliminate errors in the target data; if the error elimination is unsuccessful, return to the step of selecting a straight line trajectory from each of the common view straight line trajectories as the straight line trajectory to be used in the order of the overlap ratio of the point cloud coverage range corresponding to each of the common view straight line trajectories and the point cloud coverage range corresponding to the target straight line trajectory, until the error elimination is successful.
[0038] Optionally, the error elimination module includes:
[0039] A point cloud registration submodule is used to perform point cloud registration on a first trajectory point cloud corresponding to the target linear trajectory and a second trajectory point cloud corresponding to the common view linear trajectory; wherein the trajectory point cloud corresponding to each linear trajectory is: a point cloud obtained by splicing point clouds collected by the mobile device at each posture corresponding to the linear trajectory;
[0040] A point cloud determination submodule, used to determine a first point cloud about the target object from the registered first track point cloud, and to determine a second point cloud about the target object from the registered second track point cloud;
[0041] The error elimination submodule is used to eliminate errors of the target data collected by the mobile device based on the first point cloud and the second point cloud.
[0042] Optionally, the target object is: a specified plane whose normal vector is perpendicular to a specified direction;
[0043] The point cloud determination submodule is specifically used to perform plane detection along the specified direction on the first trajectory point cloud after alignment, and use the plane point cloud corresponding to the detected plane as the first point cloud; perform plane detection along the specified direction on the second trajectory point cloud after alignment, and use the plane point cloud corresponding to the detected plane as the second point cloud.
[0044] Optionally, the error elimination submodule is specifically used to construct a same-object constraint for the target data based on the first point cloud and the second point cloud; and based on the same-object constraint, perform error elimination on the target data collected by the mobile device.
[0045] Optionally, when the target object belongs to a plane, the same-object constraint is a same-plane constraint.
[0046] In a third aspect, an embodiment of the present invention provides an electronic device, including a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus;
[0047] Memory, used to store computer programs;
[0048] The processor is used to implement any method step described in the first aspect when executing a program stored in the memory.
[0049] In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium, characterized in that a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, any method step described in the first aspect is implemented.
[0050] Beneficial effects of the embodiments of the present application:
[0051] The error elimination method provided in the embodiment of the present application performs straight line trajectory detection on the latest moving trajectory of the mobile device in real time during the movement of the mobile device; when the latest target straight line trajectory is detected from the latest moving trajectory, a common view straight line trajectory corresponding to the target straight line trajectory is determined from the straight line trajectories detected historically; the common view straight line trajectory is: a straight line trajectory having a common view space between the corresponding field of view space and the field of view space corresponding to the target straight line trajectory; based on a first point cloud about a target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory, error elimination is performed on the target data.
[0052] Since the determined common view straight line trajectory is a straight line trajectory that has a common view space with the target straight line trajectory, it means that the point cloud collected by the mobile device at each posture corresponding to the target straight line trajectory and the point cloud collected by the mobile device at each posture corresponding to the common view straight line trajectory together contain the point cloud of the target object located in the common view space. Therefore, the first point cloud of the target object corresponding to the target straight line trajectory and the second point cloud of the target object corresponding to the common view straight line trajectory can be used to eliminate errors. In addition, since the common view straight line trajectory only needs to satisfy the common view space between the field of view space of the mobile device at its object posture and the field of view space at the posture corresponding to the target straight line trajectory, and the field of view range corresponding to the straight line trajectory is larger than the field of view range under a single posture, it is easier to find a common view straight line trajectory that has a common view space with the target straight line trajectory, so that a mobile device carrying a laser radar with a small field of view can also more easily meet the loop error elimination conditions, thereby realizing closed-loop error elimination for a mobile device carrying a laser radar with a small viewing angle.
[0053] Of course, implementing any product or method of the present application does not necessarily require achieving all of the advantages described above at the same time. BRIEF DESCRIPTION OF THE DRAWINGS
[0054] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application, and for ordinary technicians in this field, other embodiments can also be obtained based on these drawings.
[0055] Figure 1 is a schematic diagram of a closed-loop error elimination method in the related art;
[0056] Figure 2 A flowchart of the error elimination method provided in an embodiment of the present application;
[0057] Figure 3 A trajectory schematic diagram provided in an embodiment of the present application;
[0058] Figure 4 A schematic diagram of a scenario provided in an embodiment of the present application;
[0059] Figure 5 A schematic diagram of a point cloud coverage range corresponding to a straight line trajectory provided in an embodiment of the present application;
[0060] Figure 6 Another flow chart of the error elimination method provided in the embodiment of the present application;
[0061] Figure 7 Another flow chart of the error elimination method provided in the embodiment of the present application;
[0062] Figure 8a A schematic diagram of point cloud registration provided in an embodiment of the present application;
[0063] Figure 8b A schematic diagram after point cloud registration is completed provided in an embodiment of the present application;
[0064] Fig. 9 A schematic diagram of performing plane detection along a specified direction provided by an embodiment of the present application;
[0065] Fig.10 A schematic diagram of constraining a first point cloud and a second point cloud provided in an embodiment of the present application;
[0066] Fig.11 A schematic diagram of error elimination provided in an embodiment of the present application;
[0067] Fig.12 A schematic diagram of the structure of an error elimination device provided in an embodiment of the present application;
[0068] Fig.13A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0069] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field based on the present application belong to the scope of protection of the present application.
[0070] like Figure 1 As shown, it is a schematic diagram of the closed-loop error elimination method in the related art, where the triangles in the figure represent mobile devices (solid triangles are mobile devices at the current position, and dotted triangles are mobile devices at adjacent positions), and the U-shaped trajectory is the movement trajectory of the mobile device in the Room. The closed-loop detection logic of the related art is to detect adjacent positions that are adjacent in position but not in time to the current position, and then based on the posture information and point cloud data obtained at the adjacent positions and the posture information and point cloud data obtained at the current position, the posture information and point cloud data obtained during the entire movement process are eliminated to eliminate the difference between the actual relative position of the target object and the relative position of the closed loop.
[0071] However, the use of the closed-loop error elimination method in the related art requires that the laser radar carried by the mobile device be able to collect point cloud data of the same spatial object at the current position and the adjacent position. For a laser radar with a small viewing angle, it is often impossible to collect point cloud data of the same spatial object at the current position and the adjacent position, resulting in the inability to perform closed-loop error elimination. Therefore, for mobile devices carrying laser radars with a small viewing angle, how to perform closed-loop error elimination is a technical problem that needs to be solved urgently.
[0072] In order to perform closed-loop error elimination on a mobile device carrying a laser radar with a small viewing angle, an embodiment of the present application provides an error elimination method, device and electronic device.
[0073] It should be noted that in specific applications, the embodiments of the present application can be applied to mobile devices, which can be mobile robots or handheld laser radar scanners, and the mobile robots can be service robots or welcoming robots. Alternatively, the error elimination method provided in the embodiments of the present application can also be applied to various other electronic devices, such as smart phones, personal computers, servers and other devices with data processing capabilities. It should be noted that when applied to various other electronic devices, the electronic device can communicate with the mobile device, so that the trajectory, posture information and point cloud data collected by the laser radar during the movement of the mobile device can be obtained. In addition, the error elimination method provided in the embodiments of the present application can be implemented by software, hardware, or a combination of software and hardware.
[0074] The error elimination method provided in the embodiment of the present application may include:
[0075] During the movement of the mobile device, a straight line trajectory detection is performed on the latest moving trajectory of the mobile device in real time; wherein the latest moving trajectory is: a newly generated trajectory that has not been detected as a straight line trajectory;
[0076] When the latest target straight line trajectory is detected from the latest moving trajectory, a common view straight line trajectory corresponding to the target straight line trajectory is determined from the straight line trajectories detected in history; the common view straight line trajectory is a straight line trajectory whose corresponding visual field space has a common view space with the visual field space corresponding to the target straight line trajectory; the visual field space corresponding to each straight line trajectory is the set of visual field spaces of the mobile device at each position corresponding to the straight line trajectory;
[0077] Eliminate errors in target data based on a first point cloud about the target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory;
[0078] Among them, the target object is an object in the common visual space; the point cloud about the object corresponding to each straight line trajectory is: the point cloud about the object collected by the mobile device at each posture corresponding to the straight line trajectory; the target data includes: the posture information and point cloud data obtained during the movement of the mobile device.
[0079] In the above scheme of the embodiment of the present application, since the common view linear trajectory only needs to satisfy the common view space between the field of view space of the mobile device in its object posture and the field of view space in the corresponding posture of the target linear trajectory, and the field of view corresponding to the linear trajectory is larger than the field of view in a single posture, it is easier to find a common view linear trajectory with a common view space with the target linear trajectory, so that a mobile device carrying a laser radar with a small field of view can also easily meet the loop error elimination conditions, thereby realizing closed-loop error elimination for a mobile device carrying a laser radar with a small viewing angle. Furthermore, the use of linear trajectories can avoid frequent error elimination, which can further save computing power.
[0080] The error elimination method provided in the embodiments of the present application will be described in detail below in conjunction with the accompanying drawings.
[0081] like Figure 2 As shown, the embodiment of the present application provides an error elimination method, including steps S201-S203, wherein:
[0082] S201, during the movement of the mobile device, performing a straight line trajectory detection on the latest movement trajectory of the mobile device in real time;
[0083] When a mobile device is moving, it can detect the straight line of the trajectory it passes through in real time. When a straight line trajectory is detected, the posture information corresponding to the straight line trajectory can be recorded. The posture information corresponding to each straight line trajectory includes the position of each point on the straight line trajectory, and the posture information of the mobile device when it is at that position.
[0084] like Figure 3 As shown, it is a trajectory schematic diagram provided in an embodiment of the present application. Figure 3 In the figure, each dot represents a position point on the moving trajectory of the mobile device, the arrow on the dot represents the posture of the mobile device when it is at that position, and the rectangular box represents the extracted straight line trajectory. In this example, there are four straight line trajectories: segment A, segment B, segment C and segment D.
[0085] The latest movement trajectory of the mobile device is a movement trajectory that is not in the historical detection record, or is the movement trajectory of the mobile device after the latest straight line trajectory is detected. Figure 3 For example, the mobile device moves in a U-shaped manner according to the trajectory of A→B→C→D. During the movement of the mobile device, the latest movement trajectory of the mobile device can be detected in real time as a straight line trajectory. For example, when the mobile device moves out of segment A, segment A can be identified as a straight line trajectory, and then it continues to move. When moving in segment B, due to insufficient length, the current position of the mobile device in segment B to the exit position of segment A is the latest movement trajectory. When the mobile device moves out of segment B and enters the U-shaped segment, segment B can be identified as a straight line trajectory, and so on.
[0086] In one implementation, a linear sliding window extractor can be used to extract a linear trajectory. During the movement of the mobile device, each time the mobile device generates a posture, the posture can be added to the tail of the sliding window of the linear sliding window extractor, and then the cumulative sum of the trajectory length in the sliding window, the posture angle difference between the head and the tail of the sliding window, and the absolute value of the posture angle difference between adjacent postures in the sliding window is calculated. When the posture angle difference between the head and the tail of the sliding window is greater than or equal to the first posture difference threshold, or the cumulative sum of the absolute value of the posture angle difference between adjacent postures in the sliding window is greater than or equal to the second posture difference threshold, the posture of the head of the sliding window is deleted. When the trajectory length in the sliding window is greater than the length threshold, and the posture angle difference between the head and the tail of the sliding window is less than the first posture difference threshold, and the cumulative sum of the absolute value of the posture angle difference between adjacent postures in the sliding window is less than the second posture difference threshold, all postures inside the sliding window constitute a linear trajectory.
[0087] S202, when the latest target straight line trajectory is detected from the latest moving trajectory, a common view straight line trajectory corresponding to the target straight line trajectory is determined from the straight line trajectories detected in the history;
[0088] The target straight line trajectory is the latest straight line trajectory detected from the latest moving trajectory. In simple terms, when a straight line trajectory is detected from the latest moving trajectory, the detected straight line trajectory can be used as the target straight line trajectory.
[0089] The above-mentioned common view linear trajectory is a linear trajectory with a common view space corresponding to the visual field space and the visual field space corresponding to the target linear trajectory; the visual field space corresponding to each linear trajectory is: the set of visual fields of the mobile device at each position corresponding to the linear trajectory. Figure 4 As shown, an embodiment of the present application provides a scenario schematic diagram. Figure 4 The mobile device moves along the middle U-shaped track. The black dot on the left indicates the current position of the mobile device. The field of view corresponding to the current frame collected by the mobile device at the current position Figure 4 The left ray shows the gray dot on the right, which indicates the historical position of the mobile device. The visual range of the candidate frames collected by the mobile device at this historical position Figure 4 The U-shaped track contains pillars 1 and 2 on both sides. Figure 4 It can be seen that the round-trip visual lasers of the mobile device in the left straight track (the straight track containing the black dots on the left) and the right straight track (the straight track containing the gray dots on the right) can both hit the bottom of the pillar. Therefore, the visual field space corresponding to the left straight track of the mobile device and the visual field space corresponding to the right straight track include the common visual space, that is, the space including the pillar. Therefore, if the left straight track is the target straight track, then the right straight track is the common visual straight track of the left straight track.
[0090] In one implementation, a linear trajectory whose trajectory direction is opposite to the target linear trajectory and whose line segment spacing with the target linear trajectory is less than a specified distance threshold can be determined from the linear trajectories detected historically as a preselected linear trajectory, and then from each preselected linear trajectory, the corresponding point cloud coverage and the point cloud coverage corresponding to the target linear trajectory, and the preselected linear trajectory whose overlap ratio is greater than a specified ratio threshold are determined as common-view linear trajectories. The above-mentioned specified ratio threshold can be determined based on demand and experience, for example, it can be 60%, and then the preselected linear trajectory whose point cloud coverage and the point cloud coverage corresponding to the target linear trajectory, and the overlap ratio is greater than 60%, are used as common-view linear trajectories. The trajectory direction of each linear trajectory is the moving direction of the mobile device when it moves on the linear trajectory. The line segment spacing between two linear segments can be the distance between the center points of the segments.
[0091] The point cloud coverage of each linear trajectory is: the coverage of the point cloud collected by the mobile device at each posture corresponding to the linear trajectory, projected on the moving plane of the mobile device. Figure 5 As shown, a schematic diagram of the coverage range of a point cloud corresponding to a straight line trajectory provided by an embodiment of the present application, the range formed by each feature point in the figure is the coverage range of the point cloud collected by the mobile device at each posture corresponding to the straight line trajectory, projected on the moving plane of the mobile device. Optionally, the point cloud corresponding to the straight line trajectory is composed of splicing laser points of each frame collected by the mobile device at each posture on the straight line trajectory, and then the rectangular coverage range of the spliced laser point cloud in the top view, that is, the moving plane of the mobile device, can be calculated.
[0092] S203, performing error elimination on the target data based on a first point cloud about the target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory;
[0093] The target object is the object in the common visual space; the point cloud corresponding to each straight line trajectory is the point cloud of the object collected by the mobile device at each posture corresponding to the straight line trajectory. The target data includes the point cloud data collected during the movement of the mobile device and the posture information generated based on the registration of the point cloud data.
[0094] In one implementation, the first trajectory point cloud corresponding to the target straight line trajectory and the second trajectory point cloud corresponding to the common view straight line trajectory can be registered, and then the first point cloud about the target object is determined from the registered first trajectory point cloud, and the second point cloud about the target object is determined from the registered second trajectory point cloud, and based on the first point cloud and the second point cloud, the target data collected by the mobile device is error-eliminated, that is, the 3D model constructed at the current moment is error-eliminated. Specifically, it will be described in detail in the subsequent embodiments and will not be repeated here.
[0095] In the above scheme of the embodiment of the present application, since the common view linear trajectory only needs to satisfy the common view space between the field of view space of the mobile device in its object posture and the field of view space in the corresponding posture of the target linear trajectory, and the field of view corresponding to the linear trajectory is larger than the field of view in a single posture, it is easier to find a common view linear trajectory with a common view space with the target linear trajectory, so that a mobile device carrying a laser radar with a small field of view can also easily meet the loop error elimination conditions, thereby realizing closed-loop error elimination for a mobile device carrying a laser radar with a small viewing angle. Furthermore, the use of linear trajectories can avoid frequent error elimination, which can further save computing power.
[0096] In one embodiment, when the common view straight line trajectory is a straight line trajectory whose corresponding point cloud coverage range and the point cloud coverage range corresponding to the target straight line trajectory have an overlap ratio greater than a specified ratio threshold, the common view straight line trajectory determined above may be multiple, for example, the common view straight line trajectory of the target straight line trajectory is 3.
[0097] In this case, if Figure 6 As shown, the error elimination method provided by another embodiment of the present application may include steps S601-S604:
[0098] S601, during the movement of the mobile device, performing straight line trajectory detection on the latest movement trajectory of the mobile device in real time;
[0099] The same or similar to step S201, the specific implementation method can refer to the relevant description of step S201, and this application will not repeat it here.
[0100] S602, when the latest target straight line trajectory is detected from the latest moving trajectory, a common view straight line trajectory corresponding to the target straight line trajectory is determined from the straight line trajectories detected in the history;
[0101] The same or similar to step S202, the specific implementation method can refer to the relevant description of step S202, and this application will not repeat it here.
[0102] S603, selecting a straight line trajectory from each common view straight line trajectory as the straight line trajectory to be used according to the order of the overlap ratio between the point cloud coverage area corresponding to each common view straight line trajectory and the point cloud coverage area corresponding to the target straight line trajectory;
[0103] Since there are multiple common view straight line trajectories, the common view straight line trajectories can be sorted according to the overlap ratio of the point cloud coverage range corresponding to each common view straight line trajectory and the point cloud coverage range corresponding to the target straight line trajectory. Generally speaking, the greater the overlap ratio, the greater the success rate of error elimination. Therefore, according to the order of the overlap ratio of the point cloud coverage range corresponding to each common view straight line trajectory and the point cloud coverage range corresponding to the target straight line trajectory, a straight line trajectory can be selected from the common view straight line trajectories as the straight line trajectory to be used.
[0104] Optionally, in order to improve the speed of error elimination and save computing resources, point clouds can be processed one by one from large to small according to their coverage. If a common view straight line trajectory successfully performs closed-loop error elimination, the remaining common view straight line trajectories may no longer be processed.
[0105] S604, try to use the first point cloud of the target object corresponding to the target straight line trajectory and the second point cloud of the target object corresponding to the straight line trajectory to be used to eliminate errors in the target data; if the error elimination is unsuccessful, return to step S603 until the error elimination is successful.
[0106] After determining the linear trajectory to be used, the first point cloud of the target object corresponding to the target linear trajectory and the second point cloud of the target object corresponding to the linear trajectory to be used can be used to eliminate the error of the target data. If the error elimination is unsuccessful, it means that the closed-loop correction is not successful. At this time, it is necessary to reselect the linear trajectory to be used, that is, it is necessary to return to step S603 to reselect the linear trajectory to be used until the error elimination is successful.
[0107] In the above scheme of the embodiment of the present application, closed-loop error elimination can be performed for mobile devices carrying laser radars with small viewing angles. At the same time, there may be multiple common-view linear trajectories. According to the order of the overlap ratio of the point cloud coverage range corresponding to each common-view linear trajectory and the point cloud coverage range corresponding to the target linear trajectory, the linear trajectory to be used can be selected from each common-view linear trajectory, and then the linear trajectory to be used can be used for error elimination. If the error elimination is unsuccessful, the execution trajectory to be used will continue to be selected until the error elimination is successful, which provides a basis for closed-loop error elimination for mobile devices carrying laser radars with small viewing angles.
[0108] like Figure 7 As shown, in another embodiment of the present application, the error elimination method provided by the above step S203 may include steps S701-S703:
[0109] S701, performing point cloud registration on a first trajectory point cloud corresponding to the target straight line trajectory and a second trajectory point cloud corresponding to the common view straight line trajectory;
[0110] The trajectory point cloud corresponding to each straight line trajectory is the point cloud obtained by stitching the point clouds collected by the mobile device at each posture corresponding to the straight line trajectory. Point cloud registration is to align point clouds acquired from multiple different perspectives to obtain a point cloud model with consistent spatial structure. Optionally, the Registration method of the open source point cloud PCL (Point Cloud Library) library can be called to perform point cloud registration. Figure 8a As shown, the embodiment of the present application provides a schematic diagram of point cloud registration, where the left side shows the local map point cloud before registration and the point cloud of the current frame collected by the mobile device at the current moment, wherein the solid line represents the local map point cloud before registration, and the dotted line represents the point cloud of the current frame, wherein the local map point cloud before registration is a splicing of the laser point cloud of each frame collected in a historical period of time and the corresponding posture, and there is a deviation between the local map point cloud before registration and the point cloud of the current frame. After the registration is completed, the registration result on the right is obtained, that is, the local map point cloud before registration coincides with the point cloud of the current frame, and the result is obtained. Figure 8a The corresponding point cloud on the right. Figure 8b As shown, the embodiment of the present application provides a schematic diagram after point cloud registration is completed. Figure 8a The enlarged image of the rectangular box in the point cloud after point cloud registration on the right. Figure 8b It can be seen from the point cloud in the box area that the point cloud overlap rate in the direction perpendicular to the U-shaped (round-trip) trajectory is low, so the point cloud registration accuracy along the trajectory direction is low.
[0111] S702, determining a first point cloud related to the target object from the registered first trajectory point cloud, and determining a second point cloud related to the target object from the registered second trajectory point cloud;
[0112] After the configuration is completed, the registered first track point cloud and the registered second track point cloud are aligned. At this time, the first point cloud about the target object can be determined from the registered first track point cloud, and the second point cloud about the target object can be determined from the registered second track point cloud. The first point cloud and the second point cloud are point clouds about the same object in the registered first track point cloud and the registered second track point cloud.
[0113] The target object may be a line segment, a plane or other object. In one implementation, the target object may be a specified plane whose normal vector is perpendicular to a specified direction. The specified direction may be a trajectory direction, that is, the direction in which the mobile device moves. In this case, the present application may determine the first point cloud and the second point cloud in the following manner, including:
[0114] The first track point cloud after registration is subjected to plane detection along the specified direction, and the detected plane is used as the first plane, and the point cloud corresponding to the first plane is the first point cloud. At the same time, the second track point cloud after registration can be subjected to plane detection along the specified direction, and the detected plane is used as the second plane, and the point cloud corresponding to the second plane is the second point cloud. Fig. 9 As shown, the embodiment of the present application provides a schematic diagram of plane detection along a specified direction, and the two planes on the left are first planes obtained by plane detection along the specified direction for the first trajectory point cloud after registration. The two planes on the right are second planes obtained by plane detection along the specified direction for the second trajectory point cloud after registration.
[0115] S703: Eliminate errors in target data collected by the mobile device based on the first point cloud and the second point cloud.
[0116] Among them, a same-object constraint for the target data can be constructed based on the first point cloud and the second point cloud. Depending on the target object, the same-object constraint applied is also different. For example, when the target object is a line segment, the above-mentioned same-object constraint can be a line segment constraint. For example, when the target object is a plane, the above-mentioned same-object constraint can be a plane constraint. The embodiments of the present invention will be described in detail later using the target object as a plane as an example. When the target object is other types of objects, the embodiments of the present invention will not be repeated. The relevant implementation method can refer to the implementation method of the plane.
[0117] When the target object is a plane, a coplanar constraint for the target data can be constructed based on the first plane corresponding to the first point cloud and the second plane corresponding to the second point cloud, and then the target data collected by the mobile device can be error eliminated based on the coplanar constraint. Fig.10 As shown, the embodiment of the present application provides a schematic diagram of constraining a first plane and a second plane. Fig. 9 After applying the same-plane constraint to the planes obtained by the detection, the first plane and the second plane can be constrained to the same plane. The process of applying the constraints to the first plane and the second plane means that the posture of the first point cloud corresponding to the first plane and the second point cloud corresponding to the second plane are adjusted. At the same time, in the process of adjusting the first point cloud and the second point cloud, the data of the entire target data is adjusted synchronously.
[0118] like Fig.11 As shown, the embodiment of the present application provides a schematic diagram of error elimination. The mobile device moves along a U-shaped (round trip) trajectory in the area between the pillar 1 and the pillar 2. Fig.11In the figure, the intermediate frame of the current trajectory straight segment is the intermediate frame of the target straight trajectory referred to in the present invention, the intermediate frame of the candidate trajectory straight segment is the intermediate frame of the common view straight trajectory, and the point cloud collected by the mobile device in the target straight trajectory and the common view straight trajectory includes the plane point cloud of the side of pillars 1 and 2, so that the above-mentioned same-object constraint can be a same-plane constraint for the plane. Since the feature points in each point cloud in the target data collected by the mobile device are fixedly connected with the posture of the mobile device when collecting each point cloud, it means that when the feature points in the point cloud are adjusted, the corresponding posture of the mobile device also needs to be adjusted. Therefore, the pose of the intermediate frame of each trajectory straight segment (i.e., the pose when the mobile device collects the intermediate frame) is fixedly connected to the point cloud of each plane, that is, the pose is fixedly connected to the plane, so that the trajectory straight segment (including the current trajectory straight segment and the candidate trajectory straight segment) can select the pose of the intermediate frame as the constraint object. The pose is fixed relative to the straight segment point cloud, so it is fixed relative to the detected plane; when the corresponding planes of the two poses are subject to the same plane constraint, the plane alignment will pull the pose change. The adjustment of the first point cloud and the second point cloud will drive the adjustment of the pose information corresponding to the first point cloud and the position pose corresponding to the second point cloud, and then drive the adjustment of the entire target data in turn.
[0119] In the above scheme of the embodiment of the present application, closed-loop error elimination can be performed for mobile devices carrying laser radars with small viewing angles. At the same time, point cloud registration can be performed for the first trajectory point cloud corresponding to the target straight line trajectory and the second trajectory point cloud corresponding to the common view straight line trajectory, and then the first point cloud about the target object is determined from the registered first trajectory point cloud, and the second point cloud about the target object is determined from the registered second trajectory point cloud, and based on the first point cloud and the second point cloud, the target data collected by the mobile device is error eliminated, which provides a basis for closed-loop error elimination for mobile devices carrying laser radars with small viewing angles.
[0120] After the closed-loop error of the target data is eliminated, the mobile device can continue to be controlled to move, and return to the step of performing straight-line trajectory detection on the latest moving trajectory of the mobile device in real time during the movement of the mobile device, until the mobile device completes the data collection task for the real scene, and then the movement process of the mobile device can be ended.
[0121] After the mobile device has finished moving, the posture information and point cloud data collected by the mobile device during the entire movement process can be used to build a 3D digital model for the real scene. Simply put, during the movement of the mobile device, a total of 1,000 frames of point cloud data are collected. For each frame of point cloud data, the conversion relationship between the body coordinate system of the mobile device and the world coordinate system can be determined based on the posture information of the mobile device when collecting the frame of point cloud data. Based on the conversion relationship, each feature point in the frame of point cloud data is projected to the world coordinate system, so that the position information of each feature point in the frame of point cloud data in the world coordinate system can be determined. Based on the position information of each feature point in the frame of point cloud data in the world coordinate system, feature points are constructed in the 3D digital model to be constructed, thereby completing the construction process from the collected point cloud data to the 3D digital model.
[0122] In another implementation method, during the data collection process of the mobile device, if the position information of the feature points in each frame of point cloud data collected by the mobile device is the position information in the world coordinate system, that is, during the collection of point cloud data, the mobile device converts the feature points collected by the lidar to feature points in the world coordinate system in real time based on the posture information. At this time, after the movement of the mobile device is completed, the feature points can be directly constructed in the 3D digital model to be constructed based on the feature points in each frame of point cloud collected by the mobile device, thereby completing the construction process from the collected point cloud data to the 3D digital model, and there is no need to convert the feature points of each frame of point cloud data from the body coordinate system of the mobile device to the world coordinate system.
[0123] In the embodiment of the present invention, since it is possible to ensure that a mobile device carrying a laser radar with a small viewing angle can perform closed-loop error elimination during movement, the error of each frame of point cloud data collected by the mobile device carrying a laser radar with a small viewing angle can be reduced, thereby improving the accuracy of the constructed 3D digital model.
[0124] Corresponding to the error elimination method provided in the above embodiment of the present application, as Fig.12 As shown, the embodiment of the present application also provides an error elimination device, the device comprising:
[0125] The trajectory detection module 1201 is used to perform straight-line trajectory detection on the latest moving trajectory of the mobile device in real time during the movement of the mobile device; wherein the latest moving trajectory is: a newly generated trajectory that has not been detected as a straight-line trajectory;
[0126] The trajectory determination module 1202 is used to determine a common view linear trajectory corresponding to the target linear trajectory from the linear trajectories detected in history when the latest target linear trajectory is detected from the latest moving trajectory; the common view linear trajectory is a linear trajectory whose corresponding visual field space has a common view space with the visual field space corresponding to the target linear trajectory; the visual field space corresponding to each linear trajectory is a set of visual field spaces of the mobile device at each position corresponding to the linear trajectory;
[0127] An error elimination module 1203 is used to eliminate errors of target data based on a first point cloud about a target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory;
[0128] Among them, the target object is an object in the common visual space; the point cloud about the object corresponding to each straight line trajectory is: the point cloud about the object collected by the mobile device at each posture corresponding to the straight line trajectory; the target data includes: the posture information and point cloud data obtained during the movement of the mobile device.
[0129] Optionally, the trajectory determination module is specifically used to determine, from historically detected straight line trajectories, a straight line trajectory whose trajectory direction is opposite to that of the target straight line trajectory and whose line segment spacing with the target straight line trajectory is less than a specified distance threshold, as a preselected straight line trajectory; from each preselected straight line trajectory, determine a preselected straight line trajectory whose corresponding point cloud coverage range and the point cloud coverage range corresponding to the target straight line trajectory, and whose overlap ratio is greater than a specified ratio threshold, as a common view straight line trajectory; wherein the point cloud coverage range of each straight line trajectory is: the coverage range of the point cloud collected by the mobile device at each posture corresponding to the straight line trajectory, projected on the moving plane of the mobile device.
[0130] Optionally, there are multiple common view straight line trajectories;
[0131] The error elimination module is specifically used to select a straight line trajectory from each of the common view straight line trajectories as the straight line trajectory to be used in the order of the overlap ratio of the point cloud coverage range corresponding to each of the common view straight line trajectories and the point cloud coverage range corresponding to the target straight line trajectory; try to use the first point cloud of the target object corresponding to the target straight line trajectory and the second point cloud of the target object corresponding to the straight line trajectory to be used to eliminate errors in the target data; if the error elimination is unsuccessful, return to the step of selecting a straight line trajectory from each of the common view straight line trajectories as the straight line trajectory to be used in the order of the overlap ratio of the point cloud coverage range corresponding to each of the common view straight line trajectories and the point cloud coverage range corresponding to the target straight line trajectory, until the error elimination is successful.
[0132] Optionally, the error elimination module includes:
[0133] A point cloud registration submodule is used to perform point cloud registration on a first trajectory point cloud corresponding to the target linear trajectory and a second trajectory point cloud corresponding to the common view linear trajectory; wherein the trajectory point cloud corresponding to each linear trajectory is: a point cloud obtained by splicing point clouds collected by the mobile device at each posture corresponding to the linear trajectory;
[0134] A point cloud determination submodule, used to determine a first point cloud about the target object from the registered first track point cloud, and to determine a second point cloud about the target object from the registered second track point cloud;
[0135] The error elimination submodule is used to eliminate errors of the target data collected by the mobile device based on the first point cloud and the second point cloud.
[0136] Optionally, the target object is: a specified plane whose normal vector is perpendicular to a specified direction;
[0137] The point cloud determination submodule is specifically used to perform plane detection along the specified direction on the first trajectory point cloud after alignment, and use the plane point cloud corresponding to the detected plane as the first point cloud; perform plane detection along the specified direction on the second trajectory point cloud after alignment, and use the plane point cloud corresponding to the detected plane as the second point cloud.
[0138] Optionally, the error elimination submodule is specifically used to construct a same-object constraint for the target data based on the first point cloud and the second point cloud; and based on the same-object constraint, perform error elimination on the target data collected by the mobile device.
[0139] Optionally, when the target object belongs to a plane, the same-object constraint is a same-plane constraint.
[0140] In the above scheme of the embodiment of the present application, since the common view linear trajectory only needs to satisfy the common view space between the field of view space of the mobile device in its object posture and the field of view space in the corresponding posture of the target linear trajectory, and the field of view corresponding to the linear trajectory is larger than the field of view in a single posture, it is easier to find a common view linear trajectory with a common view space with the target linear trajectory, so that a mobile device carrying a laser radar with a small field of view can also easily meet the loop error elimination conditions, thereby realizing closed-loop error elimination for a mobile device carrying a laser radar with a small viewing angle. Furthermore, the use of linear trajectories can avoid frequent error elimination, which can further save computing power.
[0141] The present application also provides an electronic device, such as Fig.13As shown, it includes a processor 1301, a communication interface 1302, a memory 1303 and a communication bus 1304, wherein the processor 1301, the communication interface 1302, and the memory 1303 communicate with each other through the communication bus 1304.
[0142] Memory 1303, used for storing computer programs;
[0143] The processor 1301 is used to implement the following steps when executing the program stored in the memory 1303:
[0144] During the movement of the mobile device, a straight line trajectory detection is performed on the latest moving trajectory of the mobile device in real time; wherein the latest moving trajectory is: a newly generated trajectory that has not been detected as a straight line trajectory;
[0145] When the latest target straight line trajectory is detected from the latest moving trajectory, a common view straight line trajectory corresponding to the target straight line trajectory is determined from the straight line trajectories detected in history; the common view straight line trajectory is a straight line trajectory whose corresponding visual field space has a common view space with the visual field space corresponding to the target straight line trajectory; the visual field space corresponding to each straight line trajectory is a set of visual field spaces of the mobile device at each position corresponding to the straight line trajectory;
[0146] Eliminate errors in target data based on a first point cloud about a target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory;
[0147] Among them, the target object is an object in the common visual space; the point cloud about the object corresponding to each straight line trajectory is: the point cloud about the object collected by the mobile device at each posture corresponding to the straight line trajectory; the target data includes: the posture information and point cloud data obtained during the movement of the mobile device.
[0148] The communication bus mentioned in the above electronic device can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0149] The communication interface is used for communication between the above electronic device and other devices.
[0150] The memory may include a random access memory (RAM) or a non-volatile memory (NVM), such as at least one disk memory. Optionally, the memory may also be at least one storage device located away from the aforementioned processor.
[0151] The above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
[0152] In another embodiment provided in the present application, a computer-readable storage medium is provided, in which a computer program is stored. When the computer program is executed by a processor, the steps of any of the above-mentioned error elimination methods are implemented.
[0153] In another embodiment provided by the present application, a computer program product including instructions is also provided, which, when executed on a computer, enables the computer to execute any error elimination method in the above embodiments.
[0154] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. 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, for example, the computer instructions may be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium may be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated. The available medium may be a magnetic medium, (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive Solid State Disk (SSD)), etc.
[0155] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
[0156] Each embodiment in this specification is described in a related manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the device, electronic device, computer-readable storage medium, and computer program product embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiments.
[0157] The above description is only a preferred embodiment of the present application and is not intended to limit the protection scope of the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application are included in the protection scope of the present application.
Claims
1. An error elimination method, characterized in that: The method comprises: During the movement of the mobile device, a linear trajectory detection is performed on the latest movement trajectory of the mobile device in real time; When the latest target straight line trajectory is detected from the latest moving trajectory, a straight line trajectory whose trajectory direction is opposite to the target straight line trajectory and whose line segment spacing with the target straight line trajectory is less than a specified distance threshold is determined from the historically detected straight line trajectories as a preselected straight line trajectory; from each preselected straight line trajectory, a preselected straight line trajectory whose corresponding point cloud coverage range and the point cloud coverage range corresponding to the target straight line trajectory and whose overlap ratio is greater than a specified ratio threshold is determined as a common view straight line trajectory; the common view straight line trajectory is a straight line trajectory whose corresponding field of view space has a common view space with the field of view space corresponding to the target straight line trajectory; the field of view space corresponding to each straight line trajectory is a collection of field of view spaces of the mobile device at each position corresponding to the straight line trajectory; Eliminate errors in target data based on a first point cloud about a target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory; Among them, the target object is an object in the common visual space; the point cloud about the object corresponding to each straight line trajectory is: the point cloud about the object collected by the mobile device at each posture corresponding to the straight line trajectory; the target data includes: the posture information and point cloud data obtained during the movement of the mobile device.
2. The method according to claim 1, characterized in that The point cloud coverage of each straight line trajectory is: the coverage of the point cloud collected by the mobile device at each posture corresponding to the straight line trajectory, projected on the moving plane of the mobile device.
3. The method according to claim 2, characterized in that There are multiple common-view straight line trajectories; Eliminating errors in target data based on a first point cloud about a target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory includes: According to the order of the overlap ratio between the point cloud coverage range corresponding to each of the common-view linear trajectories and the point cloud coverage range corresponding to the target linear trajectory, a straight line trajectory is selected from each of the common-view linear trajectories as the linear trajectory to be used; Attempting to use a first point cloud about a target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the straight line trajectory to be used to eliminate errors in target data; If the error elimination is unsuccessful, the step of returning to the step of selecting a straight line trajectory from each of the common-view straight line trajectories as the straight line trajectory to be used, according to the order of the overlap ratio of the point cloud coverage range corresponding to each of the common-view straight line trajectories and the point cloud coverage range corresponding to the target straight line trajectory, until the error elimination is successful.
4. The method according to claim 1, characterized in that: Eliminating errors in target data based on a first point cloud about a target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory includes: Performing point cloud registration on a first trajectory point cloud corresponding to the target linear trajectory and a second trajectory point cloud corresponding to the common-view linear trajectory; wherein the trajectory point cloud corresponding to each linear trajectory is: a point cloud obtained by splicing point clouds collected by the mobile device at each posture corresponding to the linear trajectory; Determine a first point cloud about the target object from the registered first track point cloud, and determine a second point cloud about the target object from the registered second track point cloud; Based on the first point cloud and the second point cloud, error elimination is performed on the target data collected by the mobile device.
5. The method according to claim 4, characterized in that The target object is: a specified plane whose normal vector is perpendicular to a specified direction; The step of determining a first point cloud about the target object from the registered first track point cloud, and determining a second point cloud about the target object from the registered second track point cloud, comprises: Performing plane detection along the specified direction on the registered first trajectory point cloud, and taking the plane point cloud corresponding to the detected plane as the first point cloud; The registered second trajectory point cloud is subjected to plane detection along the specified direction, and the plane point cloud corresponding to the detected plane is used as the second point cloud.
6. The method according to claim 4, characterized in that The performing error elimination on the target data collected by the mobile device based on the first point cloud and the second point cloud includes: constructing a same-object constraint for the target data based on the first point cloud and the second point cloud; Based on the same-object constraint, error elimination is performed on the target data collected by the mobile device.
7. The method according to claim 6, characterized in that In the case where the target object belongs to a plane, the same-object constraint is a same-plane constraint.
8. An error elimination device, characterized in that: The device comprises: The trajectory detection module is used to detect the latest moving trajectory of the mobile device in real time during the movement of the mobile device; wherein the latest moving trajectory is: the latest generated trajectory that has not been detected as a straight line trajectory; The trajectory determination module is used for, when the latest target straight line trajectory is detected from the latest moving trajectory, determining, from the historically detected straight line trajectories, a straight line trajectory whose trajectory direction is opposite to the target straight line trajectory and whose line segment spacing with the target straight line trajectory is less than a specified distance threshold, as a preselected straight line trajectory; from each preselected straight line trajectory, determining a preselected straight line trajectory whose corresponding point cloud coverage range and the point cloud coverage range corresponding to the target straight line trajectory, and whose overlap ratio is greater than a specified ratio threshold, as a common view straight line trajectory; the common view straight line trajectory is: a straight line trajectory whose corresponding field of view space has a common view space with the field of view space corresponding to the target straight line trajectory; the field of view space corresponding to each straight line trajectory is: a collection of field of view spaces of the mobile device at each position corresponding to the straight line trajectory; An error elimination module, configured to eliminate errors of target data based on a first point cloud about a target object corresponding to the target straight line trajectory and a second point cloud about the target object corresponding to the common view straight line trajectory; Among them, the target object is an object in the common visual space; the point cloud about the object corresponding to each straight line trajectory is: the point cloud about the object collected by the mobile device at each posture corresponding to the straight line trajectory; the target data includes: the posture information and point cloud data obtained during the movement of the mobile device.
9. An electronic device, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus; Memory, used to store computer programs; A processor, for implementing the method steps described in any one of claims 1 to 7 when executing a program stored in a memory.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method steps described in any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Pose estimation method based on multi-view vision measurement and laser point cloud map matching
CN112288813A
Laser point cloud data processing method, device and equipment
CN113393519A