An AR / MR positioning system
Through a positioning system with multiple nodes and multiple reference objects, combined with global and static node systems, the precise positioning of complex scenarios in AR/MR technology is achieved, solving the problems of inaccurate positioning and high performance consumption in the existing technology, and providing solutions for real-time adjustment and accurate judgment.
Patent Information
- Application Number
- CN202210255311.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-10-13
- Publication Date
- 2025-07-04
- Estimated Expiration
- 2041-10-13
AI Technical Summary
In the existing AR/MR technology, the positioning accuracy of complex scenarios is not high, and it cannot be adjusted in real time. The equipment performance consumes a lot, making it difficult to judge the positioning accuracy.
A positioning system with multiple nodes and multiple reference objects is adopted, including real scene units and virtual scene units, and a single object is identified through the camera, and a global node, static node and target point positioning node are used for precise positioning, and combined with the control and adjustment of the node system.
It realizes accurate positioning of complex scenarios, reduces equipment performance consumption, can adjust positioning accuracy in real time, and can accurately judge whether the positioning is accurate.
Smart Images

Figure CN114820998B_ABST
Abstract
Description
[0001] This invention is a divisional application of the application with application number: 2021111909431; application date: October 13, 2021; invention title "A positioning system for AR / MR technology". Technical Field
[0002] The present invention relates to the field of AR / MR spatial computing technology, and particularly to a positioning system for AR / MR technology. Background Art
[0003] Augmented Reality (AR) technology is a technology that calculates the position and angle of a camera image in real time and adds corresponding images, videos, and 3D models. The goal of this technology is to overlay the virtual world on the real world on the screen and interact. This technology was proposed in 1990. With the improvement of the CPU computing power of portable electronic products, it is expected that the uses of augmented reality will become more and more widespread.
[0004] Mixed Reality (MR) technology is a further development of augmented reality technology. In the industry, it is generally considered that the difference from augmented reality is that the display screen and virtual screen of augmented reality are mixed and then displayed on the screen, while the mixed display is to see the real scene through a lens, and the virtual screen is separately displayed on the lens or projected into the user's eyes. This technology presents virtual scene information in the real scene and builds an interactive feedback information loop between the real world, the virtual world, and the user to enhance the realism of the user experience.
[0005] With the continuous development of AR / MR technology, its in-depth application in various fields is becoming more and more common. This technology is very closely combined with the real space. Especially in the scenarios of some industrial energy enterprises, it is necessary to accurately locate the buildings or instrument equipment in the scene. Limited by the current space positioning algorithm, the accuracy of the equipment itself, and environmental influences such as light, the positioning is not accurate, which reduces the rigor of industry applications and limits the development of the AR / MR industry.
[0006] In the prior art, the traditional methods for positioning a scene include the following several:
[0007] First, obtain the corresponding scene grid data by scanning the scene. When developing, import the grid scene data into the 3D engine, and place the virtual information at the corresponding position according to the scene grid data. The disadvantages of this method are: 1. The scanning time is long. 2. There will be jitter caused by periodic automatic calibration. 3. The positioning accuracy is not high. 4. A large amount of device computing power performance is consumed when scanning the scene. 5. It cannot be actively adjusted according to user needs. 6. It is difficult to judge whether the positioning is accurate.
[0008] Second, generate a collider that fits the scene by scanning the scene grid information, emit a ray from the head or hand, and perform coordinate positioning at the contact point between the ray and the collider. The disadvantages of this method are: 1. Long scanning time. 2. Consume a large amount of device computing power performance when scanning the scene. 3. Poor positioning accuracy. 4. Unable to calibrate complex scenes. 5. Difficult to determine whether the positioning is accurate.
[0009] Third, single recognition point positioning. That is, recognize a model or a picture, and then align all contents according to this recognition information. The disadvantages of this method are: 1. Low positioning accuracy. 2. Can only target a single reference object, and the farther other reference objects to be recognized are from this single reference object, the worse the accuracy. 3. Difficult to determine whether the positioning is accurate.
[0010] As Figure 10 shown, there is a device in reality, with four buttons ①, ②, ③, and ④ on it, and the dashed box represents the high-temperature position of the device. Now it is necessary to use a virtual arrow in the AR / MR application to indicate that the button to be operated currently is button ③, and use a virtual high-temperature mark to indicate the high-temperature position. Due to the deviation that may be caused by inaccurate positioning of the traditional method, the indications of the button and the mark are misaligned, just like Figure 10 in, the virtual arrow points to button ④, and the virtual high-temperature mark deviates from the high-temperature position of the device represented by the dashed box. Therefore, it will mislead users.
[0011] How to solve the accurate coordinate positioning in complex scenes is an urgent need in the industry and the market. Summary of the Invention
[0012] The technical problem to be solved by the present invention is to provide a positioning system for AR and MR technologies, which can accurately position the overall complex scene and multiple positioning targets in the scene by using multiple nodes and multiple reference objects in view of the above deficiencies.
[0013] To solve the above problems, the technical solution adopted by the present invention is as follows:
[0014] A positioning system for AR and MR technologies, including a real-world scene unit and a device, the device being an AR or MR device; a 3D engine used to develop device software, with a node system and a virtual scene unit mapped in the same proportion as the real-world scene unit established in the 3D engine, and a camera is provided on the device; the device can recognize a single object by combining with software functions;
[0015] The real-world scene unit includes reference object A and reference object B, and reference object B is an obvious and non-overlapping fixed object with object A in the real-world scene unit; the virtual scene unit includes reference object a and reference object b; reference object a and reference object b are respectively the mappings of reference object A and reference object B in the virtual scene unit;
[0016] The reference object A is used for rough positioning between the virtual scene unit and the real scene unit, and the reference object a is used to compare the rough positioning error between the virtual scene unit and the real scene unit;
[0017] The reference object B is used for precise positioning between the virtual scene unit and the real scene unit; the reference object b is used to compare the precise positioning error between the virtual scene unit and the real scene unit;
[0018] The node system includes global nodes, and the global nodes include a global total node, a global displacement node, and a global rotation node. The parent-child order of the three nodes is: global total node - global displacement node - global rotation node; the reference object a belongs to the sub-object of the global total node in the node system; the reference object b belongs to the sub-object of the global rotation node in the node system.
[0019] Preferably, the node system further includes static nodes for static reference object positioning, and the static nodes belong to the sub-objects of the global rotation node; the static nodes include a static displacement node and a static rotation node, and their parent-child order is: static displacement node - static rotation node.
[0020] Preferably, the node system further includes target point positioning nodes for dynamic reference object positioning; the target point positioning nodes belong to the sub-objects of the global rotation node or belong to the sub-objects of the static rotation node.
[0021] Preferably, the real scene unit further includes a reference object D, and the virtual scene unit further includes a reference object d; the reference object d is the mapping of the reference object D in the virtual scene unit; the reference object D is a fixed object in the real scene unit, and the reference object D is used for precise positioning between the virtual scene unit and the real scene unit; the reference object d is used to compare the precise positioning error between the virtual scene unit and the real scene unit.
[0022] Preferably, the reference object d belongs to the sub-objects of the static rotation node in the node system.
[0023] Preferably, for each node except the global total node and the target point positioning node, a corresponding control should be created.
[0024] A positioning system for AR and MR technologies, and the positioning method of the positioning system includes the following steps:
[0025] S1. Designate the reference object A in the real scene unit as the recognition point of the SDK in the SDK, and use the global total node in the node system as the positioning object of the SDK recognition point;
[0026] S2. The device senses the reference object A in the real - world scene unit through the camera, and the global total node moves to the position of the reference object A;
[0027] S3. Check and adjust the position of the global total node in the node system so that the reference object a coincides with the reference object A;
[0028] S4. Check and adjust the position of the global rotation node in the node system so that the reference object b coincides with the reference object B.
[0029] Preferably, in the step S3, if it is found that the deviation between the reference object a and the reference object A is large, it means that the user's operation is not standardized at this time or there is a problem with the angle when sensing the reference object A; eliminate or reduce this deviation by adjusting the sensing position and making multiple attempts until the relative position of the reference object a and the reference object A no longer changes due to repeated operations, indicating that the deviation that can be eliminated by this step of operation has been completed.
[0030] Preferably, in the step S4, check whether the reference object b coincides with the reference object B; if not, control the options of the global displacement node and the global rotation node in the node system until the reference object b and the reference object B are visually coincident.
[0031] Preferably, the positioning method further includes the following steps:
[0032] S5. Check and adjust the position of the static rotation node in the node system so that the reference object d coincides with the reference object D; if the reference object d does not coincide with the reference object D, control the options of the static object displacement node and the static rotation node in the node system so that the reference object d and the reference object D are visually coincident.
[0033] The present invention adopts the above - mentioned technical solutions. Compared with the prior art, it has the following advantages:
[0034] 1. Reduce the performance consumption in the device during positioning.
[0035] 2. Can accurately position the whole scene.
[0036] 3. Can accurately position multiple positioning targets in the scene.
[0037] 4. Can adjust the positioning accuracy in real - time according to needs during use.
[0038] 5. Can make the virtual information on different targets accurate during position migration.
[0039] 6. Can clearly determine whether the current positioning is accurate.
[0040] The present invention will be described in detail below with reference to the drawings and embodiments. Brief Description of the Drawings
[0041] Figure 1 Schematic diagram of the structure of a positioning system for AR and MR technologies according to the present invention;
[0042] Figure 2 Schematic diagram of the real - world scene unit in the present invention.
[0043] Figure 3 Schematic diagram of the virtual - world scene unit in the present invention;
[0044] Figure 4 Schematic diagram when the device of the present invention senses the virtual - world scene unit;
[0045] Figure 5 Schematic diagram after adjustment by comparing the reference object A in the real - world scene unit and the reference object a in the virtual - world scene unit;
[0046] Figure 6 Schematic diagram after adjustment by comparing the reference object B in the real - world scene unit and the reference object b in the virtual - world scene unit;
[0047] Figure 7 Schematic diagram after adjustment by comparing the reference object D in the real - world scene unit and the reference object d in the virtual - world scene unit;
[0048] Figure 8 Schematic diagram of three interface sliders created for the global displacement node;
[0049] Figure 9 Schematic diagram of three groups of buttons created for the static rotation node;
[0050] Figure 10 Schematic diagram after positioning using the method in the background art;
[0051] Wherein: 1 - reference object A, 2 - reference object B, 3 - reference object D, 4 - reference object a, 5 - reference object b, 6 - reference object d, 7 - reference object E, 8 - reference object e, 9 - high - temperature mark, 10 - first target point, 11 - second target point. Detailed Description of the Invention
[0052] Embodiment
[0053] SDK is an auxiliary development tool with encapsulated functions.
[0054] A complex scenario refers to a real-world scenario where virtual information in an AR / MR application is required to indicate a specific target. For example, when an AR / MR application is in use, if there is a real device in the scenario and a virtual arrow is needed to point to a button on the device to prompt the user to rotate the button clockwise, then this scenario is a complex scenario for that AR / MR application.
[0055] A node is an empty reference object that developers pre-arrange in the scenario during development, or an empty reference object generated by developers through code. These reference objects must have three-dimensional components. It is not necessary but other scripts or components can be attached to the empty reference object without affecting its status as a node.
[0056] As Figure 1 、 Figure 2 、 Figure 3 、 Figure 4 、 Figure 5 、 Figure 6 and Figure 7 As shown jointly by
[0057] 、
[0058] 、
[0059] a positioning system for AR and MR technologies, including a real-world scenario unit and a device. A node system and a virtual scenario unit that is mapped in the same proportion as the real-world scenario unit are established in the device; a camera is provided on the device. The real-world scenario unit includes reference object A1 and reference object B2, and reference object B2 is an obvious fixed object within the real-world scenario unit that does not coincide with object A1. The virtual scenario unit includes reference object a4 and reference object b5; reference object a4 and reference object b5 are respectively the mappings of reference object A1 and reference object B2 in the virtual scenario unit. Reference object A1 is used for rough positioning between the virtual scenario unit and the real-world scenario unit, and reference object a4 is used to compare the rough positioning error between the virtual scenario unit and the real-world scenario unit. Reference object B2 is used for precise positioning between the virtual scenario unit and the real-world scenario unit. Reference object b5 is used to compare the precise positioning error between the virtual scenario unit and the real-world scenario unit. The node system is a system formed by an object and its sub-objects in a 3D engine. The node system includes global nodes, and the global nodes include a global total node, a global displacement node, and a global rotation node. The parent-child order of the three nodes is: global total node - global displacement node - global rotation node. Reference object a4 belongs to the sub-object of the global total node in the node system; reference object b5 belongs to the sub-object of the global rotation node in the node system.The node system also includes static nodes for positioning static reference objects. The static nodes are sub-objects of the global rotation nodes. The static nodes include static displacement nodes and static rotation nodes, and the parent-child order of the two is: static displacement node - static rotation node. The node system also includes target point positioning nodes for positioning dynamic reference objects; the target point positioning nodes are sub-objects of the global rotation nodes or sub-objects of the static rotation nodes.
[0060] The real scene unit also includes a reference object D, and the virtual scene unit also includes a reference object d. In practical applications, according to requirements, the real scene unit may also include multiple reference objects such as reference object E, reference object F, reference object G, etc. arranged in parallel with the reference object D. There are also corresponding reference objects e, reference object f, reference object g, etc. in the virtual scene unit for each reference object in the real scene unit. Preferably, in this embodiment, taking the real scene unit including two objects, reference object D3 and reference object E7, as an example, that is, the virtual scene unit includes reference object d6 and reference object e8. The reference object D3 is a control cabinet, and the reference object E7 is an instrument. The reference object d6 is the mapping of the reference object D3 in the virtual scene unit, and the reference object e8 is the mapping of the reference object e8 in the virtual scene unit. The reference objects D3 and E7 are fixed objects in the real scene unit, and the reference objects D3 and E7 are used for precise positioning between the virtual scene unit and the real scene unit. The reference object d6 is used to compare the precise positioning error between the virtual scene unit and the real scene unit. Both the reference object d6 and the reference object e8 are sub-objects of the static rotation nodes in the node system.
[0061] As Figure 8 and Figure 9 shown, except for the global total node and the target point positioning node in the nodes, corresponding controls need to be created for each of the other nodes. As long as it can control the three-axis movement of the displacement node and the three-axis rotation of the rotation node, in this embodiment, as Figure 8 and Figure 9 shown for control, but it is not limited to this form of control method.
[0062] The present invention achieves the purpose of precise positioning and coordinate synchronization through two scene units and a node system. One of the two scene units is the real scene unit, and the other is a virtual scene unit established in the device with the same-scale mapping as the real scene unit.
[0063] As Figure 2 shown, the real scene unit is an object in the real world. In the real scene unit system, three types of reference objects are involved, namely:
[0064] Reference object A1 is responsible for quickly and roughly positioning the global content. It can be a picture, an object, or a QR code. In this embodiment, the reference object A1 is a picture.
[0065] Reference object B2 is responsible for precisely adjusting the global positioning. It is a fixed object that is obvious in the real site and does not coincide with the reference object A1, such as a sculpture, a device, or a floor tile on the ground. In this embodiment, the number of reference objects B2 is one, and the reference object B2 is a table.
[0066] Reference object D3 is responsible for precisely adjusting specific objects. It is a fixed device, furniture, exhibit, etc. within the real - scene unit. In this embodiment, the number of reference objects D is two. That is, the real - scene unit includes the reference object D3 and the reference object E7, and the virtual - scene unit includes the reference object d6 and the reference object e8. The reference object D3 is a control cabinet, and the reference object E7 is an instrument.
[0067] As Figure 3 shown, the virtual - scene unit is made into a model through a 3D engine and then the model is set in the device. In the virtual - scene unit, there are also three types of reference objects, which are respectively:
[0068] Reference object a4 is responsible for comparing the positioning error with the reference object A1. For example, the reference object a4 can be a three - dimensional coordinate model or a cube model. It belongs to the sub - object of the global total node in the global node of the node system. In this embodiment, preferably, the reference object a4 is a three - dimensional coordinate model.
[0069] Reference object b5 is responsible for comparing the positioning error with the reference object B2. For example, a sculpture model with the same size and shape as the real - world sculpture. It belongs to the sub - object of the global rotation node in the global node of the node system.
[0070] Reference objects d6 and e8 are respectively responsible for comparing the positioning errors with reference objects D3 and E7. Reference objects d6 and e8 are the models corresponding to reference objects D3 and E7 respectively. The feature points and dimensions of the models are exactly the same between reference object d6 and reference object D3, and between reference object e8 and reference object E7. For example, if the reference object D3 in the real - world scenario unit is a TV in reality, then the reference object d6 in the virtual - scenario unit needs to measure the size of the TV and model it exactly according to the size of the TV. If modeling details such as buttons on the TV, the positions of these details must also be exactly the same as those on the TV. Another example, if the reference object D3 is a machine manufactured according to an industrial model, the industrial model can be converted into a model used in a 3D engine. Both reference object d6 and reference object e8 belong to the sub - objects of the static rotation nodes of the static nodes in the node system.
[0071] The target - point positioning node in the node system is responsible for positioning the target points of dynamic objects in the node system. It can belong to the sub - objects of the global rotation node in the global nodes of the node system or the sub - objects of the static rotation node in the static nodes of the node system. As Figure 7 shown, the dynamic object is a high - temperature sign 9. Select the first target point 10 on the reference object d6 and the second target point 11 on the reference object e8. The high - temperature sign 9 may appear at the position of the first target point 10, or at the position of the second target point 11, or move between the first target point 10 and the second target point 11. The target - point positioning node can be used for positioning the high - temperature sign 9 at the two positions of the first target point 10 and the second target point 11.
[0072] In the actual use process, the global nodes in the node system are a necessary condition. The static nodes and the target - point positioning nodes can be selectively used according to needs; if used, the positioning will be more accurate.
[0073] When establishing the positioning system for AR and MR technologies, in the first step, establish the real - world scenario unit and measure the positions and dimensions of each reference object in the real - world scenario unit corresponding to the real world.
[0074] In the second step, in the 3D engine, establish the virtual - scenario unit: create a node system according to the measurement results. Create virtual - scenario units with the same size and feature points as each reference object in the real - world scenario unit, and make the relative relationships between them include distances, rotations, which are consistent with the relative relationships of distances and rotations between each reference object in the real - world scenario unit.
[0075] Step 3: Adjust the node system in the 3D engine. For example, in the real-world scene unit, the reference object A1 is a picture, and in the virtual scene unit, the reference object a4 is a model that can clearly contrast the relative position with the reference object A1. In this embodiment, preferably, the reference object a4 uses a three-dimensional coordinate model. Place the x-axis and z-axis of the three-dimensional coordinate model on two perpendicular sides of the reference object A1 picture respectively. The reference objects in other virtual scene units are modeled completely according to the reference objects in the real-world scene unit. For example, in reality, the reference object B2 is parallel to the reference object A1 and is 10 cm away from the right angle. In the virtual scene unit, the reference object b5 is parallel to the corresponding side in the three-dimensional model and is 10 cm away from the model.
[0076] Step 4: Create nodes of the node system according to the reference objects of the node system. The positions of the nodes of the node system should correspond to the positions of the reference objects in the virtual scene unit, and the reference objects in the virtual scene unit are sub-objects of the corresponding node classes in the corresponding node system. For example, in the virtual scene unit, there is a reference object d6, then a static node of the node system should be created accordingly, and the hierarchy of the reference object d6 should be placed in the child level of the static rotation node of this static node.
[0077] Step 5: Create controls corresponding to the nodes in the node system. Except for the global total node in the node system, corresponding controls should be created for each node. For example, Figure 8 Create three interface sliders for the global displacement node to respectively control the positive and negative movements of the global displacement node on its x, y, and z axes. When dragging the slider on the slider, the global displacement node of the node system will shift in the corresponding direction. Figure 9 Create three groups of buttons for the static rotation node of an object, with two buttons in each group to control the rotation on one axis. Each time a button is pressed, the static rotation node will rotate according to the corresponding axis.
[0078] Step 6: Set the reference object A1 in the SDK. There is a single recognition point positioning method in the SDK of AR or MR. The single recognition point refers to an image, a QR code, or a model. When the device observes this recognition point in reality, it will move the specified positioning object in the 3D engine to the position of this recognition point. The positioning method is a function inherent in the SDK. Designate the reference object A1 as the recognition point of the SDK in the SDK. Designate the global total node in the node system as the positioning object of the SDK recognition point.
[0079] As Figure 4 、 Figure 5 、 Figure 6 and Figure 7 collectively shown, the positioning method of the positioning system for AR and MR technologies includes the following steps:
[0080] S1, in the SDK, specify the reference object A1 in the real scene unit as the SDK identification point, and use the global total node in the node system as the positioning object of the SDK identification point.
[0081] S2, the reference object A1 in the real scene unit is sensed by the device's camera, and the global total node moves to the position of the reference object A1. Let the device sense and refer to the reference object A1 in the real scene unit. For example, in this embodiment, the reference object A1 is a picture, so let the device's camera aim at the reference object A1. When the device senses the reference object A1 in the real scene unit, the global total node will move to the position of the node.
[0082] S3, check and adjust the position of the global total node in the node system so that the reference object a4 coincides with the reference object A1.
[0083] S4, checking and adjusting the position of the global rotation node in the node system so that the reference object b5 coincides with the reference object B2.
[0084] S5, check and adjust the positions of the static rotation nodes in the node system so that the reference object d6 coincides with the reference object D3, and the reference object E7 coincides with the reference object e8; if the reference object d6 does not coincide with the reference object D3, and the reference object E7 does not coincide with the reference object e8, by controlling the options of the static object displacement node and the static rotation node in the node system, the reference object d6 coincides with the reference object D3, and the reference object E7 coincides with the reference object e8.
[0085] During specific operations, in S3, it is necessary to check and adjust the position of the global total node in the node system. If it is found that the reference object a4 deviates greatly from the reference object A1, it means that the user is not operating in a standardized manner at this time or there is a problem with the angle when perceiving the reference object A1. This deviation is eliminated or reduced by adjusting the perceived position and multiple attempts until the reference object a4 coincides with the reference object A1. That is, due to the inappropriate angle when perceiving the first type of reference object in the real scene unit, the user's irregular operation, and the high performance pressure of the equipment at that time, the initial positioning may be biased. When the global total node in the node system is positioned to the global node position in the real scene unit, if it is found that the reference object a4 deviates greatly from the theoretical position when set, it is equivalent to prompting the user that the operation is not standardized at this time or there is a problem with the angle when perceiving the global node in the real scene unit. This problem can be eliminated or reduced by adjusting the perceived position and multiple attempts. This deviation is an operational error and should be eliminated.
[0086] For example Figure 4In the three-dimensional coordinate model, the x and z axes are significantly not in the positions where they should be theoretically located, and the deviation is large. Since there is the three-dimensional model of the reference object a4, it can be judged that there are obvious problems at this time. By perceiving the pictures on the ground multiple times, the errors caused by problems such as the perception angle can be eliminated. As shown in Figure 5, there is a significant improvement. If the reference object a4 coincides with the reference object A1 or has a small error after multiple perceptions, and the results of each perception are the same, it is considered that there is a certain systematic error in the system itself, and this systematic error cannot be eliminated through multiple perceptions. We can consider that the reference object a4 coincides with the reference object A1. At this time, the errors existing in the real scene unit and the virtual scene unit need to be adjusted through each node in the coordinate system.
[0087] In S4, view and adjust the position of the global rotation node in the node system. That is, check whether the reference object b5 coincides with the reference object B2; if not, control the options of the global displacement node and the global rotation node in the node system until the reference object b5 coincides with the reference object B2.
[0088] Due to the poor quality of the first type of reference object in the real scene unit, such as the picture clarity and the uneven paper; or the limitations of the algorithm in the SDK, light and other problems. It cannot be simply corrected through standard operations or multiple operations. It is necessary to identify whether there are similar deviations and reduce this deviation through fine-tuning.
[0089] After adjusting the global total node in the node system, check whether the static node in the node system coincides with the static node in the real scene unit. If not, it means that there are deviations caused by the reasons mentioned in the principle. At this time, adjust the options of the global displacement node and the global rotation node in the control node system to make the reference object b5 coincide with the reference object B2.
[0090] For example, in Figure 5, it is difficult to find the deviation through the comparison between the reference object b5 and the reference object B2 at the deviation position. Since the total node in the node system is equivalent to the center of the circle of the node system, the farther away other reference objects are, the more obvious it will be. At this time, the accuracy of positioning can be judged according to the table. After adjustment, the effect of Figure 6 can be achieved, and the overall positioning is already relatively precise. However, the calibration and operation of the human eye still cannot completely avoid errors, and this error is considered an acceptable error. The errors of other farther objects will be more obvious, and the overall positioning adjustment cannot be done anymore. Independent precise adjustment is required later.
[0091] In S5, view and adjust the position of the static rotation node in the node system. When positioning, the greater the deviation that may occur at the position farther away from the global node of the positioning center. Because the farther away from the center, the larger the radius, and the greater the displacement deviation corresponding to the angle.
[0092] After adjusting the global rotation node in the node system, check whether the reference object d6 coincides with the reference object D3 and whether the reference object e8 coincides with the reference object E7; if there is non - coincidence, adjust the options of the static object displacement node and the static rotation node in the control node system to make the target class positioning node in the node system coincide with the target point in the real - world scene unit. Such as Figure 7 , thus all virtual information can accurately indicate the positions in the real - world scene.
[0093] Finally, it should be noted that the above - mentioned are only the preferred embodiments of the present invention and are not used to limit the present invention. Although the present invention has been described in detail with reference to the foregoing embodiments, for those skilled in the art, they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements for some of the technical features. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present invention shall be included within the protection scope of the present invention.
Claims
1. An AR / MR positioning system, comprising a real-world scenario unit and a device, characterized in that: A node system is established within the device. The node system includes a global node and static nodes for static reference object positioning. The global node includes a global master node, a global displacement node, and a global rotation node. The parent-child order of the three nodes is: global master node - global displacement node - global rotation node. The static nodes are sub-objects of the global rotation node. The static nodes include a static displacement node and a static rotation node. The parent-child order of the two is: static displacement node - static rotation node. A virtual scene unit that is mapped proportionally to the real-world scene unit is established within the device, and a camera is provided on the device. The real-world scene unit includes reference object A(1), reference object B(2), and reference object D(3). The virtual scene unit includes reference object a(4), reference object b(5), and reference object d(6). Reference object a(4), reference object b(5), and reference object d(6) are the mappings of reference object A(1), reference object B(2), and reference object D(3) in the virtual scene unit respectively. When establishing the positioning system for AR and MR technologies, a real-world scene unit is established, and the positions and sizes of each reference object in the real-world scene unit in reality are measured. In the 3D engine, a virtual scene unit is established: according to the measurement results, a node system is created, a virtual scene unit with the same size and feature points as each reference object in the real-world scene unit is created, and the relative relationships between them, including distance and rotation, are made to be consistent with the relative relationships of distance and rotation between each reference object in the real-world scene unit.
2. The AR / MR positioning system according to claim 1, wherein: The node system further includes a target point positioning node for dynamic reference object positioning. The target point positioning node is a sub-object of the global rotation node or a sub-object of the static rotation node.
3. The AR / MR positioning system according to claim 2, wherein: For each node other than the global master node and the target point positioning node, a corresponding control is to be created.
4. The AR / MR positioning system according to claim 3, wherein: Reference object a(4) is a sub-object of the global master node in the node system. Reference object b(5) is a sub-object of the global rotation node in the node system, and reference object d(6) is a sub-object of the static rotation node in the node system.
5. The AR / MR positioning system according to claim 4, wherein: The positioning method of this positioning system includes the following steps: S1. In the SDK, designate reference object A(1) in the real-world scene unit as the recognition point of the SDK, and use the global master node in the node system as the positioning object of the SDK recognition point. S2. The device senses reference object A(1) in the real-world scene unit through the camera, and the global master node moves to the position of reference object A(1). S3. Check and adjust the position of the global master node in the node system so that reference object a(4) coincides with reference object A(1). S4. Check and adjust the position of the global rotation node in the node system so that reference object b(5) coincides with reference object B(2).
6. The AR / MR positioning system according to claim 5, wherein: In the said S3, if it is found that the reference object a (4) has a large deviation from the reference object A (1), it indicates that the user's operation is not standardized at this time or there is a problem with the angle when perceiving the reference object A (1); this deviation is eliminated or reduced by adjusting the perception position and making multiple attempts until the relative position of the visual reference object a (4) and the reference object A (1) no longer changes due to repeated operations, indicating that the deviation caused by human factors has been eliminated in this step of the operation.
7. The AR / MR positioning system according to claim 5, wherein: In the said S4, check whether the reference object b (5) coincides with the reference object B (2); if they do not coincide, control the options of the global displacement node and the global rotation node in the node system until the visual reference object b (5) coincides with the reference object B (2).
8. The AR / MR positioning system according to claim 5, wherein: The said positioning method further includes the following steps: S5, check and adjust the position of the static rotation node in the node system so that the reference object d (6) coincides with the reference object D (3); if the reference object d (6) does not coincide with the reference object D (3), control the options of the static object displacement node and the static rotation node in the node system so that the reference object d (6) coincides with the reference object D (3).
Citation Information
Patent Citations
Method and device for positioning target object
CN102855629A
Overlapped method for virtual object in AR glasses
CN106875493A