An indoor-outdoor continuous scanning method, apparatus, device, medium and product
Patent Information
- Application Number
- CN202610870492.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-06-16
- Publication Date
- 2026-08-18
AI Technical Summary
该类设备在室内、建筑内部、地下空间、园区道路或复杂空间中具有较强的连续建图能力,但由于同步定位建图本质上主要依赖相对位姿估计,在长距离扫描、弱结构场景、重复场景或缺少闭环约束的环境下,容易产生累计漂移,导致最终点云地图与真实工程坐标之间存在偏差
[0010] This invention monitors the working status of the positioning component, maintains continuous mapping by relying on vision-laser-inertial when the positioning component degrades, and restores the normal mapping mode after the positioning component recovers, thereby achieving continuous indoor and outdoor spatial scanning.
Smart Images

Figure CN122590839A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of three-dimensional scanning technology, and in particular to a method, apparatus, equipment, medium and product for continuous indoor and outdoor scanning. Background Technology
[0002] Existing handheld or mobile 3D scanning devices typically utilize LiDAR, cameras, and inertial measurement units for simultaneous localization and mapping (SLAM). These devices possess strong continuous mapping capabilities in indoor environments, building interiors, underground spaces, park roads, or complex spaces. However, since SLAM essentially relies primarily on relative pose estimation, it is prone to cumulative drift in long-distance scanning, weak-structure scenes, repetitive scenes, or environments lacking closed-loop constraints. This results in discrepancies between the final point cloud map and the actual engineering coordinates.
[0003] Real-Time Kinematic (RTK) and Global Navigation Satellite System (GNSS) technologies can provide high-precision absolute coordinate constraints in open outdoor areas. However, in indoor, semi-indoor, shaded, building-obstructed, urban canyon, under bridges, and underground space entrance scenarios, positioning signals are prone to quality degradation, floating-point solutions, non-fixed solutions, delays, jumps, or even short-term failures. Therefore, relying solely on positioning is insufficient for completing continuous indoor and outdoor spatial scanning. Summary of the Invention
[0004] This invention provides a method, apparatus, device, medium, and product for continuous indoor and outdoor scanning to achieve continuous indoor and outdoor spatial scanning.
[0005] According to one aspect of the present invention, an indoor and outdoor continuous scanning method is provided, comprising: Mapping is constructed based on image data collected by the camera, point cloud data collected by the lidar, inertial data collected by the inertial sensor, and position data collected by the positioning component, and the working status of the positioning component is monitored in real time. If the working state of the positioning component does not meet the usage conditions, then synchronous positioning and mapping will be temporarily performed based on camera data, point cloud data and inertial data. If the positioning component's working status is restored after temporary synchronous positioning and mapping based on camera data, point cloud data, and inertial data, then the process will return to executing mapping based on image data collected by the camera, point cloud data collected by the LiDAR, inertial data collected by the inertial sensor, and position data collected by the positioning component.
[0006] According to another aspect of the present invention, an indoor and outdoor continuous scanning device is provided, comprising: The standard mapping module is used to create maps based on image data acquired by the camera, point cloud data acquired by the lidar, inertial data acquired by the inertial sensor, and position data acquired by the positioning component, and to monitor the working status of the positioning component in real time. The temporary mapping module is used to temporarily perform synchronous positioning and mapping based on camera data, point cloud data, and inertial data if the working state of the positioning component does not meet the usage conditions. The mapping recovery module is used to restore the working status of the positioning component to the operating conditions if the positioning component is temporarily restored after synchronous positioning mapping based on camera data, point cloud data, and inertial data. In this case, it returns to the original state and performs mapping based on the image data collected by the camera, the point cloud data collected by the LiDAR, the inertial data collected by the inertial sensor, and the position data collected by the positioning component.
[0007] According to another aspect of the present invention, a computer program product is provided, comprising a computer program that, when executed by a processor, implements the indoor and outdoor continuous scanning method according to any embodiment of the present invention.
[0008] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores a computer program executable by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the indoor and outdoor continuous scanning method according to any embodiment of the present invention.
[0009] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the indoor and outdoor continuous scanning method according to any embodiment of the present invention.
[0010] This invention monitors the working status of the positioning component, maintains continuous mapping by relying on vision-laser-inertial when the positioning component degrades, and restores the normal mapping mode after the positioning component recovers, thereby achieving continuous indoor and outdoor spatial scanning.
[0011] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0012] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0013] Figure 1A This is a flowchart of an indoor and outdoor continuous scanning method according to an embodiment of the present invention; Figure 1B This is a schematic diagram of a camera placement position according to an embodiment of the present invention; Figure 2A This is a flowchart of an indoor and outdoor continuous scanning method according to another embodiment of the present invention; Figure 2B This is a schematic diagram of an indoor and outdoor continuous scanning process according to another embodiment of the present invention; Figure 2C This is a schematic diagram of an odometer factor map provided according to another embodiment of the present invention; Figure 3 This is a schematic diagram of the structure of an indoor and outdoor continuous scanning device according to another embodiment of the present invention; Figure 4 This is a schematic diagram of the structure of an electronic device that implements an embodiment of the present invention. Detailed Implementation
[0014] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0015] It should be noted that the terms "first," "second," etc., used in this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0016] Figure 1A This is a flowchart illustrating an indoor-outdoor continuous scanning method according to an embodiment of the present invention. This embodiment is applicable to situations where scanning proceeds from outdoors to indoors and back again during three-dimensional mapping. The method can be executed by an indoor-outdoor continuous scanning device, which can be implemented in hardware and / or software. This device can be configured in an electronic device with corresponding data processing capabilities, such as a handheld spatial scanning terminal. Figure 1A As shown, the method includes: S110. Based on the image data collected by the camera, the point cloud data collected by the lidar, the inertial data collected by the inertial sensor, and the position data collected by the positioning component, a map is constructed, and the working status of the positioning component is monitored in real time.
[0017] S120. If the working state of the positioning component does not meet the usage conditions, then synchronous positioning and mapping shall be temporarily performed based on camera data, point cloud data and inertial data.
[0018] S130. If the working status of the positioning component is restored after temporary synchronous positioning and mapping based on camera data, point cloud data, and inertial data, then return to execute mapping based on image data collected by the camera, point cloud data collected by the lidar, inertial data collected by the inertial sensor, and position data collected by the positioning component.
[0019] Specifically, after the terminal starts up, the camera, LiDAR, Inertial Measurement Unit (IMU), and positioning component (RTK / GNSS) on the terminal are synchronized in a unified time. Synchronization methods can include hardware triggering, unified clocking, timestamp alignment, or software interpolation alignment. The goal is to ensure that image data (e.g., image frames), point cloud data (point cloud frames), inertial data, and location data (e.g., RTK data) acquired at the same time can be mapped to a unified time node during backend optimization. Simultaneously, extrinsic parameters are established in advance between the coordinate systems of each sensor and the terminal's own coordinate system. These sensor coordinate systems include the camera coordinate system, LiDAR coordinate system, IMU coordinate system, and positioning component coordinate system. Extrinsic parameters can be obtained through factory calibration, calibration boards, natural scene features, point cloud planes, motion constraints, or online optimization. After unifying the extrinsic parameters, data from different sensors can be converted to the same device coordinate system or map coordinate system, providing a foundation for subsequent multi-source data fusion. After time synchronization and external calibration, the preparation work is complete.
[0020] The lidar is positioned in the main scanning area of the device, preferably employing a hemispherical convex lidar scanning head or other convex scanning structures, to acquire the main geometric point cloud data of the surrounding environment, thereby achieving a large-scale geometric sampling capability. The camera, used during lidar operation, acquires image data from the front and sides. This image data covers and supplements the lidar scanning area, providing multi-view visual information for feature tracking, loop closure detection, texture acquisition, and occlusion compensation during mapping. The inertial sensor provides high-frequency angular velocity and acceleration data, serving as inertial data-assisted motion prediction, attitude propagation, and short-term motion constraints. The positioning component provides reliable positioning data when signal quality conditions are met, providing global coordinate constraints for 3D scanning mapping.
[0021] During outdoor 3D scanning, if the positioning component's operating status meets the usage conditions, a complete 3D mapping is performed by integrating the four types of data collected. As the terminal moves from outdoors to indoors, the positioning component's operating status changes significantly, for example, the number of satellites decreases. Therefore, usage conditions can be pre-set. If the operating status no longer meets the conditions, it is assumed that the test scanning mode has switched from outdoor 3D scanning to indoor 3D scanning. In this case, positioning data is no longer relied upon; instead, camera data, point cloud data, and inertial data are used for temporary synchronous positioning and mapping.
[0022] This mapping process, lacking the constraint of positioning data, will not continue indefinitely. After entering synchronous positioning mapping, the system will continue to monitor the operational status of the positioning components. Once the positioning components' operational status meets the usage conditions again—that is, after the terminal returns from indoors to outdoors—the system will continue to integrate the four types of data collected to perform a complete 3D scanning mapping. The system outputs a point cloud with engineering coordinates, continuous scan trajectory, color texture / image, control points, or a measurement result table as the final mapping result of the continuous indoor and outdoor scanning.
[0023] This invention monitors the working status of the positioning component, maintains continuous mapping by relying on vision-laser-inertial when the positioning component degrades, and restores the normal mapping mode after the positioning component recovers, thereby achieving continuous indoor and outdoor spatial scanning.
[0024] Based on the above embodiments, optionally, the evaluation indicators of the working status include at least one of the following: positioning solution type, consistency between positioning results and odometry predictions, baseline length, observation residuals, signal strength, multipath risk, and number of satellites.
[0025] Specifically, RTK quality is evaluated in real time. Evaluation metrics may include RTK solution type, consistency between RTK results and odometry predictions, baseline length, observation residuals, signal strength, multipath risk, and number of satellites. Corresponding reference weights are assigned to each metric, and the terminal determines its operational status based on the actual conditions of each metric.
[0026] Based on the above embodiments, optionally, the camera includes a front camera, a left camera, and a right camera; the left camera and the right camera are used to perform lateral blind spot compensation for the main camera.
[0027] Specifically, while some existing handheld scanning terminals integrate cameras and LiDAR, the cameras are often only used for texture acquisition or auxiliary image recording, without targeted multi-view coverage around the main scanning area of the LiDAR. A single camera view is easily affected by handheld posture, partial occlusion, weak texture, or insufficient field of view, leading to unstable visual constraints and consequently affecting the robustness of loop closure detection, feature tracking, and mapping.
[0028] Therefore. Figure 1B As shown, this invention employs a layout combining three cameras and a lidar system for coordinated coverage. The three cameras include a front camera, a left camera, and a right camera. The front camera acquires the main field of view in front of the device, while the left and right cameras acquire lateral blind spots. The fields of view of the three cameras complement the lidar scanning area, enabling visual observation to cover the lidar's main geometric sampling area and its surrounding region. This layout offers the following technical advantages.
[0029] First, the three cameras supplement the visual information in the LiDAR scanning area, enabling the geometric structures in the point cloud to be associated with corresponding image features, thus providing constraints for vision-LiDAR joint localization. Second, the lateral camera can compensate for occlusion and blind spots generated by the front camera during handheld scanning. When the device turns, approaches a wall, or passes through narrow passages, the lateral camera can still provide effective image features, improving the robustness of pose estimation. Third, the three cameras can provide richer viewpoint information for loop closure detection. When the device retraces through a scanned area, both the front and lateral cameras may capture matching image features, thereby improving the success rate of loop closure detection. Fourth, the images acquired by the three cameras can be used for texture mapping, point cloud coloring, image recording, and subsequent 3D model generation, giving the scanning results not only geometric information but also visual expressive capabilities.
[0030] Figure 2A This is a flowchart illustrating a continuous indoor / outdoor scanning method according to another embodiment of the present invention. This embodiment is an optimization and improvement upon the above embodiment. Figure 2A As shown, the method includes: S210. Based on the image data collected by the camera, the point cloud data collected by the lidar, the inertial data collected by the inertial sensor, and the position data collected by the positioning component, a map is constructed, and the working status of the positioning component is monitored in real time.
[0031] S220. If the working state of the positioning component does not meet the usage conditions, then synchronous positioning and mapping shall be temporarily performed based on camera data, point cloud data and inertial data.
[0032] S230. If the working state of the positioning component is restored to normal operation after the synchronous positioning and mapping is temporarily performed based on camera data, point cloud data and inertial data, the current measurement position is determined based on the positioning component after the working state is restored to normal operation, and the current estimated position is determined based on the mapping results of the synchronous positioning and mapping.
[0033] S240. If the difference between the current measured position and the current estimated position is within an acceptable range, then return to execute the mapping based on the image data acquired by the camera, the point cloud data acquired by the lidar, the inertial data acquired by the inertial sensor, and the position data acquired by the positioning component; if the difference between the current measured position and the current estimated position is not within an acceptable range, then perform segmented smoothing correction on the trajectory and point cloud in the mapping result of the synchronous positioning mapping based on the current measured position and the current estimated position, and return to execute the mapping based on the image data acquired by the camera, the point cloud data acquired by the lidar, the inertial data acquired by the inertial sensor, and the position data acquired by the positioning component.
[0034] Specifically, such as Figure 2B As shown, during the synchronous positioning and mapping process, the terminal estimates its own position in real time and uses this information to build the map. When the positioning component resumes operation, the terminal determines its current estimated position in the synchronous positioning and mapping based on the results, and simultaneously determines its current measured position based on the positioning data provided by the positioning component.
[0035] If the difference between the current measured location and the current estimated location is within an acceptable range, it indicates that the prediction of the terminal location during the synchronous positioning and mapping process is basically accurate. In this case, the mapping results of the synchronous positioning and mapping can be directly used for subsequent continuous mapping.
[0036] If the difference between the current measured position and the current estimated position is outside the acceptable range, it indicates a significant problem with the prediction of the terminal position during the synchronous positioning and mapping process. Certain processing is required, such as adjusting the weights of the positioning components, using piecewise smoothing correction, or employing loop closure constraint assistance, before continuing subsequent mapping. This invention selects to perform piecewise smoothing correction on the trajectory and point cloud in the synchronous positioning and mapping results before performing subsequent continuous mapping on the corrected results. The goal of smoothing correction is to ensure that the optimized trajectory satisfies the global coordinate constraints of the positioning components while maintaining the pose continuity between adjacent trajectory segments. This avoids sudden translation, rotation, or deformation of the point cloud map due to the recovery of the positioning components.
[0037] Based on the above embodiments, optionally, the mapping based on image data acquired by the camera, point cloud data acquired by the lidar, inertial data acquired by the inertial sensor, and position data acquired by the positioning component includes: Image data acquired by the camera, point cloud data acquired by the lidar, inertial data acquired by the inertial sensor, and position data acquired by the positioning component are modeled as constraint factors in the odometry factor map; the constraint factors include inertial pre-integration factor, visual factor, lidar registration factor, positioning observation factor, and loop closure factor. The graph is constructed based on the aforementioned constraint factors and their weights.
[0038] Specifically, such as Figure 2C As shown, during map construction, multi-source data is uniformly modeled as an odometry factor map. The state nodes in the factor map represent the device's pose, velocity, inertial bias, and other states at different times. Constraint factors include: 1. Inertial pre-integration factor, used to constrain high-frequency motion between adjacent state nodes; 2. Visual factors, used to constrain the relationship between multi-camera image features and pose; 3. Laser registration factor, used to represent the ICP registration constraints between the current frame point cloud and the local map; 4. Positioning observation factor, used to introduce global coordinate constraints when the quality of the positioning component meets the usage conditions; 5. Loopback factor, used to constrain global consistency of the trajectory when an visited region is detected.
[0039] During odometry factor mapping, a dynamic sliding window ICP registration method is used to maintain local point cloud consistency. This method registers the current frame point cloud with a local sub-map composed of the most recent few frames. The sliding window can contain the point clouds of the most recent N frames or keyframe point clouds. Dynamic sliding window ICP can employ point-to-point, point-to-plane, or feature-point-to-local geometry matching methods. Its basic goal is to solve the pose transformation of the current point cloud relative to the local map, minimizing the error between the current frame point cloud and the reference sub-map. Compared to single-frame matching, dynamic sliding window ICP provides a more stable local geometric reference; compared to global map matching, dynamic sliding window ICP has more controllable computational complexity, making it suitable for real-time operation on handheld devices. This mechanism can continue to provide stable local pose constraints even when the positioning component degrades or becomes unavailable.
[0040] Optionally, based on the above embodiments, the method further includes: If the working state of the positioning component meets the weight reduction condition, then the weight of the positioning observation factor in the odometer factor graph is reduced. Accordingly, during the process of synchronous positioning and mapping based on camera data, point cloud data, and inertial data, the weight of the positioning observation factor is zero.
[0041] Specifically, there are situations where the operational status of the positioning component declines, but still meets the usage requirements. To address this, dynamic weights are assigned to the positioning observation factors. While the operational status of the positioning component declines but still meets the usage requirements, the weights of the positioning observation factors are gradually reduced based on the actual degree of decline. The weights are reduced to zero when the operational status declines to the point where the usage requirements are no longer met, i.e., when positioning data is no longer needed for mapping.
[0042] This invention combines an inertial sensor with a positioning component to maintain continuous trajectory estimation and coordinate output at different stages of the positioning component's availability, degradation, failure, and recovery.
[0043] Figure 3 This is a schematic diagram of an indoor / outdoor continuous scanning device according to another embodiment of the present invention. Figure 3 As shown, the device includes: The conventional mapping module 310 is used to create maps based on image data acquired by the camera, point cloud data acquired by the lidar, inertial data acquired by the inertial sensor, and position data acquired by the positioning component, and to monitor the working status of the positioning component in real time. The temporary mapping module 320 is used to temporarily perform synchronous positioning and mapping based on camera data, point cloud data and inertial data if the working state of the positioning component does not meet the usage conditions. The mapping recovery module 330 is used to restore the working state of the positioning component to the condition of use if the positioning component is temporarily restored after synchronous positioning mapping based on camera data, point cloud data and inertial data. In this case, it returns to the operation of mapping based on image data collected by the camera, point cloud data collected by the lidar, inertial data collected by the inertial sensor and position data collected by the positioning component.
[0044] The indoor and outdoor continuous scanning device provided in the embodiments of the present invention can execute the indoor and outdoor continuous scanning method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the method.
[0045] Optionally, the mapping recovery module 330 is specifically used for: The current measurement position is determined based on the positioning component after the working status is restored to use, and the current estimated position is determined based on the mapping results of synchronous positioning and mapping. If the difference between the current measured position and the current estimated position is within an acceptable range, then return to execute the mapping based on the image data collected by the camera, the point cloud data collected by the lidar, the inertial data collected by the inertial sensor, and the position data collected by the positioning component; If the difference between the current measured position and the current estimated position is not within an acceptable range, then the trajectory and point cloud in the mapping result of the synchronous positioning mapping are segmented and smoothed according to the current measured position and the current estimated position, and the process returns to execute mapping based on the image data collected by the camera, the point cloud data collected by the lidar, the inertial data collected by the inertial sensor, and the position data collected by the positioning component.
[0046] Optionally, the standard mapping module 310 is specifically used for: Image data acquired by the camera, point cloud data acquired by the lidar, inertial data acquired by the inertial sensor, and position data acquired by the positioning component are modeled as constraint factors in the odometry factor map; the constraint factors include inertial pre-integration factor, visual factor, lidar registration factor, positioning observation factor, and loop closure factor. The map is constructed based on the constraint factors and weights of the odometer factor map.
[0047] Optionally, the device further includes: The weight adjustment module is used to reduce the weight of the positioning observation factor in the odometer factor graph if the working state of the positioning component meets the weight reduction condition. Accordingly, during the process of synchronous positioning and mapping based on camera data, point cloud data, and inertial data, the weight of the positioning observation factor is zero.
[0048] Optionally, the evaluation metrics for the working status include at least one of the following: positioning solution type, consistency between positioning results and odometry predictions, baseline length, observation residuals, signal strength, multipath risk, and number of satellites.
[0049] Optionally, the camera includes a front camera, a left camera, and a right camera; the left camera and the right camera are used to provide lateral blind spot coverage for the main camera.
[0050] The indoor and outdoor continuous scanning device further described can also perform the indoor and outdoor continuous scanning method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of performing the method.
[0051] Figure 4 A schematic diagram of an electronic device 40 that can be used to implement embodiments of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0052] like Figure 4 As shown, the electronic device 40 includes at least one processor 41 and a memory, such as a read-only memory (ROM) 42 or a random access memory (RAM) 43, communicatively connected to the at least one processor 41. The memory stores computer programs executable by the at least one processor. The processor 41 can perform various appropriate actions and processes based on the computer program stored in the ROM 42 or loaded from storage unit 48 into the RAM 43. The RAM 43 may also store various programs and data required for the operation of the electronic device 40. The processor 41, ROM 42, and RAM 43 are interconnected via a bus 44. An input / output (I / O) interface 45 is also connected to the bus 44.
[0053] Multiple components in electronic device 40 are connected to I / O interface 45, including: input unit 46, such as keyboard, mouse, etc.; output unit 47, such as various types of monitors, speakers, etc.; storage unit 48, such as disk, optical disk, etc.; and communication unit 49, such as network card, modem, wireless transceiver, etc. Communication unit 49 allows electronic device 40 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0054] Processor 41 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 41 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 41 performs the various methods and processes described above, such as indoor and outdoor continuous scanning methods.
[0055] In some embodiments, the indoor / outdoor continuous scanning method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 48. In some embodiments, part or all of the computer program may be loaded and / or mounted on electronic device 40 via ROM 42 and / or communication unit 49. When the computer program is loaded into RAM 43 and executed by processor 41, one or more steps of the indoor / outdoor continuous scanning method described above may be performed. Alternatively, in other embodiments, processor 41 may be configured to perform the indoor / outdoor continuous scanning method by any other suitable means (e.g., by means of firmware).
[0056] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0057] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0058] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0059] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0060] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0061] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0062] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.
[0063] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. A method for continuous indoor and outdoor scanning, characterized in that, Applied to a handheld spatial scanning terminal, the method includes: Mapping is constructed based on image data collected by the camera, point cloud data collected by the lidar, inertial data collected by the inertial sensor, and position data collected by the positioning component, and the working status of the positioning component is monitored in real time. If the working state of the positioning component does not meet the usage conditions, then synchronous positioning and mapping will be temporarily performed based on camera data, point cloud data and inertial data. If the positioning component's working status is restored after temporary synchronous positioning and mapping based on camera data, point cloud data, and inertial data, then the process will return to executing mapping based on image data collected by the camera, point cloud data collected by the LiDAR, inertial data collected by the inertial sensor, and position data collected by the positioning component.
2. The method according to claim 1, characterized in that, The return execution of mapping based on image data acquired by the camera, point cloud data acquired by the lidar, inertial data acquired by the inertial sensor, and position data acquired by the positioning component includes: The current measurement position is determined based on the positioning component after the working status is restored to use, and the current estimated position is determined based on the mapping results of synchronous positioning mapping. If the difference between the current measured position and the current estimated position is within an acceptable range, then return to execute the mapping based on the image data collected by the camera, the point cloud data collected by the lidar, the inertial data collected by the inertial sensor, and the position data collected by the positioning component; If the difference between the current measured position and the current estimated position is not within an acceptable range, then the trajectory and point cloud in the mapping result of the synchronous positioning mapping are segmented and smoothed according to the current measured position and the current estimated position, and the process returns to execute mapping based on the image data collected by the camera, the point cloud data collected by the lidar, the inertial data collected by the inertial sensor, and the position data collected by the positioning component.
3. The method according to claim 2, characterized in that, The mapping process based on image data acquired by the camera, point cloud data acquired by the lidar, inertial data acquired by the inertial sensor, and position data acquired by the positioning component includes: Image data acquired by the camera, point cloud data acquired by the lidar, inertial data acquired by the inertial sensor, and position data acquired by the positioning component are modeled as constraint factors in the odometry factor map; the constraint factors include inertial pre-integration factor, visual factor, lidar registration factor, positioning observation factor, and loop closure factor. The map is constructed based on the constraint factors and weights of the odometer factor map.
4. The method according to claim 3, characterized in that, The method further includes: If the working state of the positioning component meets the weight reduction condition, then the weight of the positioning observation factor in the odometer factor graph is reduced. Accordingly, during the process of synchronous positioning and mapping based on camera data, point cloud data, and inertial data, the weight of the positioning observation factor is zero.
5. The method according to claim 1, characterized in that, The evaluation metrics for the operational status include at least one of the following: positioning solution type, consistency between positioning results and odometry predictions, baseline length, observation residuals, signal strength, multipath risk, and number of satellites.
6. The method according to claim 1, characterized in that, The camera includes a front camera, a left camera, and a right camera; the left and right cameras are used to fill in the lateral blind spots of the main camera.
7. An indoor / outdoor continuous scanning device, characterized in that, Deployed on a handheld spatial scanning terminal, the device includes: The standard mapping module is used to create maps based on image data acquired by the camera, point cloud data acquired by the lidar, inertial data acquired by the inertial sensor, and position data acquired by the positioning component, and to monitor the working status of the positioning component in real time. The temporary mapping module is used to temporarily perform synchronous positioning and mapping based on camera data, point cloud data, and inertial data if the working state of the positioning component does not meet the usage conditions. The mapping recovery module is used to restore the working status of the positioning component to the operating conditions if the positioning component is temporarily restored after synchronous positioning mapping based on camera data, point cloud data, and inertial data. In this case, it returns to the original state and performs mapping based on the image data collected by the camera, the point cloud data collected by the LiDAR, the inertial data collected by the inertial sensor, and the position data collected by the positioning component.
8. An electronic device, characterized in that, The electronic device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor to enable the at least one processor to perform the indoor and outdoor continuous scanning method according to any one of claims 1-6.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute the indoor / outdoor continuous scanning method according to any one of claims 1-6.
10. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the indoor and outdoor continuous scanning method according to any one of claims 1-6.