Error estimation method, device, electronic device and computer program product
By combining two-dimensional panoramic images and three-dimensional point cloud data, a data model for signal occlusion objects is established, which solves the NLOS error problem caused by GNSS signal occlusion in complex environments, and achieves higher-precision point cloud data acquisition.
Patent Information
- Application Number
- CN202210333987.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-03-31
- Publication Date
- 2025-06-06
- Estimated Expiration
- 2042-03-31
AI Technical Summary
In complex environments, such as cities or canyon areas, GNSS signals are susceptible to occlusion, resulting in reduced accuracy of point cloud data, and the non-line-of-sight propagation error (NLOS) problems are serious.
By acquiring two-dimensional panoramic images and three-dimensional point cloud data, the image gradient is used to determine the upper edge of the signal occlusion object, and clustering is combined with point cloud data to establish a data model of the signal occlusion object, and then estimate the non-horizontal propagation error.
This method can accurately estimate NLOS errors, improve the accuracy of point cloud data, and effectively avoid serious errors caused by signal occlusion.
Smart Images

Figure CN114627260B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of geographic information technology, and in particular to an error method, device, electronic device and computer program product. Background Art
[0002] With the development of computer technology and its application in geographic information systems, electronic maps have begun to evolve from ordinary maps to high-precision maps. For high-precision maps, their data accuracy is higher and the information they contain is richer.
[0003] At present, the road part of high-precision maps is mostly produced by point cloud data collected by high-precision data collection vehicles. The accuracy of point cloud data mainly depends on the accuracy of GNSS (Global Navigation Satellite System) signals. However, due to the complex real-world environment, GNSS signals are easily blocked by buildings, mountains, bridges, etc. in some scenes (such as cities and canyons), and NLOS (non-line-of-sight, non-line-of-sight propagation or pure reflection signal error) problems are serious. Direct use of GNSS signals will cause the accuracy of point cloud data to drop sharply. Summary of the invention
[0004] In view of this, an embodiment of the present application provides an error estimation solution to at least partially solve the above problem.
[0005] According to a first aspect of an embodiment of the present application, a method for estimating an error is provided, comprising: acquiring a two-dimensional panoramic image and three-dimensional point cloud data of a surrounding environment acquired by an acquisition device; determining an upper edge of a first signal occluded object in the two-dimensional panoramic image according to an image gradient of the two-dimensional panoramic image; obtaining an upper edge elevation angle of the first signal occluded object according to the upper edge of the first signal occluded object; clustering the three-dimensional point cloud data, and obtaining a point cloud plane of a second signal occluded object according to the clustering result, wherein the second signal occluded object is part or all of the first signal occluded object; obtaining a horizontal distance from the acquisition device to the second signal occluded object according to the point cloud plane; obtaining an upper edge height of the first signal occluded object according to the upper edge elevation angle and the horizontal distance; establishing a data model of the first signal occluded object according to a difference between the upper edge height of the first signal occluded object and the lower edge height of the second signal occluded object; and estimating a non-line-of-sight propagation error based on the data model.
[0006] According to a second aspect of an embodiment of the present application, an error estimation device is provided, comprising: a data acquisition module, configured to acquire a two-dimensional panoramic image and three-dimensional point cloud data of a surrounding environment acquired by an acquisition device; a first upper edge determination module, configured to determine an upper edge of a first signal occlusion object in the two-dimensional panoramic image according to an image gradient of the two-dimensional panoramic image; an upper edge elevation angle acquisition module, configured to obtain an upper edge elevation angle of the first signal occlusion object according to an upper edge of the first signal occlusion object; a point cloud plane acquisition module, configured to cluster the three-dimensional point cloud data and obtain a point cloud plane of a second signal occlusion object according to a clustering result, wherein the second signal occlusion object is part or all of the first signal occlusion object; a horizontal distance acquisition module, configured to obtain a horizontal distance from the acquisition device to the second signal occlusion object according to the point cloud plane; a second upper edge determination module, configured to obtain an upper edge height of the first signal occlusion object according to the upper edge elevation angle and the horizontal distance; an establishment module, configured to establish a data model of the first signal occlusion object according to a difference between an upper edge height of the first signal occlusion object and a lower edge height of the second signal occlusion object; and an estimation module, configured to estimate a non-line-of-sight propagation error based on the data model.
[0007] According to the third aspect of an embodiment of the present application, there is provided an electronic device, comprising: a processor, a memory, a communication interface and a communication bus, wherein the processor, the memory and the communication interface communicate with each other via the communication bus; the memory is used to store at least one executable instruction, and the executable instruction enables the processor to perform operations corresponding to the error estimation method described in the first aspect.
[0008] According to a fourth aspect of an embodiment of the present application, a computer program product is provided, on which a computer program is stored. When the program is executed by a processor, the error estimation method as described in the first aspect is implemented.
[0009] According to the error estimation scheme provided in the embodiment of the present application, on the one hand, the signal blocking object is modeled using two-dimensional panoramic images and three-dimensional point cloud data, which fully considers the high precision of three-dimensional point cloud data and the comprehensive content of two-dimensional panoramic images, so that the established data model can effectively and accurately characterize the actual signal blocking object, providing a basis for accurately estimating the non-line-of-sight propagation error NLOS; on the other hand, the data model can be dynamically created according to the two-dimensional panoramic images and three-dimensional point cloud data collected in real time, without the need for a priori models, so that the movable signal blocking object can be effectively modeled, and then the NLOS can be accurately estimated based on this; on the other hand, the upper edge height of the first signal blocking object is obtained by the upper edge elevation angle of the first blocking object in the two-dimensional panoramic image and the horizontal distance from the acquisition device to the second signal blocking object, thereby obtaining a more accurate upper edge height of the first signal blocking object. As a result, the NLOS obtained by the final estimation is more accurate, which can effectively avoid the phenomenon that in some scenarios, the signal is blocked by blocking objects such as buildings or vehicles, and the NLOS error is serious. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] 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 recorded in the embodiments of the present application. For ordinary technicians in this field, other drawings can also be obtained based on these drawings.
[0011] Figure 1A is a flowchart of a method for error estimation according to Embodiment 1 of the present application;
[0012] Figure 1B for Figure 1A A schematic diagram of an example scenario in the illustrated embodiment;
[0013] Figure 2 is a flowchart of a method for error estimation according to Embodiment 2 of the present application;
[0014] Figure 3 is a structural block diagram of an error estimation device according to Embodiment 3 of the present application;
[0015] Figure 4 This is a schematic diagram of the structure of an electronic device according to the fourth embodiment of the present application. DETAILED DESCRIPTION
[0016] In order to enable those skilled in the art to better understand the technical solutions in the embodiments of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings 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. All other embodiments obtained by ordinary technicians in this field based on the embodiments in the embodiments of the present application should fall within the scope of protection of the embodiments of the present application.
[0017] The specific implementation of the embodiment of the present application is further explained below in conjunction with the accompanying drawings of the embodiment of the present application.
[0018] Embodiment 1
[0019] Figure 1A is a flowchart of a method for error estimation according to the first embodiment of the present application, such as Figure 1A As shown, it includes:
[0020] S101, acquiring a two-dimensional panoramic image and three-dimensional point cloud data of a surrounding environment collected by a collection device.
[0021] In this embodiment, the acquisition device can be installed on an object that needs to be positioned, such as a vehicle.
[0022] The acquisition device may include a camera device for acquiring a two-dimensional panoramic image, and a laser device for acquiring three-dimensional point cloud data. Of course, the acquisition device may also include other devices, which are not limited in this embodiment.
[0023] S102, determining an upper edge of a first signal occluding object in the two-dimensional panoramic image according to an image gradient of the two-dimensional panoramic image;
[0024] Image gradient refers to the comparatively certain change rate between a certain pixel and other adjacent pixels in a two-dimensional panoramic image. According to the image gradient of the two-dimensional panoramic image, the position where the pixel value in the two-dimensional panoramic image changes can be determined, and thus the upper edge of the first signal occlusion object can be determined.
[0025] In this embodiment, generally, the upper side in the two-dimensional panoramic image refers to the sky side, and the lower side refers to the ground side. The upper edge of the first signal blocking object can be the boundary between the first signal blocking object and the sky.
[0026] S103, obtaining an altitude angle of an upper edge of the object blocked by the first signal according to an upper edge of the object blocked by the first signal;
[0027] In this embodiment, the angle between the line connecting the upper edge of the first signal occlusion object and the origin of the coordinate system and the horizontal plane in the image coordinate system, that is, the altitude angle of the upper edge of the first signal occlusion object, can be determined directly based on the image coordinate system of the camera device used to capture the two-dimensional panoramic image.
[0028] S104. Cluster the three-dimensional point cloud data, and obtain a point cloud plane of a second signal occlusion object according to the clustering result, wherein the second signal occlusion object is part or all of the first signal occlusion object.
[0029] In this embodiment, the first signal occlusion object is an object in the two-dimensional panoramic image that may cause the NLOS phenomenon, and the second signal occlusion object is an object in the three-dimensional point cloud data that may cause the NLOS phenomenon.
[0030] Due to the limitations of the acquisition principle, the acquisition range of two-dimensional panoramic images is larger and the content is more comprehensive, but the accuracy of the distance, height, etc. determined based on the two-dimensional panoramic images is lower; the acquisition range of three-dimensional point cloud images is smaller and the content is not comprehensive enough, but the distance, height, etc. can be determined with higher accuracy.
[0031] Generally, since the content of a two-dimensional panoramic image is relatively comprehensive, the objects in the three-dimensional point cloud data are generally included in the two-dimensional panoramic image. Therefore, in this embodiment, the second signal occlusion object is part or all of the first signal occlusion object. For example, a two-dimensional panoramic image may include a high-rise building (the first signal occlusion object) and the sky, while the three-dimensional point cloud data may include the 1st to 2nd floor of the high-rise building (the second signal occlusion object). For some objects of lower height, such as double-decker buses, the two-dimensional panoramic image and the three-dimensional point cloud data may include all double-decker buses.
[0032] In this embodiment, the point cloud plane is the surface of the second signal occluding object. The specific method of clustering the three-dimensional point cloud data to obtain the point cloud plane can refer to the relevant technology and will not be described in detail here.
[0033] S105. Obtain a horizontal distance from the acquisition device to the second signal blocking object according to the point cloud plane.
[0034] In this embodiment, the point cloud plane is the surface of the second signal blocking object. Therefore, the high precision of the three-dimensional point cloud data can be used to directly determine the horizontal distance from the acquisition device to the second signal blocking object based on the distance from the point cloud plane to the acquisition device. Since the second signal blocking object is part or all of the first signal blocking object, the horizontal distance from the acquisition device to the second signal blocking object is the horizontal distance from the acquisition device to the first signal blocking object.
[0035] S106. Obtain the upper edge height of the object blocked by the first signal according to the upper edge height angle and the horizontal distance.
[0036] In this embodiment, the upper edge height of the first signal blocking object included in the two-dimensional panoramic image can be obtained by directly calculating according to the horizontal distance and the upper edge height angle.
[0037] Since the second signal occlusion object in the three-dimensional point cloud data may be only a part of the first signal occlusion object, the upper edge of the second signal occlusion object determined based on the point cloud plane is inaccurate. In this embodiment, the two-dimensional panoramic image and the three-dimensional point cloud data are combined, and the height of the upper edge of the first signal occlusion object can be determined more accurately based on the comprehensive content of the two-dimensional panoramic image.
[0038] Optionally, in this embodiment, step S104 may include: projecting the point cloud plane into the two-dimensional panoramic image to obtain a pixel column corresponding to the point cloud plane in the two-dimensional panoramic image; obtaining the upper edge height of the object occluded by the first signal according to the upper edge height angle and the horizontal distance corresponding to the pixel column.
[0039] Specifically, after obtaining the horizontal distance from the surface (point cloud plane) of the first signal blocking object to the acquisition device, and determining the horizontal angle (upper edge height angle) of the line between the acquisition device and the upper edge of the surface, the distance in the vertical direction from the upper edge of the first signal blocking object to the acquisition device can be directly calculated. Combined with the height of the acquisition device relative to the ground, the upper edge height of the first signal blocking object can be determined.
[0040] S107: Establish a data model of the first signal occlusion object according to a difference between an upper edge height of the first signal occlusion object and a lower edge height of the second signal occlusion object.
[0041] In this embodiment, since the acquisition device is generally close to the ground, the lower edge height of the second signal occlusion object can be determined based on the acquired three-dimensional point cloud data, and it can be used as the lower edge height of the first signal occlusion object. Therefore, the data model of the first signal occlusion object can be established based on the difference between the upper edge height and the lower edge height of the first signal occlusion object. The specific method of establishing the data model can refer to the relevant technology and will not be repeated here.
[0042] S108. Estimate non-line-of-sight propagation error based on the data model.
[0043] For a specific method of estimating the non-line-of-sight propagation error NLOS based on a data model, reference may be made to related technologies and will not be described in detail here.
[0044] It should be noted that the execution order of “steps S102 and S103 ” and “steps S104 and S105 ” is not limited in this embodiment, as long as the upper edge altitude angle and the horizontal distance can be determined before step S106 .
[0045] Figure 1B for Figure 1A A schematic diagram of an example scene in the illustrated embodiment, as shown in the figure, the vehicle can collect two-dimensional panoramic images and three-dimensional point cloud data of the surrounding scene, wherein the two-dimensional panoramic image includes all of building A, and the three-dimensional point cloud data includes the lower floors of building A.
[0046] According to the image gradient of the two-dimensional panoramic image, the upper edge of the building A can be identified and the upper edge elevation angle α of the building A can be determined, which is represented by a dotted line in the figure, and the intersection of the dotted lines represents the acquisition device.
[0047] According to the three-dimensional point cloud data, the point cloud plane corresponding to the surface of the lower floor of building A can be determined, and the horizontal distance H from the surface of the lower floor of building A to the acquisition equipment can be determined, and the height of the lower edge of building A can be determined.
[0048] According to the horizontal distance H and the upper edge height angle, the upper edge height of building A can be obtained.
[0049] According to the difference between the upper edge height and the lower edge height of building A, a data model corresponding to building A can be established, and NLOS can be estimated based on the data model.
[0050] According to the error estimation scheme provided in the embodiment of the present application, on the one hand, the signal blocking object is modeled using two-dimensional panoramic images and three-dimensional point cloud data, which fully considers the high precision of three-dimensional point cloud data and the comprehensive content of two-dimensional panoramic images, so that the established data model can effectively and accurately characterize the actual signal blocking object, providing a basis for accurately estimating NLOS; on the other hand, the data model can be dynamically created according to the two-dimensional panoramic images and three-dimensional point cloud data collected in real time, without the need for a priori models, so that the movable signal blocking object can be effectively modeled, and then the non-line-of-sight propagation error NLOS can be accurately estimated based on this; on the other hand, the upper edge height of the first signal blocking object is obtained by the upper edge elevation angle of the first blocking object in the two-dimensional panoramic image and the horizontal distance from the acquisition device to the second signal blocking object, thereby obtaining a more accurate upper edge height of the first signal blocking object. As a result, the NLOS obtained by the final estimation is more accurate, which can effectively avoid the phenomenon that in some scenarios, the signal is blocked by blocking objects such as buildings or vehicles, and the NLOS error is serious.
[0051] The error estimation method of this embodiment can be executed by any appropriate electronic device with data processing capability, including but not limited to: a server, a mobile terminal (such as a mobile phone, a PAD, etc.) and a PC, etc.
[0052] Figure 2 A is a flowchart of a method for error estimation according to Embodiment 2 of the present application, as shown in the figure, which includes:
[0053] S201: Acquire a two-dimensional panoramic image of the surrounding environment captured by a capturing device.
[0054] In this embodiment, a panoramic camera may be used to capture a two-dimensional panoramic image of the surrounding environment; or images of the surrounding environment captured by multiple cameras may be combined to obtain a two-dimensional panoramic image. The camera may be installed in a high-precision map data collection vehicle. This embodiment does not limit the specific method of collecting the two-dimensional panoramic image.
[0055] S202: Convert the two-dimensional panoramic image into a grayscale image, and calculate the image gradient of the grayscale image.
[0056] This embodiment can convert a two-dimensional panoramic image into a grayscale image by using a preset grayscale conversion formula.
[0057] For example, the grayscale conversion formula may be: Gray = R*0.299+G*0.587+B*0.114, wherein Gray is the grayscale value after pixel conversion, and R, G, and B are the intensity values of the three primary colors of red, green, and blue before pixel conversion.
[0058] Of course, the above formula is only an example, and other schemes for obtaining grayscale images are also within the protection scheme of this application. For example, the color of a pixel can be represented by the HSB mode, and the grayscale value corresponding to the pixel can be calculated by the grayscale conversion formula corresponding to the HSB mode.
[0059] S203. Determine, according to the image gradient, a gradient value corresponding to the first pixel with non-zero gradient change in each column of pixels of the grayscale image.
[0060] In this embodiment, the gradient value may be obtained by calculating the pixel values one by one through the Laplace one-dimensional operator.
[0061] Since the upper edge of the first signal occluded object is determined in subsequent steps and the upper edge is generally distributed horizontally, the gradient value corresponding to the first non-zero pixel with gradient change is determined by column in this step.
[0062] As for the surrounding environment, under the influence of the surrounding lighting, the grayscale of the surface of an object in the surrounding environment generally changes evenly, so the image gradient corresponding to the surface area of an object is generally the same or similar. The image gradient change value at the boundary is larger. Therefore, the boundary line can be determined according to the gradient value corresponding to the non-zero pixel of the gradient change.
[0063] In this embodiment, each column of pixels may include multiple pixels with non-zero gradient changes, and the upper part of the two-dimensional panoramic image is generally the sky. Therefore, the first of the multiple pixels with non-zero gradient changes may be the boundary pixel between the sky and the building, that is, the pixel corresponding to the upper edge of the object occluded by the first signal.
[0064] S204: Determine a gradient threshold according to the gradient value corresponding to each pixel with non-zero gradient change.
[0065] In this embodiment, the median of the gradient values corresponding to multiple non-zero gradient change pixels can be calculated as the gradient threshold. Of course, the gradient threshold can also be determined by calculating the gradient average of multiple non-zero gradient change pixels, which is also within the scope of protection of this application.
[0066] S205. Determine an upper edge of the first signal occluded object according to the gradient threshold, and obtain an upper edge height angle of the first signal occluded object according to the upper edge of the first signal occluded object.
[0067] Optionally, in this embodiment, determining the upper edge of the first signal occluded object according to the gradient threshold may specifically include: taking the first pixel point whose gradient value is equal to or greater than the gradient threshold in each column of pixels of the grayscale image as the dividing point, and determining the dividing point pixel; performing polynomial fitting on the dividing point pixel to obtain the upper edge of the first signal occluded object.
[0068] The solution provided in this embodiment determines the gradient value corresponding to the first non-zero pixel with gradient change in each column of pixels in the grayscale image, determines the gradient threshold based on this, and then determines the upper edge of the first signal occluded object based on the gradient threshold. Compared with binocular stereo recognition, image semantic segmentation and other methods, the solution requires less calculation amount and lower calculation difficulty, and the upper edge of the first signal occluded object obtained has higher accuracy.
[0069] S206: Acquire three-dimensional point cloud data of the surrounding environment collected by the collection device.
[0070] In this embodiment, the three-dimensional point cloud data of the surrounding environment can be collected by an infrared laser sensor. This embodiment does not limit the specific collection method of the three-dimensional point cloud data.
[0071] S207 , performing normal vector and Euclidean distance clustering on the three-dimensional point cloud data, and fitting each point cloud cluster obtained by clustering to obtain a point cloud plane of the second signal occlusion object.
[0072] In this embodiment, the normal vector of each point in the point cloud may be calculated one by one. For a specific method of calculating the normal vector, reference may be made to related technologies and will not be described in detail herein.
[0073] Optionally, in this embodiment, before step S207, the method further includes: filtering out points below the antenna height carried by the acquisition device for collecting three-dimensional point cloud data from the three-dimensional point cloud data; determining the normal vector of each point in the point cloud corresponding to the three-dimensional point cloud data; and filtering out points whose angle difference between the normal direction of the normal vector and the horizontal direction is greater than a preset angle threshold from the three-dimensional point cloud data to reduce the amount of calculation.
[0074] In this embodiment, the antenna receives signals from high-altitude satellites, so objects below the antenna will not generate NLOS. Therefore, points below the antenna height carried by the acquisition device for collecting three-dimensional point cloud data are filtered out from the three-dimensional point cloud data to reduce the amount of calculation during subsequent clustering. The antenna height carried by the acquisition device for collecting three-dimensional point cloud data refers to the height of the antenna carried by the acquisition device, and the antenna is the antenna used to collect three-dimensional point cloud data.
[0075] In addition, the surfaces of objects that can generate NLOS, such as vehicles and buildings, are generally relatively flat and generally vertical planes. Therefore, in this embodiment, by filtering out points whose angle difference between the normal vector normal and the horizontal direction is greater than a preset angle threshold, irrelevant objects in the three-dimensional point cloud data, such as point clouds corresponding to leaves, can be filtered out, further reducing the amount of calculation in the subsequent clustering process.
[0076] When clustering is performed specifically, for example, two points whose Euclidean distance is less than a preset distance can be determined, and the angle between the normal vectors corresponding to the two points can be calculated. If the angle is small, the two points are clustered and the normal vector after clustering is calculated. After clustering all points, one or more point cloud clusters can be obtained. By fitting the point cloud clusters, the point cloud plane corresponding to the second signal occlusion object can be obtained.
[0077] S208. Obtain a horizontal distance from the acquisition device to the second signal blocking object according to the point cloud plane.
[0078] After determining the point cloud plane corresponding to the second signal blocking object, the horizontal distance from the second signal blocking object to the acquisition device can be determined based on the laser ranging principle. The specific determination method can refer to the relevant technology and will not be repeated here.
[0079] In this embodiment, point cloud clusters are obtained by clustering the three-dimensional point cloud data, and point cloud planes are obtained by fitting the point cloud clusters. Then, the horizontal distance from the point cloud plane to the acquisition device can be determined, which can greatly improve the accuracy of the determined horizontal distance and thus improve the accuracy of the established data model.
[0080] S209: Determine a lower edge height of the second signal blocking object according to a height from the point cloud height of the second signal blocking object in the three-dimensional point cloud data to the ground height.
[0081] The height of the lower edge of the second signal shielding object is the height of the lower edge of the first signal shielding object.
[0082] S210: Determine, according to the three-dimensional point cloud, a height difference between upper and lower edges of the object blocked by the second signal.
[0083] In this embodiment, the height difference between the upper and lower edges of the second signal blocking object, that is, the difference between the upper edge height of the second signal blocking object and the lower edge height of the second signal blocking unit, can also be understood as the height difference between the top of the second signal blocking object and the ground.
[0084] S211. Obtain the upper edge height of the object blocked by the first signal according to the upper edge height angle and the horizontal distance.
[0085] Specifically, after obtaining the horizontal distance from the surface (point cloud plane) of the first signal blocking object to the acquisition device, and determining the horizontal angle (upper edge height angle) of the line between the acquisition device and the upper edge of the surface, the distance in the vertical direction from the upper edge of the first signal blocking object to the acquisition device can be directly calculated. Combined with the height of the acquisition device relative to the ground, the upper edge height of the first signal blocking object can be determined.
[0086] S212: Establish a data model of the first signal occlusion object according to the difference between the upper edge height of the first signal occlusion object and the lower edge height of the first signal occlusion object, and the upper and lower edge height difference of the second signal occlusion object.
[0087] In this embodiment, the point cloud plane determined in the above step S207 can be first projected into the two-dimensional panoramic image. Specifically, the point cloud plane can be projected into the two-dimensional panoramic image according to the conversion relationship between the image coordinate system used to collect the two-dimensional panoramic image and the laser coordinate system used to collect the three-dimensional point cloud data. After projection, the lower edge of the second signal occlusion object coincides with the lower edge of the first signal occlusion object. Afterwards, the height difference between the upper and lower edges of the second signal occlusion object can be determined, and combined with the difference between the lower edge height and the upper edge height of the first signal occlusion object, it is determined whether the second signal occlusion object is the entire first signal occlusion object. For example, if the height difference between the upper and lower edges of the second signal occlusion object is equal to the difference between the lower edge height and the upper edge height of the first signal occlusion object, it can be determined that the second signal occlusion object is the entire first signal occlusion object; if the height difference between the upper and lower edges of the second signal occlusion object is less than the difference between the lower edge height and the upper edge height of the first signal occlusion object, the second signal occlusion object is part of the first signal occlusion object.
[0088] If the second signal occlusion object is the entire first signal occlusion object, the data model of the first signal occlusion object can be directly established based on the point cloud data corresponding to the second signal occlusion object; if the second signal occlusion object is a part of the first signal occlusion object, the point cloud data corresponding to the second signal occlusion object can be used to complete the point cloud data corresponding to the first signal occlusion object based on the difference between the upper edge height of the first signal occlusion object and the lower edge height of the first signal occlusion object, as well as the height difference between the upper and lower edges of the second signal occlusion object, and establish a data model based on the point cloud data corresponding to the completed first signal occlusion object.
[0089] Specifically, in this embodiment, step S211 includes: using the difference between the upper edge height and the lower edge height divided by the upper and lower edge height difference to obtain the number of modeling repetitions of the second signal occlusion object relative to the first signal occlusion object; and establishing a data model of the first signal occlusion object based on the number of modeling repetitions.
[0090] Since NLOS is generally generated by high-rise buildings, double-decker buses, etc., it can be considered that the point cloud corresponding to the bottom layer of these objects is similar to the point cloud corresponding to the high layer. Therefore, in this embodiment, the difference between the upper edge height and the lower edge height is divided by the upper and lower edge height difference to obtain the number of modeling repetitions of the second signal occlusion object relative to the first signal occlusion object, and the point cloud of the second signal occlusion object is expanded according to the number of repetitions to obtain the point cloud corresponding to the first signal occlusion object. Therefore, there is no need to confirm the point cloud of the first signal occlusion object by other methods, and no prior data model is required, so that the movable signal occlusion object can be effectively modeled, and then the non-line-of-sight propagation error NLOS can be accurately estimated based on this.
[0091] S213: Estimate a non-line-of-sight propagation error NLOS based on the data model.
[0092] Optionally, step S213 may include: performing signal ray tracing based on the data model according to the initial posture of the acquisition device and the positioning satellite ephemeris broadcast position, to obtain the total length of the reflection path of the initial position of the acquisition device and the occluding object represented by the data model; obtaining the straight line length between the initial position of the acquisition device and the positioning satellite ephemeris broadcast position; and estimating the non-line-of-sight propagation error NLOS based on the total length of the reflection path and the straight line length.
[0093] Optionally, in this embodiment, the method may further include: correcting the position in the point cloud data based on satellite navigation signals and non-line-of-sight propagation errors NLOS, and the corrected point cloud data may be used to determine or update high-precision map data.
[0094] The solution of the present application is exemplified below through a usage scenario.
[0095] A panoramic camera, an infrared laser sensor, and a GNSS antenna may be provided on a road data collection vehicle (eg, a RIEGL vehicle) for high-precision mapping.
[0096] The vehicle moves on a preset road and collects two-dimensional panoramic images of the surrounding environment through the vehicle's panoramic camera, and collects three-dimensional point cloud data of the surrounding environment through an infrared laser sensor.
[0097] The above steps are performed based on the collected 2D panoramic image and 3D point cloud data to establish a data model of objects such as buildings and buses in the vehicle's surrounding environment, and NLOS is estimated based on the established data model.
[0098] When the vehicle is moving, it receives satellite navigation signals sent by GNSS satellites through the GNSS antenna, and processes the collected satellite navigation signals according to the estimated NLOS to accurately locate the current position of the vehicle and obtain high-precision map data.
[0099] According to the error estimation scheme provided in the embodiment of the present application, on the one hand, the signal blocking object is modeled using two-dimensional panoramic images and three-dimensional point cloud data, which fully considers the high precision of three-dimensional point cloud data and the comprehensive content of two-dimensional panoramic images, so that the established data model can effectively and accurately characterize the actual signal blocking object, providing a basis for accurately estimating NLOS; on the other hand, the data model can be dynamically created according to the two-dimensional panoramic images and three-dimensional point cloud data collected in real time, without the need for a priori models, so that the movable signal blocking object can be effectively modeled, and then the NLOS can be accurately estimated based on this; on the other hand, the upper edge height of the first signal blocking object is obtained by the upper edge elevation angle of the first blocking object in the two-dimensional panoramic image and the horizontal distance from the acquisition device to the second signal blocking object, thereby obtaining a more accurate upper edge height of the first signal blocking object. As a result, the NLOS obtained by the final estimation is more accurate, which can effectively avoid the phenomenon that in some scenarios, the signal is blocked by blocking objects such as buildings or vehicles, and the NLOS error is serious.
[0100] The error estimation method of this embodiment can be executed by any appropriate electronic device with data processing capability, including but not limited to: a server, a mobile terminal (such as a mobile phone, a PAD, etc.) and a PC, etc.
[0101] Embodiment 3
[0102] Reference Figure 3 , shows a structural block diagram of an error estimation device of embodiment 3 of the present application.
[0103] The error estimation device includes: a data acquisition module 302, which is used to acquire a two-dimensional panoramic image and three-dimensional point cloud data of the surrounding environment acquired by an acquisition device; a first upper edge determination module 304, which is used to determine the upper edge of a first signal occlusion object in the two-dimensional panoramic image according to the image gradient of the two-dimensional panoramic image; an upper edge altitude angle acquisition module 306, which is used to obtain the upper edge altitude angle of the first signal occlusion object according to the upper edge of the first signal occlusion object; a point cloud plane acquisition module 308, which is used to cluster the three-dimensional point cloud data and obtain a point cloud plane of a second signal occlusion object according to the clustering result, wherein the second The signal blocking object is part or all of the first signal blocking object; a horizontal distance acquisition module 310 is used to obtain the horizontal distance from the acquisition device to the second signal blocking object according to the point cloud plane; a second upper edge determination module 312 is used to obtain the upper edge height of the first signal blocking object according to the upper edge altitude angle and the horizontal distance; an establishment module 314 is used to establish a data model of the first signal blocking object according to the difference between the upper edge height of the first signal blocking object and the lower edge height of the second signal blocking object; an estimation module 316 is used to estimate the non-line-of-sight propagation error based on the data model.
[0104] Optionally, the first upper edge determination module 304 is used to convert the two-dimensional panoramic image into a grayscale image and calculate the image gradient of the grayscale image; determine the gradient value corresponding to the first non-zero gradient change pixel in each column of pixels of the grayscale image based on the image gradient; determine the gradient threshold based on the gradient value corresponding to each non-zero gradient change pixel determined; and determine the upper edge of the first signal occluded object based on the gradient threshold.
[0105] Optionally, the first upper edge determination module 304 is used to determine the upper edge of the first signal occluded object based on the gradient threshold, using the first pixel point in each column of pixels in the grayscale image whose gradient value is equal to or greater than the gradient threshold as the dividing point to determine the dividing point pixel; and perform polynomial fitting on the dividing point pixel to obtain the upper edge of the first signal occluded object.
[0106] Optionally, the establishment module 314 is used to determine the lower edge height of the second signal occlusion object based on the point cloud height of the second signal occlusion object to the ground height in the three-dimensional point cloud data, and to determine the upper and lower edge height difference of the second signal occlusion object based on the three-dimensional point cloud; establish a data model of the first signal occlusion object based on the difference between the upper edge height of the first signal occlusion object and the lower edge height of the second signal occlusion object, and the upper and lower edge height difference of the second signal occlusion object.
[0107] Optionally, the establishment module 314 is used to establish the data model of the first signal occlusion object based on the difference between the upper edge height of the first signal occlusion object and the lower edge height of the second signal occlusion object, and the difference between the upper and lower edge heights of the second signal occlusion object, by dividing the difference between the upper edge height of the first signal occlusion object and the lower edge height of the second signal occlusion object by the difference between the upper and lower edge heights of the second signal occlusion object to obtain the number of modeling repetitions of the second signal occlusion object relative to the first signal occlusion object; and establish the data model of the first signal occlusion object based on the number of modeling repetitions.
[0108] Optionally, the point cloud plane acquisition module 308 is used to cluster the three-dimensional point cloud data and obtain the point cloud plane of the second signal occlusion object according to the clustering results, perform normal vector and Euclidean distance clustering on the three-dimensional point cloud data, fit each point cloud cluster obtained by clustering, and obtain the point cloud plane of the second signal occlusion object.
[0109] Optionally, the device also includes: a filtering module 318, used to filter out points below the antenna height carried by the acquisition device for collecting three-dimensional point cloud data from the three-dimensional point cloud data; a calculation module 320, used to determine the normal vector of each point in the point cloud corresponding to the three-dimensional point cloud data; the filtering module 318 is also used to filter out points whose angle difference between the normal direction of the normal vector and the horizontal direction is greater than a preset angle threshold from the three-dimensional point cloud data.
[0110] Optionally, the second upper edge determination module 312 is used to project the point cloud plane into the two-dimensional panoramic image to obtain the pixel column corresponding to the point cloud plane in the two-dimensional panoramic image; and obtain the upper edge height of the object occluded by the first signal according to the upper edge height angle and the horizontal distance corresponding to the pixel column.
[0111] Optionally, the estimation module 316 is used to perform signal ray tracing based on the data model according to the initial position of the acquisition device and the positioning satellite ephemeris broadcast position, to obtain the total length of the reflection path of the initial position of the acquisition device and the occluding object represented by the data model; obtain the straight-line length between the initial position of the acquisition device and the positioning satellite ephemeris broadcast position; and estimate the non-line-of-sight propagation error based on the total length of the reflection path and the straight-line length.
[0112] The error estimation device of this embodiment is used to implement the corresponding error estimation method in the aforementioned multiple method embodiments, and has the beneficial effects of the corresponding method embodiments, which will not be described in detail here. In addition, the functional implementation of each module in the error estimation device of this embodiment can refer to the description of the corresponding part in the aforementioned method embodiments, which will not be described in detail here.
[0113] Embodiment 4
[0114] Reference Figure 4 , shows a schematic diagram of the structure of an electronic device according to the fourth embodiment of the present application. The specific embodiment of the present application does not limit the specific implementation of the electronic device.
[0115] like Figure 4 As shown, the electronic device may include: a processor (processor) 402 , a communication interface (Communications Interface) 404 , a memory (memory) 406 , and a communication bus 408 .
[0116] in:
[0117] The processor 402 , the communication interface 404 , and the memory 406 communicate with each other via a communication bus 408 .
[0118] The communication interface 404 is used to communicate with other electronic devices or servers.
[0119] The processor 402 is used to execute the program 410, and specifically can execute the relevant steps in the above-mentioned error estimation method embodiment.
[0120] Specifically, the program 410 may include program codes, which include computer operation instructions.
[0121] The processor 402 may be a processor CPU, or an application specific integrated circuit ASIC (Application Specific Integrated Circuit), or one or more integrated circuits configured to implement the embodiments of the present application. The one or more processors included in the smart device may be processors of the same type, such as one or more CPUs; or processors of different types, such as one or more CPUs and one or more ASICs.
[0122] The memory 406 is used to store the program 410. The memory 406 may include a high-speed RAM memory, and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory.
[0123] The program 410 may be specifically used to enable the processor 402 to execute operations corresponding to the aforementioned method.
[0124] The specific implementation of each step in program 410 can refer to the corresponding description of the corresponding steps and units in the above-mentioned error estimation method embodiment, which will not be repeated here. Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working process of the above-described devices and modules can refer to the corresponding process description in the above-mentioned method embodiment, which will not be repeated here.
[0125] It should be pointed out that, according to the needs of implementation, the various components / steps described in the embodiments of the present application can be split into more components / steps, or two or more components / steps or partial operations of components / steps can be combined into new components / steps to achieve the purpose of the embodiments of the present application.
[0126] The above-mentioned method according to the embodiment of the present application can be implemented in hardware, firmware, or implemented as software or computer code that can be stored in a recording medium (such as a CD ROM, RAM, floppy disk, hard disk or magneto-optical disk), or implemented as a computer code originally stored in a remote recording medium or a non-temporary machine-readable medium downloaded through a network and to be stored in a local recording medium, so that the method described herein can be stored in such software processing on a recording medium using a general-purpose computer, a dedicated processor or programmable or dedicated hardware (such as an ASIC or FPGA). It can be understood that a computer, a processor, a microprocessor controller or programmable hardware includes a storage component (e.g., RAM, ROM, flash memory, etc.) that can store or receive software or computer code, and when the software or computer code is accessed and executed by a computer, a processor or hardware, the error estimation method described herein is implemented. In addition, when a general-purpose computer accesses the code for implementing the error estimation method shown here, the execution of the code converts the general-purpose computer into a dedicated computer for executing the error estimation method shown here.
[0127] Those of ordinary skill in the art will appreciate that the units and method steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the embodiments of the present application.
[0128] The above implementation methods are only used to illustrate the embodiments of the present application, and are not limitations on the embodiments of the present application. Ordinary technicians in the relevant technical field can make various changes and modifications without departing from the spirit and scope of the embodiments of the present application. Therefore, all equivalent technical solutions also belong to the scope of the embodiments of the present application. The scope of patent protection of the embodiments of the present application should be limited by the claims.
Claims
1. An error estimation method, include: Acquire the two-dimensional panoramic image and three-dimensional point cloud data of the surrounding environment collected by the acquisition device; determining an upper edge of a first signal occluding object in the two-dimensional panoramic image according to an image gradient of the two-dimensional panoramic image; Obtaining an upper edge height angle of the object blocked by the first signal according to the upper edge of the object blocked by the first signal; Clustering the three-dimensional point cloud data, and obtaining a point cloud plane of a second signal occlusion object according to the clustering result, wherein the second signal occlusion object is part or all of the first signal occlusion object; According to the point cloud plane, obtaining a horizontal distance from the acquisition device to the second signal blocking object; Obtaining the upper edge height of the object blocked by the first signal according to the upper edge height angle and the horizontal distance; Establishing a data model of the first signal occlusion object according to a difference between an upper edge height of the first signal occlusion object and a lower edge height of the second signal occlusion object; Based on the data model, a non-line-of-sight propagation error is estimated.
2. The method according to claim 1, in, The determining, according to the image gradient of the two-dimensional panoramic image, an upper edge of the first signal occluding object in the two-dimensional panoramic image comprises: Converting the two-dimensional panoramic image into a grayscale image, and calculating the image gradient of the grayscale image; Determine, according to the image gradient, a gradient value corresponding to a first pixel having a non-zero gradient change in each column of pixels of the grayscale image; Determine a gradient threshold according to the gradient value corresponding to each non-zero pixel of the determined gradient change; An upper edge of the object blocked by the first signal is determined according to the gradient threshold.
3. The method according to claim 2, in, The step of determining the upper edge of the object blocked by the first signal according to the gradient threshold comprises: Taking the first pixel point whose gradient value is equal to or greater than the gradient threshold in each column of pixels of the grayscale image as the demarcation point, determining the demarcation point pixel; A polynomial fitting is performed on the demarcation point pixels to obtain an upper edge of the first signal occluded object.
4. The method according to claim 1, in, The step of establishing a data model of the first signal occlusion object according to a difference between an upper edge height of the first signal occlusion object and a lower edge height of the second signal occlusion object comprises: Determine the height of the lower edge of the second signal blocking object according to the height from the point cloud to the ground in the three-dimensional point cloud data, and determine the height difference between the upper and lower edges of the second signal blocking object according to the three-dimensional point cloud; A data model of the first signal occlusion object is established according to the difference between the upper edge height of the first signal occlusion object and the lower edge height of the second signal occlusion object, and the upper and lower edge height difference of the second signal occlusion object.
5. The method according to claim 4, in, The step of establishing a data model of the first signal occlusion object according to a difference between an upper edge height of the first signal occlusion object and a lower edge height of the second signal occlusion object, and a height difference between upper and lower edges of the second signal occlusion object, comprises: The difference between the upper edge height of the first signal occlusion object and the lower edge height of the second signal occlusion object is divided by the upper and lower edge height difference of the second signal occlusion object to obtain the number of modeling repetitions of the second signal occlusion object relative to the first signal occlusion object; A data model of the first signal occluding object is established according to the number of modeling repetitions.
6. The method according to claim 1, in, The step of clustering the three-dimensional point cloud data and obtaining a point cloud plane of the second signal occluding object according to the clustering result includes: The three-dimensional point cloud data is clustered by normal vector and Euclidean distance, and each point cloud cluster obtained by clustering is fitted to obtain a point cloud plane of the second signal occlusion object.
7. The method according to claim 6, in, Before performing normal vector and Euclidean distance clustering on the three-dimensional point cloud data, the method further includes: filtering out points below the height of an antenna carried by the acquisition device for acquiring three-dimensional point cloud data from the three-dimensional point cloud data; Determine a normal vector of each point in the point cloud corresponding to the three-dimensional point cloud data; Points whose angle difference between the normal direction of the normal vector and the horizontal direction is greater than a preset angle threshold are filtered out from the three-dimensional point cloud data.
8. The method according to claim 1, in, The obtaining, according to the upper edge height angle and the horizontal distance, the upper edge height of the object blocked by the first signal comprises: Projecting the point cloud plane into the two-dimensional panoramic image to obtain pixel columns corresponding to the point cloud plane in the two-dimensional panoramic image; The upper edge height of the first signal occluded object is obtained according to the upper edge height angle and the horizontal distance corresponding to the pixel column.
9. The method according to any one of claims 1 to 8, in, The estimating the non-line-of-sight propagation error based on the data model includes: According to the initial position of the acquisition device and the broadcast position of the positioning satellite ephemeris, signal ray tracing is performed based on the data model to obtain the total length of the reflection path of the initial position of the acquisition device and the occluding object represented by the data model; Obtaining the straight line length between the initial position of the acquisition device and the position where the positioning satellite ephemeris is broadcast; The non-line-of-sight propagation error is estimated according to the total length of the reflection route and the straight line length.
10. An electronic device, include: A processor, a memory, a communication interface and a communication bus, wherein the processor, the memory and the communication interface communicate with each other via the communication bus; The memory is used to store at least one executable instruction, and the executable instruction enables the processor to perform operations corresponding to the error estimation method according to any one of claims 1-9.
11. A computer program product having a computer program stored thereon, wherein when the program is executed by a processor, the error estimation method according to any one of claims 1 to 9 is implemented.
Citation Information
Patent Citations
Obstacle detection method, vehicle, equipment and computer storage medium
CN113536883A
Information processing device, information processing method, and program
WO2022019117A1