Mapping measurement device and method for calibrating surveying and mapping measurement device
By using sensors and computer processors to determine the axes and positions of the local coordinate system, the problem of time-consuming and error-prone feature measurement in existing technologies is solved, achieving efficient and accurate feature calibration.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-18
- Publication Date
- 2026-03-13
AI Technical Summary
Existing technologies for measuring the characteristics of man-made and natural environments are time-consuming, require multiple participants, and are prone to errors. Furthermore, equipment such as total stations are expensive and complex to operate, making them unsuitable for all application scenarios.
A measuring device comprising multiple sensors is employed to acquire motion data through the rotation and linear motion of the measuring device. This data, combined with a computer processor, determines the axes and positions of the local coordinate system, thereby achieving relative calibration of the features.
This paper presents an accurate, efficient, and cost-effective method that can record the relative positions and calibration relationships of features in a local coordinate system, simplifying the measurement process and reducing human error.
Smart Images

Figure CN121666522A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to methods and apparatus for determining the location of survey points in a local coordinate system and / or relative to previously recorded survey locations. Specifically, this disclosure may relate to, but is not limited to, mutual calibration of surveyed features of man-made and / or natural environments. Background Technology
[0002] For many applications, it is necessary to acquire accurate mapping data related to man-made and / or natural environments. To generate such mapping data, the dimensions of multiple features of the man-made and / or natural environment must be measured. Furthermore, each feature needs to be calibrated relative to other features.
[0003] Traditional techniques for measuring feature dimensions include using a measuring tape or other linear distance measuring equipment. However, this method is time-consuming, typically requires two construction professionals, and is prone to significant errors. Furthermore, simply measuring the dimensions of a feature does not provide any information about its relative calibration relationship. While linear distances between features can be measured, this adds additional time and complexity to the measurement process.
[0004] It is known that surveying equipment (e.g., a total station) can be used for measurement. A total station can measure the dimensions of multiple features and provide their relative orientations or calibration relationships. However, for many applications, a total station is not a suitable tool for surveying. A total station is an expensive tool, requires skilled operation, and is overkill for many applications.
[0005] Therefore, there is a need for an accurate, efficient, and cost-effective method to measure the characteristics of man-made and natural environments and record their relative positions and calibration relationships in a local coordinate system. Summary of the Invention
[0006] The methods and apparatus disclosed herein are intended to solve one or more problems in the prior art, including the technical problems described herein.
[0007] According to one aspect of this disclosure, a system for determining the position of a mapping measurement point in a local coordinate system is provided. The system includes: a measuring device comprising a plurality of sensors configured to acquire motion data representing the position of the measuring device and optionally its orientation based on rotation and / or linear motion of the measuring device; and a computer processor configured to: determine a first position of the measuring device based on the motion data; determine a second position of the measuring device based on the motion data; determine a first axis of the local coordinate system, wherein the first axis passes through the first position of the measuring device; determine a second axis of the local coordinate system, wherein the second axis passes through the second position of the measuring device; and determine one or more mapping positions of the measuring device in the local coordinate system based on the motion data, the first axis, and the second axis, while acquiring one or more mapping measurement values.
[0008] According to one aspect of this disclosure, a system for determining the position of a mapping measurement point in a local coordinate system is provided. The system includes: a measuring device including a plurality of sensors configured to acquire motion data representing the position of the measuring device and optionally its orientation based on rotational and / or linear motion of the measuring device; and a computer processor configured to: determine a first position of the measuring device based on motion data acquired when the measuring device is placed at a first location; determine a second position of the measuring device based on motion data acquired when the measuring device is placed at a second location; determine a first axis of the local coordinate system, wherein the first axis passes through the first position; determine a second axis of the local coordinate system, wherein the second axis passes through the second position; and determine one or more mapping positions in the local coordinate system based on motion data acquired when the measuring device is placed at one or more measurement points, and based on the first axis and the second axis.
[0009] Optionally, the computer processor is further configured to determine the first axis and the second axis of the local coordinate system such that the first axis and the second axis are substantially orthogonal.
[0010] Optionally, the computer processor is further configured to determine the two-dimensional origin of the local coordinate system as the intersection of the first axis and the second axis.
[0011] Optionally, the computer processor is also used to horizontally calibrate the first axis and the second axis.
[0012] Optionally, the second axis also passes through the first position, such that the first position is the origin of the local coordinate system.
[0013] Optionally, the computer processor is further configured to: determine a first orientation of the measuring device at the first position; and determine a second orientation of the measuring device at the second position. Optionally, horizontally calibrating the first axis includes calibrating the first axis with the horizontal component of the first orientation, and wherein horizontally calibrating the second axis includes calibrating the second axis with the horizontal component of the second orientation.
[0014] Optionally, the first position is located on a first planar feature of an artificial or natural environment, and the second feature is located on a second planar feature of an artificial or natural environment that intersects the first planar feature laterally. The computer processor is further configured to: determine the intersection of the first and second planar features in a horizontal plane based on the determined first and second positions and the determined first and second directions, wherein the position of the intersection is known relative to one or more previously measured measurement points referenced in a previous local coordinate system.
[0015] Optionally, the computer processor is further configured to: determine a local horizontal plane based on the motion data; and calibrate the first axis and the second axis with the determined local horizontal plane.
[0016] Optionally, the computer processor is further configured to: determine that the measuring device has been repositioned on the first axis and / or the second axis; determine a reset first position and / or a reset second position based on the motion data; and determine an error in the motion data based on the first position, the second position, and the reset first position and / or the reset first position.
[0017] Optionally, the computer processor is further configured to: determine a reset first position and / or a reset second position based on the motion data when the measuring device has been repositioned on the first axis and / or the second axis; and determine an error in the motion data based on the first position, the second position, and the reset first position and / or the reset first position.
[0018] Optionally, the computer processor is further configured to determine that the first position of the reset and / or the second position of the reset is not a mapping position.
[0019] Optionally, the first and second positions are located on one or more previously mapped features.
[0020] Optionally, one or more of the previously mapped features were mapped using the measuring device.
[0021] Optionally, one or more features include adjacent interior and / or exterior walls of a building.
[0022] Optionally, the computer processor is further configured to: determine a third position of the measuring device based on the motion data; determine a third axis of the local coordinate system extending from the two-dimensional origin; wherein the third axis passes through the third position of the measuring device; and determine a three-dimensional origin of the local coordinate system based on the determined third position and the two-dimensional origin.
[0023] Optionally, the computer processor is further configured to determine the orientation of a third axis, wherein the third axis is orthogonal to the first axis and the second axis. Optionally, the computer processor is configured to determine the orientation of the third axis based on the orientation of the measuring device at the first position and / or the second position.
[0024] Optionally, the computer processor is configured to determine the first position, the second position, and / or the one or more mapped positions based on the motion data and using dead reckoning.
[0025] Optionally, the plurality of sensors include inertial sensors and may optionally form part of an inertial measurement unit.
[0026] According to one aspect of this disclosure, a method for determining the position of a mapping measurement point in a local coordinate system is provided. The method includes: determining a first position of a measuring device by a position and orientation determiner; wherein the measuring device includes a plurality of sensors configured to acquire motion data representing the position of the measuring device and optionally its orientation based on rotation and / or linear motion of the measuring device, and wherein the first position is determined based on the motion data; determining a second position of the measuring device by the position and orientation determiner based on the motion data; determining a first axis of the local coordinate system by an axis locator; wherein the first axis passes through the first position of the measuring device; determining a second axis of the local coordinate system by the axis locator; wherein the second axis passes through the second position of the measuring device; and determining one or more mapping positions of the measuring device in the local coordinate system by the position and orientation determiner based on the motion data, the first axis, and the second axis, while acquiring one or more mapping measurement values.
[0027] According to one aspect of this disclosure, a method is provided for determining the position of a mapping measurement point in a local coordinate system using a measuring device, the measuring device including a plurality of sensors for acquiring motion data representing the position of the measuring device and optionally its orientation based on rotation and / or linear motion of the measuring device. The method includes: determining a first position of the measuring device by a position and orientation determiner based on motion data acquired when the measuring device is placed at a first location; determining a second position of the measuring device by the position and orientation determiner based on motion data acquired when the measuring device is placed at a second location; determining a first axis of the local coordinate system by an axis locator, wherein the first axis passes through the first position; determining a second axis of the local coordinate system by the axis locator, wherein the second axis passes through the second position; and determining one or more mapping positions in the local coordinate system by the position and orientation determiner based on motion data acquired when the measuring device is placed at one or more measurement points, and based on the first axis and the second axis.
[0028] According to one aspect of this disclosure, a processing device is provided for determining the position of a mapping measurement point in a local coordinate system. The processing device includes: a receiver for receiving motion data from a measuring device, the measuring device including a plurality of sensors for acquiring motion data representing the position of the measuring device and optionally its orientation based on rotation and / or linear motion of the measuring device; and a computer processor for: determining a first position of the measuring device based on the motion data; determining a second position of the measuring device based on the motion data; determining a first axis of the local coordinate system, wherein the first axis passes through the first position of the measuring device; determining a second axis of the local coordinate system, wherein the second axis passes through the second position of the measuring device; and determining one or more mapping positions of the measuring device in the local coordinate system based on the motion data, the first axis, and the second axis, while acquiring one or more mapping measurement values.
[0029] According to one aspect of this disclosure, a processing apparatus is provided for determining the position of a mapping measurement point in a local coordinate system. The processing apparatus includes: a receiver for receiving motion data from a measuring device, the measuring device including a plurality of sensors for acquiring motion data representing the position of the measuring device and optionally its orientation based on rotation and / or linear motion of the measuring device; and a computer processor for: determining a first position of the measuring device based on the received motion data acquired when the measuring device is placed at a first location; determining a second position of the measuring device based on the received motion data acquired when the measuring device is placed at a second location; determining a first axis of the local coordinate system, wherein the first axis passes through the first position; determining a second axis of the local coordinate system, wherein the second axis passes through the second position; and determining one or more mapping positions in the local coordinate system based on the received motion data acquired when the measuring device is placed at one or more measurement points, and based on the first axis and the second axis.
[0030] According to one aspect of this disclosure, a method for determining the position of a mapping measurement point in a local coordinate system is provided. The method includes: receiving motion data from a measuring device; wherein the measuring device includes a plurality of sensors for acquiring motion data representing the position of the measuring device and optionally its orientation based on rotation and / or linear motion of the measuring device; determining a first position of the measuring device based on the motion data by a position and orientation determiner; determining a second position of the measuring device based on the motion data by the position and orientation determiner; determining a first axis of the local coordinate system by an axis locator; wherein the first axis passes through the first position of the measuring device; determining a second axis of the local coordinate system by the axis locator; wherein the second axis passes through the second position of the measuring device; and determining one or more mapping positions of the measuring device in the local coordinate system by the position and orientation determiner, based on the motion data, the first axis, and the second axis, while acquiring one or more mapping measurement values.
[0031] According to one aspect of this disclosure, a method for determining the position of a mapping measurement point in a local coordinate system is provided. The method includes: receiving motion data from a measuring device; wherein the measuring device includes a plurality of sensors for acquiring motion data representing the position of the measuring device and optionally its orientation based on rotation and / or linear motion of the measuring device; determining a first position of the measuring device by a position and orientation determiner based on the received motion data acquired when the measuring device is placed at a first location; determining a second position of the measuring device by the position and orientation determiner based on the received motion data acquired when the measuring device is placed at a second location; determining a first axis of the local coordinate system by an axis locator, wherein the first axis passes through the first position; determining a second axis of the local coordinate system by the axis locator, wherein the second axis passes through the second position; and determining one or more mapping positions in the local coordinate system by the position and orientation determiner based on the received motion data acquired when the measuring device is placed at one or more measurement points, and based on the first axis and the second axis.
[0032] According to one aspect of this disclosure, a computer program is provided, when executed on a computer processor, for controlling a computer processor to perform one or more steps of any of the methods described herein. Attached Figure Description
[0033] Embodiments of the disclosed method and apparatus will now be described in detail with reference to the accompanying drawings, wherein: Figure 1 This is a schematic diagram of a system used to determine terrain data; Figure 2 This is a schematic diagram of the measuring equipment; Figure 3 This is a schematic diagram of the processing equipment; Figure 4 It is a floor plan of the building's rooms; Figure 5 This is a flowchart of a method for determining the position of a survey point in a local coordinate system; Figure 6 This is a flowchart of a method for determining the position of a survey point in a local coordinate system; and Figure 7 An exemplary process for determining a local coordinate system is shown. Detailed Implementation
[0034] This specification generally discloses methods and apparatus for determining the position of survey points in a local coordinate system. In some applications, this allows for the mutual calibration of various features in a survey. These features are typically identified in different layers so that they can be processed independently in CAD (Computer-Aided Design) software. Exemplary methods and apparatus can calibrate survey positions identified in a first layer with survey positions identified in a second layer. For example, the methods and apparatus described herein can achieve: • Align the various rooms within the building with each other; • Collect the position and orientation of objects within a room or space; • Align the building with other buildings; and • The relative location and orientation of the area to be collected, for example, features within the garden boundary such as terraces, pools, flower beds and external buildings.
[0035] The exemplary methods and apparatus described herein use a measuring device including motion sensors to identify two axes of a local coordinate system. These axes may be orthogonal and may be locally horizontal. The measuring device is placed at a first point and then at a second point. A first axis and a second axis are determined such that they pass through the first point and the second point, respectively. The origin of the local coordinate system is determined as the point where the first axis and the second axis intersect.
[0036] After the first and second axes are determined, the measuring equipment can be moved to a more distant location to perform one or more mapping measurements, for example, to measure features of man-made or natural environments. This more distant location is determined relative to the first and second axes. Thus, these mapping points are positioned in a local coordinate system.
[0037] When measuring another feature of a man-made or natural environment, in some exemplary embodiments, the measuring device can be placed again at points on the first axis and the second axis. These points may be the same as or different from the first and second points mentioned above. For example, the first and second points may be located on adjacent walls of a building, in which case it is not necessary to place the measuring device at the same point on the wall as in the initial operation. The measuring device can be placed at any point on these walls. This also applies to any measurement feature that is planar. Subsequently, mapping measurements related to this other feature can be performed.
[0038] In an exemplary arrangement, the first axis and the second axis may each coincide with an orthogonal element of a feature, such as a building wall.
[0039] Figure 1A schematic diagram of an exemplary system 100 is shown. System 100 includes a measuring device 102 and a processing device 104. A detailed description of the exemplary measuring device and processing devices 102, 104 is given below. In general, the measuring device 102 includes one or more sensors for acquiring mapping data representing its position and / or orientation. For example, these one or more sensors may be used to record linear acceleration and rotational speed.
[0040] The measuring device 102 is used to send its position and / or orientation mapping data to the processing device 104.
[0041] The processing device 104 includes a processor for determining mapping data based on the mapping data. The processing device 104 can be used to present instructions regarding the mapping data to construction personnel. In some exemplary arrangements, the processing device can be used to export data representing at least a portion of the determined mapping data. For example, the exported data may be suitable for representation in CAD software or similar software.
[0042] It should be understood that at least a portion of the processing of the motion data and distance data can be performed at the measuring device 102 before being sent to the processing device 104. It should also be understood that the processing device 104 can be part of the measuring device 102 and can be housed within a single unit. Furthermore, it should be understood that the processing device 104 can be part of the measuring device 102 and can be disposed within a single unit.
[0043] In the exemplary arrangement, the measuring device 102 may be a handheld or other portable unit suitable for being carried by construction personnel. In the exemplary arrangement, the processing device 104 may be a portable processing device, such as a mobile phone, tablet, or laptop.
[0044] Figure 1 The diagram illustrates the transmission of mapping data from measuring device 102 to processing device 104 via wireless transmission 106. Wireless transmission can be radio frequency transmission using known hardware and communication protocols, such as Bluetooth, near-field communication, Wi-Fi, network-based communication (e.g., the Internet), or mobile telecommunications protocols. Wireless transmission 106 can also use optical transmission hardware and protocols. The transmission can be at least partially wired, and in some arrangements, it can be fully wired. Processing device 104 can also send data to measuring device 102 via the same or different communication media / protocols.
[0045] The transmission of motion measurement data can be substantially real-time. For example, measurement results can be recorded and then transmitted as quickly as possible (e.g., over an open communication link) to represent these results. In some schemes, data transmission can be intermittent and / or have a variable frequency (intermittent transmission from time to time). For example, the measuring device can record multiple measurements and store data representing these measurements for subsequent transmission. In such schemes, transmission can be triggered manually, i.e., after all mapping data has been collected, or by the measuring device 102 detecting the open communication channel of the processing device 104 (directly or indirectly).
[0046] Figure 2 A schematic representation of the measuring device 102 is shown. This measuring device 102 can be... Figure 1 The measuring device 102 includes a transmitter 202 and optionally a receiver 204. The transmitter 202 and receiver 204 can communicate with other entities (e.g., processing device 104 or functional entities in servers and / or telecommunications networks) and are used to send and receive data accordingly.
[0047] The measuring device 102 also includes a memory 206 and a processor 208. The memory 206 may include non-volatile memory and / or volatile memory. A computer program 210 may be stored in the memory 206. The computer program 210 can be used to perform the methods disclosed herein. The computer program 210 may be loaded into the memory 206 from a non-transient computer-readable medium 212 storing the computer program. The measuring device 102 may also include a motion sensor 214 (e.g., an inertial sensor). The processor 208 is used to perform one or more functions required for the operation of one or more of the remaining elements of the measuring device 102.
[0048] Inertial sensor 214 may include an accelerometer and / or a rate gyroscope. Inertial sensor 214 can be used to map the acceleration and rotational speed of measuring device 102 along three orthogonal axes, typically designated as the x-axis, y-axis, and z-axis. The acceleration and rotational speed can be recorded in a volume coordinate system (i.e., a coordinate system fixed relative to measuring device 102 and defined by the x, y, and z axes) and can be converted to any other reference coordinate system (e.g., a local coordinate system or a reference coordinate system based on a specific plot or construction site) using known techniques. Inertial sensor 214 may be part of an inertial measurement unit (IMU) located within measuring device 103. Inertial sensor 214 may incorporate microelectromechanical systems (MEMS) technology.
[0049] Inertial sensors have been mentioned in this article, but it should be understood that other motion or positioning sensors may also be used. Such motion or positioning sensors include any sensor capable of detecting rotational and / or linear motion of a measuring device. These sensors, by way of example only, include those using related technologies such as GNSS, Doppler, cellular positioning, Wi-Fi positioning, cameras, and lasers.
[0050] Each of the transmitter 202 and receiver 204, memory 206, processor 208, and inertial sensor 214 communicates data with other features of the processing device 102. The measurement device 102 can be implemented as a combination of hardware and software. Specifically, the software is used to run on the processor 208. The memory 206 stores various programs / executable files implemented by the processor 208 and also provides storage units for storing any required data.
[0051] Figure 3 A schematic representation of a processing device 104 is shown. This processing device 104 can be... Figure 1 The processing device 104 includes a receiver 304 and optionally a transmitter 302. The transmitter 302 and receiver 304 can communicate with other entities (e.g., the measuring device 102 or a server and / or a functional entity in a telecommunications network) and are used to send and receive data accordingly.
[0052] The processing device 104 also includes a memory 306 and a processor 308. The memory 306 may include non-volatile memory and / or volatile memory. A computer program 310 may be stored in the memory 306. The computer program 310 can be used to perform the methods disclosed herein. The computer program 310 may be loaded into the memory 306 from a non-transient computer-readable medium 312 storing the computer program. The processor 308 is used to perform the functions of the position and orientation determiner 314, the axis locator 316, the local horizontal plane determiner 318, and the plan view generator 320. The processing device 104 may also optionally include a display 322 and a user interface 324.
[0053] Each of the transmitter 302 and receiver 304, memory 306, processor 308, display 322, and user interface 324 communicates data with other features of processing device 104. Processing device 104 can be implemented as a combination of hardware and software. Specifically, position and orientation determiner 314, axis positioner 316, local level plane determiner 318, and plan view generator 320 can be implemented as software for running on processor 308. Memory 306 stores various programs / executable files implemented by processor 308 and also provides storage units for storing any required data. Programs / executable files stored in memory 306 and executed by processor 308 may include, but are not limited to, position and orientation determiner 314, axis positioner 316, local level plane determiner 318, and plan view generator 320.
[0054] Figure 4 A ground floor plan 400 of an exemplary building is shown. This plan includes a living / kitchen area 402, a bathroom 404, and an office / study 406. In the kitchen area, there is a fixed island 408. When measuring the interior of this building, the surveyor may want to measure the dimensions of each room 402, 404, and 406. The surveyor may also want to measure the dimensions and location of the fixed island 408. In addition to the dimensions of these features of the building, the surveyor may also want to determine their relative calibration and location. Relative calibration can be determined by establishing a local coordinate system and positioning and orienting each feature relative to that local coordinate system.
[0055] For the purposes of this specification, the term "feature" may cover any part of the man-made or natural environment to be measured. The dimensions of one feature may be measured independently of the dimensions of another feature. The calibration relationship of these features may not be known from the dimensions of these features alone. For example, a feature may be a room in a building, or a permanent or semi-permanent part of a building, such as a kitchen island. Each feature may have multiple elements, such as walls and / or edges. Each element may have dimensions that can be measured as a single mapping measurement.
[0056] Figure 5 A flowchart of an exemplary method for determining the location of a survey point in a local coordinate system is shown.
[0057] In step 500, the measuring device 102 is placed at a first location, in this example against a first wall. This wall could be, for example, the interior wall 410 of the living / kitchen area 402 in floor plan 400. The measuring device 102 records motion data. In the exemplary arrangement, the motion data recorded by the measuring device is sent to the processing device 104 for processing. This can be done in real time or at a later time. Therefore, Figure 5The steps in the flowchart may not be performed in the order described in this article.
[0058] In step 502, the position and orientation determiner 314 of the processing device 104 determines the first position of the measuring device 102 based on the motion data recorded by the measuring device 102 in step 500.
[0059] In step 504, the measuring device 102 is placed at a second location, in this example against a second wall. The second wall may be substantially perpendicular to the first wall. This wall may be, for example, another interior wall 412 of the living / kitchen area 402 in floor plan 400. The measuring device 102 records motion data.
[0060] In step 506, the position and orientation determiner 314 of the processing device 104 determines a second position of the measuring device based on the motion data recorded by the measuring device 102 in step 504. In a particular arrangement, the second position can be determined relative to the first position.
[0061] In step 508, the axis positioner 316 of the processing device 104 determines that the first axis 414 of the local coordinate system passes through a first position, and determines that the second axis 416 of the local coordinate system passes through a second position. The axis positioner 316 can be used to determine that the first axis and the second axis are substantially orthogonal. The two-dimensional origin of the local coordinate system can be determined by the axis positioner 316 as the point where the first axis and the second axis intersect.
[0062] The specific layout is shown in Figure 7 The measuring device 102 is placed at a first location 700 on the first wall 702. Then, the measuring device 102 is placed at a second location 704 on a second wall 706 adjacent to the first wall 702. The first location 700 is determined as the origin of the local coordinate system. The first axis 708 ( Figure 7 The y-axis (in the diagram) passes through the first position 700. The second axis 710 ( Figure 7 The x-axis (708, 710) passes through the second position 704. In the example shown, since the origin is the first position 700, the second axis 710 also passes through the first position 700. The first axis and the second axes 708, 710 define the local coordinate system.
[0063] Axis locator 316 can be used to determine whether the first and second axes are horizontally aligned, for example, with a local level plane. Therefore, local level plane determiner 318 can be used to determine a local level plane based on motion data. Motion data may include acceleration caused by local gravity. Determining the gravity vector from motion measurements can be done in a manner known to those skilled in the art. Alternatively, the local level plane can be determined by placing measuring device 102 at a third location, which can be a horizontal surface, such as a floor or ceiling.
[0064] It should be noted that the first position can be any location along the first walls 410, 702, and the second position can be any location along the second walls 412, 706. The first and second positions can be at different heights. Therefore, the axis positioner 316 can be used to project the first and second axes 414, 416, 708, 706 in two dimensions to provide a two-dimensional local coordinate system.
[0065] In some arrangements, the position and orientation determiner 316 can be used to determine the orientation and position of the measuring device 102 when it is placed in a first and / or second position. In such arrangements, it is advantageous that the measuring device 102 includes a straight edge, for example, a flat surface that can be calibrated with the first and second axes, for example, against walls 410, 412, 702, 706.
[0066] exist Figure 7 In an exemplary arrangement, the position and orientation determiner 316 can determine the position of a feature in a local coordinate system based on the orientation of the first and second walls 702, 706, such as a corner 712 of the room—in this example, the intersection of the first and second walls 702, 706. In some arrangements, the corner 712 may have been previously measured as one of several features, making its position in a previous coordinate system known. This can be achieved through methods such as... Figure 7 By defining axes 708 and 710 and determining the position of a corner (or another feature) relative to the local coordinate system, the system and method disclosed herein are able to calibrate previously measured features with features measured in the local coordinate system.
[0067] In an exemplary arrangement, the position and orientation determiner 316 may use dead reckoning techniques to determine the position and / or orientation of the measuring device 102. That is, motion data can provide data on motion and / or rotation along three specified orthogonal axes, which can be added to a previously known position of the measuring device 102 to determine the current position. In a particular arrangement, the motion data may include linear acceleration and rotational velocity. Therefore, motion data acquired during the movement of the measuring device to a first location, a second location, and a measuring point can be used to determine the corresponding positions.
[0068] A permanent or temporary portion of the structure can define a first axis and a second axis, for example, adjacent walls forming a corner of a room or building. In these scenarios, the measuring device 102 can be placed against the first wall (first location), and the position and orientation of the measuring device 102 can be determined. The axis locator 316 can then determine the horizontal component calibration of the first axis relative to the orientation of the measuring device 102, and pass through the determined position of the measuring device 102 (first position). This process can be repeated for the second axis.
[0069] In step 510, the measuring device 102 is placed at one or more measuring points. The measuring device 102 records motion data. For example, the measuring device 102 can be positioned at the four edges of a kitchen island 408 to determine the location, orientation, and dimensions of the kitchen island 408. Alternatively, the measuring device 102 can be positioned on the four walls of a bathroom 404 or an office / study 406 to determine the location, orientation, and dimensions of those rooms.
[0070] It should be noted that in the exemplary arrangement, the measuring device 102 can be used to perform any measurement at the mapping location. For example, the measuring device 102 may include a laser rangefinder, a camera, a Doppler sensor, or any other type of sensor, and one or more of these sensors may be used to record a mapping measurement at one or more mapping locations.
[0071] In step 512, the position and orientation determiner 314 determines the mapping position and calibrates it with the local coordinate system. The mapping measurement point is thus calibrated within the local coordinate system.
[0072] In step 514, it is determined whether further mapping measurements are needed. If so, the measuring device 102 is positioned at a more distant measurement point, and the more distant mapping location is determined by repeating steps 510 and 512. For example, a construction professional might want to measure a complete feature or a set of features. Alternatively, the construction professional may continue determining the mapping location until a specific time, such as lunchtime or the end of a workday.
[0073] Optionally, once all survey positions have been determined, the measuring device 102 can be repositioned against the first and / or second wall in step 516. This allows for error determination in step 518, since the device 102 is placed in a location that is at least partially known, such as a known orientation, in a known plane (i.e., on the wall), and / or in a known position on the wall, which may be the same as the location in steps 500 and 504.
[0074] In the exemplary arrangement, it may be advantageous to determine errors during the measurement process. For example, when measuring another feature, the measuring device 102 can be repositioned to a point on the first axis 414, then to a point on the second axis 416, and then placed at one or more more distant mapping locations to obtain one or more mapping measurements. For example, if a construction professional wants to measure the bathroom 404 after measuring the kitchen island 408, the measuring device 102 can be repositioned against the first wall 410. The measuring device 102 can also be repositioned against the second wall 412.
[0075] The position and orientation determiner 314 can be used to determine, based on motion data, when the measuring device 102 is repositioned on the first and / or second axes. The position and orientation determiner 314 can determine the reset first position and the reset second position based on the motion data. The position and orientation determiner 314 can determine errors in the motion data based on the first position and / or the reset second position. In this way, the first and second axes of the local coordinate system can be reset. The measuring device 102 is then brought into, for example, a bathroom 404, and placed at the required mapping position for measuring the bathroom, for example, on each of the four walls.
[0076] In this way, the measurements of the kitchen island 408 and bathroom 404 are calibrated in the local coordinate system, thus calibrating them relative to each other. Resetting the coordinate axes improves the accuracy of mapping the position of the measurement points in the local coordinate system. The position and orientation determiner 314 can be used to determine whether the data related to the repositioning of the measuring device 102 on the first and second axes 414, 416 is the mapped position.
[0077] In an exemplary arrangement, the updated first and second axes can be determined using one or more mapping locations determined in step 512. For example, steps 500 to 508 can be performed as described above. The room can then be measured using measuring device 102 by determining the position and orientation of each wall of the room as described above. It may now be necessary to measure a second room. The second room may be adjacent to the first room but far from the first and second axes. In this case, one or more walls of the first room can be used as the first and second axes for determining the mapping locations within the second room; wherein measuring device 102 is positioned on those walls to determine the updated first and second axes. Those skilled in the art will understand that the above use of walls is merely an example, and the principle can be extended to any feature being measured.
[0078] It should be noted that in the above example, the measured feature (kitchen island 408) and the further measured feature (bathroom 404) are also calibrated relative to the living / kitchen area 402 because the first and second axes 414, 416 coincide with the first and second walls 410, 412.
[0079] The example above uses walls to define the first and second axes, but other elements of the feature can also be used. Furthermore, a local coordinate system can be defined by elements that are not part of the feature. For example, temporary structures can be built or marked to define the first and second axes.
[0080] In one arrangement, the measuring device 102 can be placed in a third position, which the axis locator 316 can use to determine the third axis of the local coordinate system. This third position can be the floor or ceiling of a building. Therefore, the mapping position can be determined relative to three axes in the local coordinate system.
[0081] In such arrangements, the horizontal axis of the local coordinate system can be determined using the first and second positions, and optionally the horizontal direction of the measuring device 102, as described above. The axis locator 316 can be used to determine that the third axis extends from the origin of the first and second axes 414, 416. The vertical direction of the measuring device 102 at one or both of the first and second positions can be used to determine the orientation of the third axis of the local coordinate system. In some arrangements, the orientation of the third axis can be determined alternatively or additionally based on the orientation of the measuring device in the third position; for example, the orientation of the third axis can be orthogonal to the orientation of the measuring device 102 in the third position. In still other arrangements, the orientation of the third axis can be determined to be substantially orthogonal to the first and second axes 414, 416.
[0082] The third position can be used to determine the three-dimensional origin of the third axis. The origin of the local coordinate system is determined as the point where the first and second axes intersect at the height of the third position.
[0083] In a specific arrangement, the processing device can be used to identify the walls of a room based on the position and orientation of the measuring device. This operating mode can be referred to as "wall detection mode." In wall detection mode, position and orientation determiner 314 is used to determine the position and orientation of the measuring device 102 when it is placed against a wall. In such an arrangement, it is advantageous that the housing of the measuring device includes a flat surface that can be placed against a wall. Plan view generator 320 can be used to calibrate the determination of the orientation of the building walls relative to the determined orientation of the measuring device 102 (i.e., the orientation of the flat surface) at the determined location. The corners of the room can be determined as the locations where the walls intersect.
[0084] Figure 6 A flowchart illustrating a method for determining the location of survey points in a local coordinate system is shown. Figure 6 In one of the exemplary methods, the processing device may be in a wall detection mode.
[0085] In step 600, the measuring device 102 is connected to... Figure 5 The method shown is basically the same, placed against the first wall 410.
[0086] In step 602, the position and orientation determiner 314 determines the position and orientation of the measuring device 102 based on the motion data.
[0087] In step 604, the plan generator 320 determines the position and orientation of the first wall 410 based on the determined position and orientation of the measuring device 102. If a plan view is required, only the horizontal orientation of the wall can be determined.
[0088] In step 606, it is determined whether there are more walls to measure. This can be determined based on user input. In some arrangements, this can be determined based on whether the walls identified so far define a substantially closed loop (considering a certain closure error). If more walls are to be measured, steps 600 to 606 are repeated until no walls remain.
[0089] Steps 608 and 610 are optional and allow for error reduction. In step 608, the measuring device 102 is placed against the first wall 410 for the second time. In step 610, the position and orientation determiner 314 determines the position and orientation of the measuring device 102 based on motion data, and by comparing it with the first determined position and orientation, an error can be calculated, which can be used to correct the previous position and orientation determination results. If the measuring device 102 is placed in substantially the same position as when it was first placed against the first wall, the error can be further reduced.
[0090] After step 610, all the walls of the living / kitchen area 402 have been located, and the floor plan generator 320 has determined the floor plan of the room.
[0091] At a later time, the construction professional may wish to measure another feature (e.g., a different room or other external or internal feature). In step 612, the measuring device 102 is positioned on the first wall 410 and the second wall 412 of the mapped room. Thus, the first and second axes 414, 416 of the local coordinate system are defined. It should be noted that the measuring device 102 does not necessarily have to be placed on the first and second walls, but can be placed on the surface of any previously mapped element of the feature. For example, the measuring device 102 can be placed on the inside of a wall and door frame sidepost, the inside of a wall and window opening, or any surface that intersects laterally and optionally is perpendicular to each other.
[0092] In step 614, further mapping measurements are performed, such as measuring different rooms or other external or internal features. For example, the measuring device 102 can be positioned at the four corners of the kitchen island 408 to measure its size and orientation in a local coordinate system, or it can be positioned on the wall of the bathroom 404.
[0093] In step 616, the measuring device 102 is repositioned on the first and / or second walls 410, 412 as described above, and the first axis and the second axis 414, 416 can be reset after the error is calculated.
[0094] In step 618, the measuring device 102 can be positioned to perform mapping measurements at greater distances.
[0095] In an exemplary arrangement, an algorithm running on the processor 408 of the processing device can detect that a measurement of one feature has been completed and / or a measurement of another feature has begun. Such algorithms are not explained in detail herein. Alternatively, a construction professional can indicate via user interface 322 that a measurement of one feature has been completed and / or a measurement of another feature has begun.
[0096] In an exemplary arrangement, the measuring device 102 may include a reference point. This reference point may be a location or surface on the measuring device 102 where the position and / or orientation of the measuring device 102 will be calculated.
[0097] A computer program can be used to implement any of the methods described above. The computer program can be provided on a computer-readable medium. The computer program can be a computer program product. This product may include a non-transitory computer-usable storage medium. The computer program product may have computer-readable program code contained in a medium for performing the method. The computer program product can be used to cause at least one processor to perform some or all of the methods described.
[0098] This document describes various methods and apparatuses with reference to block diagrams or flowcharts of computer-implemented methods, apparatuses (systems and / or devices), and / or computer program products. It should be understood that the blocks and combinations of blocks and / or flowcharts shown in the block diagrams and / or flowcharts can be implemented by computer program instructions executed by one or more computer circuits. These computer program instructions can be provided to processor circuits of general-purpose computer circuits, special-purpose computer circuits, and / or other programmable data processing circuits to produce a machine, such that the instructions, executed via the processor of a computer and / or other programmable data processing device, transform and control transistors, values stored in memory locations, and other hardware components within such circuits implement the functions / actions specified in one or more blocks of the block diagrams and / or flowcharts. This creates means (functions) and / or structures for implementing the functions / actions specified in the blocks of the block diagrams and / or flowcharts.
[0099] Computer program instructions may also be stored in a computer-readable medium that can instruct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer-readable medium produce an article of writing including instructions that implement the functions / actions specified in the block diagrams and / or flowchart blocks.
[0100] Tangible, non-transitory computer-readable media can include electronic, magnetic, optical, electromagnetic, or semiconductor data storage systems, apparatuses, or devices. More specific examples of computer-readable media will include the following: portable computer disks, random access memory (RAM) circuitry, read-only memory (ROM) circuitry, erasable programmable read-only memory (EPROM or flash memory) circuitry, portable optical disc read-only memory (CD-ROM), and portable digital video disc read-only memory (DVD / Blu-ray).
[0101] Computer program instructions may also be loaded onto a computer and / or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer and / or other programmable apparatus, thereby producing a computer-implemented process, such that the instructions, which execute on the computer or other programmable apparatus, implement steps for carrying out the functions / actions specified in block diagrams and / or flowchart blocks or blocks.
[0102] Therefore, this disclosure can be implemented in hardware and / or software (including firmware, resident software, microcode, etc.) running on a processor, which can be collectively referred to as a "circuit", "module" or a variant thereof.
[0103] It should also be noted that in some alternative implementations, the functions / actions indicated in the blocks may not occur in the order given in the flowchart. For example, depending on the functions / actions involved, two blocks shown consecutively may actually execute substantially simultaneously, or these blocks may sometimes execute in reverse order. Furthermore, the functionality of a given block in a flowchart and / or block diagram can be divided into multiple blocks, and / or the functionality of two or more blocks in a flowchart and / or block diagram can be integrated at least partially. Finally, other blocks can be added / inserted between the shown blocks.
[0104] It will be apparent to those skilled in the art that various modifications and variations can be made to the disclosed systems and methods. Other embodiments will become apparent to those skilled in the art upon consideration of the specification and practice of the disclosed systems and methods. The specification and embodiments are to be considered exemplary only, and the true scope of this disclosure is indicated by the appended claims and their equivalents.
Claims
1. A system for determining the position of a survey point in a local coordinate system, characterized in that, include: A measuring device includes multiple sensors for acquiring motion data representing the position of the measuring device and optionally its orientation based on the rotation and / or linear motion of the measuring device; as well as Computer processor, used for: The first position of the measuring device is determined based on motion data acquired when the measuring device is placed at the first location. The second position of the measuring device is determined based on motion data acquired when the measuring device is placed at the second location. Determine a first axis of the local coordinate system; wherein the first axis passes through the first position; Determine a second axis of the local coordinate system; wherein the second axis passes through the second position; and Based on motion data acquired when the measuring device is placed at one or more measuring points, and based on the first axis and the second axis, one or more mapping positions are determined in the local coordinate system.
2. The system according to claim 1, characterized in that, in, The computer processor is further configured to determine the first axis and the second axis of the local coordinate system such that the first axis and the second axis are substantially orthogonal.
3. The system according to claim 1 or 2, characterized in that, in, The computer processor is also configured to determine the two-dimensional origin of the local coordinate system as the intersection of the first axis and the second axis.
4. The system according to any of the preceding claims, characterized in that, in, The second axis also passes through the first position, such that the first position is the origin of the local coordinate system.
5. The system according to any of the preceding claims, characterized in that, in, The computer processor is also used for: Based on the motion data, the first direction of the measuring device at the first position is determined; and Based on the motion data, the second direction of the measuring device at the second position is determined.
6. The system according to claim 5, characterized in that, Wherein, the first position is located on a first planar feature of an artificial or natural environment, and wherein, the second position is located on a second planar feature of an artificial or natural environment that intersects the first planar feature laterally, the computer processor is further configured to: Based on the determined first and second positions and the determined first and second directions, the intersection point of the first and second planar features is determined in the horizontal plane. The location of the intersection point is known relative to one or more previously measured measurement points referenced in the previous local coordinate system.
7. The system according to any of the preceding claims, characterized in that, in, The computer processor is also used for: When the measuring device has been repositioned on the first axis and / or the second axis, the reset first position and / or reset second position are determined based on the motion data; as well as Based on the first position, the second position, and the reset first position and / or the reset second position, the error in the motion data is determined.
8. The system according to any of the preceding claims, characterized in that, in, The first and second positions are located on one or more previously mapped features.
9. The system according to claim 8, wherein, One or more of the previously mapped features include adjacent interior and / or exterior walls of the building.
10. The system according to any of the preceding claims, characterized in that, in, The computer processor is also configured to determine the orientation of a third axis, optionally wherein the third axis is orthogonal to the first axis and the second axis.
11. The system according to claim 10, characterized in that, in, The computer processor is used to determine the orientation of the third axis based on the orientation of the measuring device at the first position and / or the second position.
12. The system according to any of the preceding claims, characterized in that, in, The computer processor is used to determine the first position, the second position, and / or one or more mapped positions based on the motion data and using dead reckoning.
13. The system according to any of the preceding claims, characterized in that, in, The plurality of sensors include inertial sensors and may optionally form part of an inertial measurement unit.
14. A method for determining the position of a survey point in a local coordinate system using a measuring device, characterized in that, The measuring device includes multiple sensors, which are used to acquire motion data representing the position of the measuring device and optionally its orientation based on the rotation and / or linear motion of the measuring device. The method includes: A position and orientation determiner determines the first position of the measuring device based on motion data acquired when the measuring device is placed at a first location; The position and orientation determiner determines the second position of the measuring device based on motion data acquired when the measuring device is placed at the second location; The first axis of the local coordinate system is determined by the axis locator; wherein the first axis passes through the first position; The axis locator determines the second axis of the local coordinate system; wherein the second axis passes through the second position; and The position and orientation determiner determines one or more mapping positions in the local coordinate system based on motion data acquired when the measuring device is placed at one or more measuring points, and based on the first axis and the second axis.
15. A computer program, when executed on a computer processor, for controlling the computer processor to perform one or more steps of the method according to claim 14.
16. A processing device for determining the position of a survey point in a local coordinate system, characterized in that, include: A receiver is used to receive motion data from a measuring device, the measuring device including a plurality of sensors for acquiring motion data representing the position of the measuring device and optionally its orientation based on the rotation and / or linear motion of the measuring device; as well as Computer processor, used for: The first position of the measuring device is determined based on the received motion data acquired when the measuring device is placed at the first location; The second position of the measuring device is determined based on the received motion data acquired when the measuring device is placed at the second location; Determine a first axis of the local coordinate system; wherein the first axis passes through the first position; Determine a second axis of the local coordinate system; wherein the second axis passes through the second position; and Based on the received motion data acquired when the measuring device is placed at one or more measuring points, and based on the first axis and the second axis, one or more mapping positions are determined in the local coordinate system.
17. A method for determining the position of a survey point in a local coordinate system, characterized in that, include: Motion data is received from a measuring device; wherein the measuring device includes a plurality of sensors, the sensors being used to acquire motion data representing the position of the measuring device and optionally its orientation based on the rotation and / or linear motion of the measuring device; A position and orientation determiner determines the first position of the measuring device based on received motion data acquired when the measuring device is placed at the first location; The position and orientation determiner determines the second position of the measuring device based on received motion data acquired when the measuring device is placed at the second location; The first axis of the local coordinate system is determined by the axis locator; wherein the first axis passes through the first position; The axis locator determines the second axis of the local coordinate system; wherein the second axis passes through the second position; and The position and orientation determiner determines one or more mapping positions in the local coordinate system based on received motion data acquired when the measuring device is placed at one or more measuring points, and based on the first axis and the second axis.
18. A computer program, when executed on a computer processor, for controlling the computer processor to perform one or more steps of the method according to claim 17.