Positioning method for smart glasses in large space, head-mounted display device, and storage medium

WO2026175151A1PCT designated stage Publication Date: 2026-08-27LUMIERA LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2026/076574
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2025-02-19
Filing Date
2026-02-02
Publication Date
2026-08-27

Smart Images

  • Figure CN2026076574_27082026_PF_FP_ABST
    Figure CN2026076574_27082026_PF_FP_ABST
Patent Text Reader

Abstract

A positioning method for smart glasses in a large space, a head-mounted display device, and a storage medium, relating to the technical field of metaverse space computing. The positioning method is applied to head-mounted display devices of players in a large multi-person interaction space. A plurality of different texture pictures are arranged on the bottom or ceiling of the large space; an image is collected by means of any camera on the smart glasses; a texture picture is recognized from the image collected by a camera T; picture information corresponding to the texture picture is acquired; and the world coordinates of the camera T can be obtained by means of geometric calculation. The positioning method can be implemented on a local head-mounted display device, avoids the process of server learning or image reasoning and the delay of returning coordinate information, and the error caused by a positioning sensor, and also avoids the error problem caused by texture pictures that are far away from a large space site or blocked.
Need to check novelty before this filing date? Find Prior Art

Description

Positioning methods, head-mounted display devices, and storage media for large-space smart glasses Technical Field

[0001] This invention pertains to the field of metaverse space computing technology, specifically relating to a positioning method, head-mounted display device, and storage medium for large-space smart glasses. Background Technology

[0002] Extended Reality (XR) smart glasses (head-mounted displays) are divided into two categories: Augmented Reality (AR) and Virtual Reality (VR). AR glasses use Optical See-Through (OST) lenses to allow users to see their surroundings. VR glasses are purely virtual and do not allow users to see the outside environment. In recent years, Mixed Reality (MR) glasses have emerged, which allow users to see their surroundings through a camera. This is achieved through Video See-Through (VST), also known as Visual Pass-Through or camera-based perspective. VST glasses can use the camera on the VST itself or other cameras on the glasses to perform positioning calculations. OST glasses originally did not have cameras, but some advanced OST glasses now include cameras to calculate the surrounding space. Many OST or AR glasses also call themselves Mixed Reality (MR) glasses because they have cameras that can calculate the environmental space.

[0003] In recent years, the metaverse industry has seen the rise of large-space applications. Large-space applications refer to applications where multiple people walk in the same space through smart glasses, can view virtual or real scenes, and can interact with real or virtual objects, virtual characters, and other real players. Large-space technology refers to the technology that uses spatial positioning methods to create a virtual and real mixed environment that allows for the rendering and interaction of multiple people and objects. Because many players are using smart glasses at the same time in the same space (also known as "world coordinates"), the local position of each player's glasses (also known as "personal coordinates") and their relative position and direction with respect to the world position are the core of large-space technology. Incorrect calculation of the position of the large-space glasses can lead to the following problems: (1) the virtual scene rendered in the glasses will drift or the position of objects will deviate too much; (2) the positional offset between players will cause multiple people to collide or not make proper contact; (3) the result of interaction between players and virtual objects will be incorrect due to positional calculation errors; (4) when catching or shooting, the shooting or receiving direction or position will be incorrect due to inaccurate position; (5) players will see each other's height incorrectly, leading to height illusions, and other application errors caused by the incorrect position of each player's glasses.

[0004] The main methods for calculating the position of glasses on the market are point cloud vision and SIFT calculation methods. The basic logic of point cloud and SIFT is to train a visual neural network or machine learning system using unique textures, markers, or graphics (hereinafter referred to as "texture images") on walls, ceilings, and the ground. All texture images within the space must be unique; otherwise, the trained neural network or machine learning system will provide incorrect or repetitive world positions during inference. Because point cloud and SIFT require training, it is inevitable that the texture images captured by the glasses need to be transmitted to the server in real time for inference, and then the inference results are sent back to the head-mounted display device. This results in a delay in positional information, which is a fatal flaw in large-space applications, especially in fast-paced competitive applications. This same approach also leads to long training times and wasted time on error correction during application development.

[0005] Furthermore, in large-space applications where multiple people use the same space simultaneously, if texture images are identified using the glasses' front-facing camera, it's possible that other players might obstruct the view, preventing the accurate capture of texture images of opposite walls. The greater the distance, the greater the error in the calculated position. Therefore, when the glasses' exact location cannot be accurately determined, they must rely on the device's own gyroscope, Bluetooth positioning, TOF positioning, laser positioning, or other SLAM positioning technologies. These auxiliary technologies have inherent errors and drift issues, and the device requires additional positioning sensors, undoubtedly increasing the cost, computing power, weight, and energy consumption of the device or system.

[0006] Currently, most large-space applications use a method where multiple head-mounted displays share the same server. Each head-mounted display uploads the texture image seen by its personal device to the server. The server calculates the world position relationship of all head-mounted displays and distributes it, so that each head-mounted display can know the position of other head-mounted displays in the same world space to achieve interaction. This requires large-space applications to deploy servers and handle the latency of inference position transmission back to each device. Summary of the Invention

[0007] The purpose of this invention is to provide a positioning method, head-mounted display device, and storage medium for large-space smart glasses, applicable to large-space metaverse application scenarios with multi-player interaction, especially suitable for scenarios where the head-mounted displays of each player in a large space can interact directly without training and inference through a central server. By acquiring image information of texture images within the large space, the world position of the player's own glasses can be quickly calculated, and the player can simultaneously broadcast their world position and game status data to other players in the same space, thereby supporting the need for rapid response to the position information of each player in large-space applications.

[0008] This invention discloses a positioning method for smart glasses in a large space. Several different texture images are arranged on the bottom or ceiling of the large space. Images are captured by any camera on the smart glasses. The texture image is identified from the image captured by camera T, and the image information corresponding to the texture image is obtained. The image information can be directly obtained by parsing the texture image, or the ID of the texture image can be obtained. The image information is then matched with the ID in a lookup table stored locally on the smart glasses.

[0009] The image information includes the world position (XYZ) and graphic size (m, n); the texture image has three corner anchor points (A, m, n) forming an included angle nAm, where corner anchor point A is the vertex of the included angle nAm. The world position of corner anchor point A is defined as the world position (XYZ) of this image. The line An connecting A to corner anchor point n is the positive direction of the Y-axis, and the line Am connecting A to corner anchor point m is the positive direction of the X-axis. The length of line nA in the real world is n, and the length of line Am in the real world is m; if the included angle nAm is not 90°... 0 The image information also includes the angle nAm, which is used to convert the X-axis and Y-axis.

[0010] Based on the image information, the world position of corner anchor point A is A(X). A ,Y A Z A ), the world position of the corner anchor point m (X) m ,Y m, Z m ) and the world position n(X) of the corner anchor point n n ,Y n Z n ), the X m =X A +m, Y m =Y A X n =X A Y n = Y A +n, Z m =Z n =Z A ;

[0011] The pixel position P corresponding to the aforementioned corner anchor point mAn is obtained from the acquired image. A (X PA ,Y PA ), P m (X Pm ,Y Pm ) and P n (X Pn ,Y Pn );

[0012] The pixel position P perpendicular to the ground or ceiling in the image captured by the camera is obtained through the nine-axis geomagnetic chip of the smart glasses. O (X Po ,Y Po );

[0013] Let H be the line connecting camera T perpendicular to the normal of the bottom surface or ceiling and the line connecting camera T to the corner anchor point A. A The angle formed is The line H connecting the camera T perpendicular to the bottom surface or ceiling and the camera T to the corner anchor point m. m The angle formed is The line H connecting the normal of camera T perpendicular to the bottom surface or ceiling and the line from camera T to the corner anchor point n. n The angle formed is The world position (X) of camera T can be obtained through geometric calculations. T ,Y T Z T ).

[0014] The world position (X) of camera T can be obtained through geometric calculation. T ,Y T Z T Assuming the texture image in the acquired image is undistorted or has been corrected for distortion, and given the camera's field of view (FOV) and the total number of pixels on the screen's X-axis (X),... D The number of pixels per degree (PPD) is obtained as follows: PPD = X D / FOV; The specific calculation steps are as follows:

[0015] Step 1. Let Am be the line connecting corner anchor point A to corner anchor point m, and let P be the X-axis of the world space. A and P m The slope S of the line Am was calculated. X Then, passing through point P X Point P A The X-axis can be expressed using the linear formula as follows:

[0016] Y=S X X+B X (6);

[0017] Pixel position P A or P m Substituting into formula (6) yields B X ;

[0018] Because of line P O P X Perpendicular to the X-axis, pixel position P X Let P be the line O P XThe intersection with the X-axis is perpendicular to line P. A P m straight line P O P X The slope is -S X Expressed as a formula:

[0019] Y=-S X X+B XV (7);

[0020] Pixel position P O (X Po ,Y Po Substituting into formula (7), we get B. XV Thus, we can find the straight line P. O P X The pixel position of the intersection with the X-axis P X (X PX ,Y PX );

[0021] Let An be the line connecting corner anchor point A to corner anchor point n, and let it be the Y-axis of world space. Based on pixel position P... A and P n The slope S of the line An is calculated. Y Then, passing through point P Y Point P A The straight line can be expressed by the formula:

[0022] Y=S Y X+B Y (8);

[0023] Pixel position P A or P n Substituting into formula (8) yields B Y;

[0024] Because of line P O P Y Perpendicular to the Y-axis, pixel position P Y Let P be the line O P Y The intersection with the Y-axis is perpendicular to line P. A P n straight line P O P Y The slope is -S Y Expressed as a formula:

[0025] Y=-S Y X+B YV (9);

[0026] Pixel position P O (X Po,Y Po Substituting into formula (9), we get B. YV Thus, we can find the straight line P. O P Y The pixel position P at the intersection with the Y-axis Y (X PY ,Y PY );

[0027] Step 2. Calculate the pixel distance P using the Pythagorean theorem. X P A and P X P m ,but

[0028] =P X P A / PPD

[0029] =P X P m / PPD(3);

[0030] It is calculated using the following formula:

[0031] (1);

[0032] or (2);

[0033] The pixel distance P was calculated using the Pythagorean theorem. Y P A and P Y P m ,but

[0034] =P Y P A / PPD

[0035] =P Y P n / PPD(3);

[0036] It is calculated using the following formula:

[0037] (1);

[0038] or (2);

[0039] Step 3. Combine the two Z values ​​obtained above. T After calculating the mean, the world position (X) of camera T is obtained. T ,YT Z T ).

[0040] The world position (X) of camera T can be obtained through geometric calculation. T ,Y T Z T Assuming the texture image in the acquired image is distorted due to the camera angle, calculate the angles formed by the normal of the camera T perpendicular to the bottom or ceiling and the lines connecting the camera T to the three corner anchor points (A, m, n). , , ):

[0041] The three corner anchor points are all square positioning images. The angle of the upper half of the positioning pattern for each corner anchor point is measured, and the largest angle is selected as the [angle not specified]. The angle formed by the line perpendicular to the ground or ceiling from camera T and the line connecting camera T to the corner anchor point is:

[0042] (4);

[0043] Formula (4) yields the angle formed by the line connecting the camera T perpendicular to the ground or ceiling and the line connecting the camera T to the three corner anchor points (A, m, n). , , );

[0044] First, using the Pythagorean theorem, we obtain the following six formulas:

[0045] ;

[0046] Then, by combining the above six formulas, we can obtain the world position T(X) of the glasses. T ,Y T Z T The function formula for ) is:

[0047] (5).

[0048] The world positions of multiple cameras T are averaged or calculated based on the known positional relationships of the multiple cameras to obtain the world position of the head-mounted display / smart glasses; the player's head-mounted display / smart glasses broadcast their own world position along with the current game status data to other players in the large space in real time.

[0049] The bottom surface of the large space refers to the floor, steps, walls, or tabletop of the large space.

[0050] The three corner anchor points of the texture image can be positioning patterns without information or independent small texture images. The image information corresponding to the small texture image includes the world position of the small texture image itself and the size of the small texture image.

[0051] The image information of the texture image also includes the name of the spatial region used to distinguish the virtual space in the large space.

[0052] The image information of the texture image also includes: distance information p or q to adjacent texture images, that is, the distance p to adjacent texture images in the positive X-axis direction and the distance q to adjacent texture images in the positive Y-axis direction.

[0053] A head-mounted display device, the head-mounted display device including a camera, a display, a memory and a processor;

[0054] The camera is connected to the processor and is used to scan the user's real-world environment.

[0055] The display is connected to the processor and is used to display the processor's output.

[0056] This memory is connected to the processor and is used to store computer programs;

[0057] The processor is used to execute the computer program to implement the above-described positioning method for large-space smart glasses.

[0058] A computer-readable storage medium storing a computer program that, when executed by a processor, implements the aforementioned positioning method for large-space smart glasses.

[0059] This invention uses simple visual computation to find and identify image information (such as a mature QR code) from images captured by cameras in any direction on smart glasses. This image information includes the image's world position (XYZ) and dimensions (m, n). Based on the identified image information, the player's own glasses position is determined, and the player broadcasts their world position and game status data to other players in the same space, thereby obtaining the position and status information of other players' head-mounted displays. This calculation process can be quickly implemented on the local head-mounted display, avoiding the latency of image training, image inference transmission, and position information return to the server, as well as errors caused by positioning sensors and errors due to distant or occluded texture images. This invention not only reduces the need for servers but also significantly reduces the investment cost of large spaces, requiring only the computing power of the smart glasses themselves to achieve multi-player interactive scenarios. Attached Figure Description

[0060] Figure 1 is a texture image of Example 1 in this invention;

[0061] Figure 2 is a texture image of Example 2 of the present invention;

[0062] Figure 3 is a schematic diagram of the distance information between adjacent QR code images as described in this invention;

[0063] Figure 4 shows the calculation of the camera position T (X) based on a one-dimensional spatial QR code in this invention. T Z T A trigonometric calculation diagram;

[0064] Figure 5 shows an image of an undeformed QR code in this invention;

[0065] Figure 6 shows the angle formed by the center normal of the camera and the vertical projection line of the QR code in this invention. A schematic diagram illustrating the changes;

[0066] Figure 7 is a schematic diagram showing the changes in the positioning pattern of the QR code corner anchor point A when viewed from different angles through a camera in this invention;

[0067] Figure 8 shows the QR code as seen at four different pitch angles;

[0068] Figure 9 shows an image of a deformed QR code in this invention;

[0069] Figure 10 is a schematic diagram of the relationship between the camera T and the texture image from a top view according to the present invention;

[0070] Figure 11 is a schematic diagram of the relationship between the camera T and the corner anchor point A from the side view of the present invention;

[0071] Figure 12 is a functional block diagram of a head-mounted display device according to the present invention. Embodiments of the present invention

[0072] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.

[0073] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or server that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or devices.

[0074] In this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or solution described as "exemplary" or "for example" in this application should not be construed as being better or more advantageous than other embodiments or solutions. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0075] Explanation of the principle of this invention:

[0076] (1) Texture images are set on the floor, steps, tabletops and / or ceiling of a large space. Each texture image is different. The images are captured by the camera in the smart glasses and the texture images are identified by simple visual computing:

[0077] Since players need to walk in large spaces while wearing smart glasses, the floor must be flat and safe to walk on, preventing falls. Existing smart glasses typically have multiple cameras mounted on the frame. To address the issues of texture images being obscured by other players due to distance or the need to look down or up, resulting in a poor user experience, this invention proposes printing, pasting, or projecting texture images onto the floor, steps, tabletops, and / or ceiling. Images are captured using cameras in any direction within the smart glasses. Simple visual computation allows the identification of texture images and the recognition of image information contained within them. Alternatively, the image information, including the world position (XYZ) and dimensions (m, n) of the image, can be retrieved from a lookup table stored locally in the smart glasses using the texture image's ID.

[0078] The texture image information may also include spatial region names to distinguish virtual spaces within a larger space, allowing players to interact with virtual locations in different virtual spaces from the same physical location. When players are in different virtual spaces, they can use the same texture image to interact with different virtual scenes. The larger space can also be composed of many subspaces, which can overlap and interact with each other. Overlapping virtual areas allow players to seamlessly move between spaces, avoiding gaps caused by non-intersections between subspaces.

[0079] The image information of the texture image also includes distance information p or q to adjacent texture images. As shown in Figure 3, let the distance between two adjacent texture images be p or q, that is, the distance p to the texture image adjacent in the positive X-axis direction and the distance q to the texture image adjacent in the positive Y-axis direction. When the smart glasses simultaneously recognize three texture images, they obtain the world position (XYZ) and image size (m,n) of each of the three texture images, as well as the distance p or q between each of the three texture images and two adjacent texture images. This forms a small matrix containing the world position, image size (m,n), distance p between two texture images along the X-axis, and distance q between two texture images along the Y-axis. Similarly, the glasses position can be calculated multiple times in multiple dimensions using texture images at fixed distances throughout the entire large space or its subspace. If there is a discrepancy between the positions calculated from two sets of data, the average of the two values ​​is the more accurate glasses position. Therefore, by combining the calculation with the distance between adjacent texture images, the calculation discrepancy can be corrected, resulting in a more accurate glasses position.

[0080] This invention can also be used to vertically paste, print, or project texture images onto walls or the ground. Vertical texture images can be modified by changing the An direction to the Z axis and setting the Am direction to the X or Y axis. If the Am direction is a two-dimensional XY direction, the texture image should have an Am axis direction added for converting the X and Y axes.

[0081] (2) Obtaining location information through texture images is an existing technology in the field of positioning. Several examples of texture images are given below:

[0082] A. The texture image in Example 1 is a QR code image, as shown in Figure 1. Three of the four corners (A, m, n) of the QR code have a position detection pattern without information. This invention calls this position detection pattern a corner anchor. Assuming the QR code is square, connect adjacent corner anchors YA or AX in pairs. The three corner anchors form a 90-degree angle nAm, where corner anchor A is the vertex of the angle nAm. Define the world position of corner anchor A as the world position (XYZ) corresponding to this texture image. The line connecting A to corner anchor n is the positive direction of the Y-axis, and the line connecting A to corner anchor m is the positive direction of the X-axis. That is to say, the information surface of the QR code is the positive surface of the X-axis and Y-axis. The length of the line nA in the real world is n, and the length of the line Am in the real world is m. If the QR code is square, then m=n.

[0083] B. The texture image in Example 2 is a QR code image, as shown in Figure 2. The three corner anchor points of the QR code are also independent QR code images. The image information parsed from the large and small QR codes shows that the position information (XYZ) of the three smaller QR codes are different. The position information of the A-corner anchor point of the large QR code is the same as the position information of the smaller QR code appearing at the A-corner anchor point. The image dimensions (m,n) of the large and small QR codes are different, with the (m,n) of the large QR code being larger than that of the small QR code. The position information of the smaller QR code at the n-corner anchor point of the large QR code is equal to the Y-axis position at the A-corner anchor point. A At a distance of n, the position information of the small QR code at the m-corner anchor point of the large QR code is equal to the X-axis position information at the A-corner anchor point. A Add a distance of m. If the player is too close to the texture image, and the captured image does not contain a complete large QR code, making it impossible to parse the large QR code information, then any corner anchor point can be found in the image, and the small QR code corresponding to the corner anchor point can be directly parsed to obtain the image information corresponding to the small QR code. When a complete large QR code can be recognized in the captured image, the image information corresponding to the large QR code is directly obtained. In this way, regardless of whether the texture image is at a distance or close, the image information can be parsed through both large and small QR codes, ensuring that the calculated glasses position is more accurate or faster.

[0084] C. The texture image has multiple patterns, and the information content of the patterns can be pre-bound. The image information recorded by the pattern arrangement can be obtained.

[0085] (3) Smart glasses generally have multiple cameras for calculating spatial distance. In addition to obtaining the position of a single camera on the glasses, the position (XYZ) of the center point of the two cameras on the glasses can be calculated by calculating the distance and angle between the single camera and a certain texture image, and then combining the distance between the two cameras.

[0086] Since multiple cameras calculate their own positions independently, even if different cameras see different QR codes, the calculated world position of the glasses should theoretically be the same. However, in reality, due to various errors, the calculation results are usually different. Therefore, averaging the positions of multiple cameras is more accurate. If a pair of glasses has two cameras, each capturing two QR codes, there are four averages. If it sees three QR codes, there are six averages. The more QR codes seen, the more accurate the average world position calculated by the multiple cameras. Because each camera's world position is different, when averaging the world positions calculated by multiple cameras, they should first be converted to their common position on the smart glasses (e.g., the center of the smart glasses) before averaging the results.

[0087] (4) The world position of the smart glasses in a large space is calculated based on the image information of the texture image:

[0088] A. Calculating the world position T(X) of the smart glasses based on a one-dimensional space QR code. T Z T The method:

[0089] Assume a one-dimensional QR code has only an X-axis and no Y-axis. The two ends of the QR code are corner anchor points A and m. Let Am, the line connecting the two corner anchor points, be the X-axis. The position of corner anchor point A (X...) is known. A Given Z=0 and the length m of the connecting line Am, then As shown in Figure 4, the vertical projection point of camera T on the X-axis is X. T The line TA connecting camera T and corner anchor point A forms an angle with the vertical projection of camera T onto the X-axis. The line Tm connecting camera T and corner anchor point m forms an angle with the vertical projection of camera T onto the X-axis. The world position (X) of the two-dimensional smart glasses is derived through triangulation. T Z T The formula for calculating ) is:

[0090] (1)

[0091] or (2)

[0092] The included angle and included angle Obtained through the following methods:

[0093] Based on the field of view (FOV) and the total number of pixels on the screen's X-axis in the smart glasses camera specifications... DThis yields the number of pixels per degree (PPD), i.e., PPD = X. D / FOV; Assuming FOV = 100º, X D =2000 pixels, then 2000 pixels divided by 100 degrees equals 20 PPD, or 20 pixels per degree. Given that the pixel position of corner anchor point A on the image is P... A The pixel position of corner anchor point m is P m ,but:

[0094]

[0095] (3);

[0096] If the camera is perpendicular to the ground, let P0 be the pixel perpendicular to the ground; if the camera is perpendicular to the ceiling, let P0 be the pixel perpendicular to the ceiling. The value of P0 can be obtained through the sensor of the smart glasses (such as a nine-axis geomagnetic chip).

[0097] If a QR code in a one-dimensional space only has a Y-axis and no X-axis, then X in the above formulas (1), (2), and (3) can be replaced with Y.

[0098] B. The world position T(X) of the smart glasses is calculated based on the undistorted QR code. T ,Y T Z T The method:

[0099] As shown in Figure 5, assuming the image captured by the camera is 20x20 pixels and the camera's field of view (FOV) is 20 degrees, then there is only one pixel (1 PPD) per degree, and the center pixel position is P. C Furthermore, the camera is not pointing vertically downwards but at an angle, and the pixel position perpendicular to the ground is P. O The QR code image information includes the world position of corner anchor point A in the large space and the image size (m, n), that is, the distance between corner anchor point A and the X-axis corner anchor point m is m, and the distance between corner anchor point A and the Y-axis corner anchor point n is n. The world position of the glasses (X...) is then calculated. T ,Y T Z T That is, to solve for the pixel position P perpendicular to the ground. O Relative to the world position of corner anchor point A:

[0100] Let the world position of the corner anchor point A be A(X). A ,Y A The corresponding pixel position in the acquired image is P. A (X PA ,Y PA The world position of the corner anchor point m is m(X).m ,Y m The corresponding pixel position in the acquired image is P. m (X Pm ,Y Pm ); The world position of the corner anchor point n is n(X n ,Y n The corresponding pixel position in the acquired image is P. n (X Pn ,Y Pn The pixel position perpendicular to the ground or ceiling on the acquired image is obtained through the nine-axis geomagnetic chip of the smart glasses. O (X Po ,Y Po The center pixel position of the captured image is P, as determined from the specifications of the glasses camera. C (X Pc ,Y Pc );

[0101] Assume the QR code image information includes: the world position W of corner anchor point A. A =(1400,1000), m=n=300 mm; then the world position of the corner anchor point m is m=(1700,1000) and the world position of the corner anchor point n is n=(1400,1300). The m and n in the world position only affect the X-axis or Y-axis.

[0102] As shown in Figure 5, P C =(10,10), P O =(02,08), P A =(14,10), P m =(17,13), P n =(11,13), using the Pythagorean theorem, we get m=n=4.24 pixels. In the actual captured image, the QR code is distorted due to perspective, no longer a square but a trapezoid. For simplicity, we assume the camera T is at a high position, so the QR code seen is basically undistorted.

[0103] Step 1: Locate pixel position P X The X-axis of the world space can then be calculated using formula (1). T Location:

[0104] Given that the line Am connecting angular anchor point A to angular anchor point m is the positive direction of the world space X-axis, P A =(14,10), P m =(17,13), its slope S X =3 / 3=1, then the line passing through point P X The formula for the line segment from point A is: Y = S X X+BX According to P A and P m B is calculated from two points. X =-4, then the X-axis in world space on the image can be expressed by the formula: Y P =X P -4, line P O P X The intersection point perpendicular to the X-axis of world space is the pixel position P. X Find P X (X PX ,Y PX ):

[0105] X PX =(Y PO +S X X PO -B) / 2S X

[0106] Y PX =S X X PX +B X

[0107] X PX =(8+2+4) / 2=7, Y PX =S X X PX +B X =7-4=3, P X =(7,3), which is consistent with the position in Figure 5.

[0108] Step 2: According to formula (1), we need to first calculate the distance P between two pixels on the X-axis of the world space. X P A and P X P m Using the Pythagorean theorem, we can calculate: P X (7,3)P A (14,10) distance = 9.90 pixels, P X (7,3)P m The distance between (17,13) and (14.14) pixels is 14.14 pixels. Therefore:

[0109] =P X (7,3)P A (14,10) distance / PPD = 9.90 degrees;

[0110] =P X (7,3)P m (17,13) distance / PPD = 14.14 degrees;

[0111] Formula (1): X T =(X m Tan -X A Tan ) / ( Tan -Tan = 723 mm;

[0112] Formula (2): Z T =(X A -X m ) / (Tan -Tan = 3876 mm;

[0113] Step 3: Locate pixel position P in the image Y The Y-axis of world space can then be calculated using formula (3). T Location:

[0114] Given that the line An connecting angular anchor point A to angular anchor point n is the Y-axis of world space, P A =(14,10), P n =(11,13), its slope S Y =-1, then according to formula (4), passing through point P Y Point P A The straight line is: Y=S Y X+B Y According to P A and P n B is calculated from two points. Y =24, and the Y-axis in the world space of the image is expressed by the formula: Y P = 24 -X P Line P O P Y The intersection point perpendicular to the world space Y-axis is the pixel position P. Y Find P Y (X PY ,Y PY ):

[0115] X PY =(Y PO +S Y X PO -B Y ) / 2S Y X PY =9;Y PY =S Y X PY +B Y =15, P Y=(9,15), which is consistent with the position in Figure 5.

[0116] Step 4: According to formula (3), we need to first calculate the distance P between two pixels on the Y-axis of the world space. Y P A and P Y P n Using the Pythagorean theorem, we can calculate: P Y (9,15)P A (14,10) distance = 7.07 pixels, P Y (9,15)P n The distance between (11,13) and (2.83 pixels) is 2.83 pixels. Therefore:

[0117] =P Y (9,15)P A (14,10) distance / PPD = 7.07 degrees;

[0118] =P Y (9,15)P n (11,13) distance / PPD = 2.83 degrees;

[0119] Formula (1): Y T =(Y m Tan -Y A Tan ) / ( Tan -Tan = 1201 mm;

[0120] Formula (2): Z T =(Y A -Y n ) / (Tan -Tan = 4021 mm.

[0121] Due to the Z calculated above T There is an error. You can calculate the average Z-height of the second and fourth steps, and then the final average Z-height will be obtained. T =3949 mm;

[0122] Step 5: Calculate the world position T(X) of the glasses T ,Y T Z T = (723, 1201, 3949).

[0123] C. Another method to obtain the angle formed by the line connecting the camera's normal to the ground or ceiling and the line connecting the camera to corner anchor point A:

[0124] As shown in Figure 6, assume that the angle formed by the line perpendicular to the ground or ceiling and the line connecting the camera to the corner anchor point A is... When looking down at the QR code from directly above through the camera, the angle at that moment... It's 0°. If the camera gradually moves to the side, and you view the QR code at eye level from the side, the QR code seen through the camera will appear flat. It's 90°, therefore we can know the angle. The orientation of the camera's viewing angle anchor point A is directly related to this. Therefore, the angle formed by the line connecting the camera's normal to the ground or ceiling and the line connecting the camera to anchor point A can be calculated based on the shape of the QR code seen through the camera. .

[0125] Figure 7 illustrates the changes in the positioning pattern corresponding to corner anchor point A of the QR code when viewed from different angles through a camera. Assuming the positioning pattern is square, when viewing any of the three corner anchor points mAn of the QR code through the camera of the head-mounted display device, the pattern at the top will always appear farther away than the pattern at the bottom. This is unless viewed from the front (…). = 0°), otherwise, at least one of the four corners of the square of the positioning pattern will have an angle greater than 90° and at least one corner will have an angle less than 90°. Except for the middle one in Figure 7, where one side is vertical and both corners are 90°, from other pitch angles, there are two angles greater than 90° and two angles less than 90°. We can cut out the upper half of the positioning pattern, measure the angles, and select the largest angle as 0°. Then minus 90 0 It is the angle formed by the line perpendicular to the ground or ceiling of the camera and the line connecting the camera to the corner anchor point:

[0126] (4).

[0127] Therefore, the angle between the normal line of the camera perpendicular to the ground or ceiling and the line connecting the camera to the corner anchor point can be obtained by formula (4): ( , , Figure 8 shows the QR codes as seen from four different pitch angles. Each QR code has three corner anchor points mAn, and the maximum angle of the upper half of each corner anchor point is... As shown above, subtracting 90° gives the angle between the camera's normal to the ground or ceiling and the line connecting the camera to the corner anchor point: ( , , This method eliminates the need to calculate angles using the pixels and FOV of the images captured by the camera, making it faster and more direct.

[0128] As shown in Figure 9, assuming the pixel position P perpendicular to the ground or ceiling in the image captured by the camera is obtained through the nine-axis geomagnetic chip of the smart glasses. O The angle formed by the line perpendicular to the ground or ceiling from the camera and the line connecting the camera to the three corner anchor points mAn. , , This method allows for quick acquisition;

[0129] Figure 10 shows the relationship between the camera T and the texture image from a top-down view (the height Z-axis is not visible). Camera T(X... T ,Y T Z T When the camera T(X) sees the texture image, T ,Y T Z T ) and corner anchor point A(X A ,Y A Z A ), m(X m ,Y m Z m ) and n(X n ,Y n Z n The line connecting the two sides is H. A H m and H n Using the Pythagorean theorem, the following three formulas can be derived:

[0130] ;

[0131] Figure 11 shows a schematic diagram of the relationship between the camera T and the corner anchor point A from the side (height Z-axis and H-axis). A (As the horizontal axis), combined with Figure 7 and the angle formed by the line connecting the camera T perpendicular to the ground or ceiling and the line connecting the camera T to the three corner anchor points mAn ( , , This yields the following three formulas:

[0132] ;

[0133] Solving the above six formulas simultaneously yields the world position T(X) of the glasses. T ,Y T Z T The function formula for ) is:

[0134] (5);

[0135] The above six formulas can be combined to obtain many different X values. T Y T Z T Formula (5).

[0136] Example 1

[0137] Embodiment 1 of this invention provides a positioning method for smart glasses in large spaces, applicable to metaverse application scenarios where players' head-mounted displays can interact directly without training and inference from a central server in large spaces with multiple users. Several distinct texture images are distributed on the floor, steps, tabletops, walls, and / or ceiling of the large space. Images are captured by any camera on the smart glasses. By identifying the texture image from the image captured by camera T, the corresponding image information can be obtained. The world position of camera T can be calculated by combining the image information. Assuming the texture image in the captured image is undistorted or has been distorted and calibrated, as shown in Figure 5, the method includes the following steps:

[0138] Step 1. By parsing the texture image, the image information can be obtained directly, or the ID of the texture image can be obtained, and the image information can be matched with the lookup table stored locally in the smart glasses according to the ID;

[0139] The image information includes the world position (XYZ) and graphic size (m, n); the texture image has three corner anchor points (A, m, n) forming an included angle nAm, where corner anchor point A is the vertex of the included angle nAm. The world position of corner anchor point A is defined as the world position (XYZ) of this image. The line An connecting A to corner anchor point n is the positive direction of the Y-axis, and the line Am connecting A to corner anchor point m is the positive direction of the X-axis. The length of line nA in the real world is n, and the length of line Am in the real world is m; if the included angle nAm is not 90°... 0 The image information includes the angle nAm, which is used to convert the X-axis and Y-axis.

[0140] Step 2. Based on the image information, obtain: the world position A(X) of corner anchor point A. A ,Y A Z A ), the world position of the corner anchor point m (X) m ,Y m Z m ), the world position n(X) of the corner anchor point n n ,Y n Z n ), the X m =X A +m, Y m =Y AX n =X A , Y n = Y A +n, Z m =Z n =Z A ;

[0141] The pixel position P corresponding to the aforementioned corner anchor point mAn is obtained from the acquired image. A (X PA ,Y PA ), P m (X Pm ,Y Pm ) and P n (X Pn ,Y Pn );

[0142] The pixel position P perpendicular to the ground or ceiling in the image captured by the camera is obtained through the nine-axis geomagnetic chip of the smart glasses. O (X Po ,Y Po );

[0143] Based on the field of view (FOV) and the total number of pixels on the screen's X-axis in the smart glasses camera specifications. D The number of pixels per degree (PPD) is obtained as follows: PPD = X D / FOV;

[0144] Step 3. Let the angle between the normal of camera T perpendicular to the ground or ceiling and the line TA connecting camera T to corner anchor point A be . The angle formed by the line perpendicular to the ground or ceiling from camera T and the line Tm connecting camera T to the corner anchor point m is . The angle formed by the normal of camera T perpendicular to the ground or ceiling and the line Tn connecting camera T to the corner anchor point n is . ;

[0145] Let Am be the line connecting corner anchor point A to corner anchor point m, and let the line be the X-axis of world space. Based on pixel position P... A and P m The slope S of the line Am was calculated. X Then, passing through point P X Point P A The X-axis can be expressed using the linear formula as follows:

[0146] Y=S X X+B X (6);

[0147] Pixel position P A and P m Substituting into formula (6) yields B X ;

[0148] Because of line P O P X Perpendicular to the X-axis, pixel position P X Let P be the line O P X The intersection with the X-axis is perpendicular to line P. A P m straight line P O P X The slope is -S X Expressed as a formula:

[0149] Y=-S X X+B XV (7);

[0150] Pixel position P O (X Po ,Y Po Substituting into formula (7), we get B. XV Thus, we can find the straight line P. O P X The pixel position P at the intersection with the X-axis X (X PX ,Y PX );

[0151] Let An be the line connecting corner anchor point A to corner anchor point n, and let it be the Y-axis of world space. Based on pixel position P... A and P n The slope S of the line An is calculated. Y Then, passing through point P Y Point P A The straight line can be expressed by the formula:

[0152] Y=S Y X+B Y (8);

[0153] Pixel position P A or P n Substituting into formula (8) yields B Y;

[0154] Because of line P O P Y Perpendicular to the Y-axis, pixel position P Y Let P be the line O P Y The intersection with the Y-axis is perpendicular to line P. A P n straight line P O P Y The slope is -S Y Expressed as a formula:

[0155] Y=-S Y X+B YV (9);

[0156] Pixel position P O (X Po ,Y Po Substituting into formula (9), we get B. YV Thus, we can find the straight line P. O P Y The pixel position P at the intersection with the Y-axis Y (X PY ,Y PY );

[0157] Step 4. Calculate the pixel distance P using the Pythagorean theorem. X P A and P X P m ,but

[0158] =P X P A / PPD

[0159] =P X P m / PPD(3);

[0160] It is calculated using the following formula:

[0161] (1);

[0162] or (2);

[0163] The pixel distance P was calculated using the Pythagorean theorem. Y P A and P Y P m ,but

[0164] =P Y P A / PPD

[0165] =P Y P n / PPD(3);

[0166] It is calculated using the following formula:

[0167] (1);

[0168] or (2);

[0169] The two Z values ​​obtained above T After calculating the mean, the world position (X) of camera T is obtained. T ,Y T Z T ).

[0170] It also includes step 5. The world positions of multiple cameras T are averaged or converted into the world position of the head-mounted display device based on the known positional relationship of multiple cameras; the player's head-mounted display device broadcasts its own world position along with the current game status data to other players in the large space in real time.

[0171] Example 2

[0172] Embodiment 2 of the present invention provides another positioning method for smart glasses in large spaces, applicable to metaverse application scenarios where players' head-mounted displays can interact directly without central server inference in large spaces with multiple players. Several distinct texture images are distributed on the floor, steps, tabletops, walls, and / or ceiling of the large space. Images are captured by any camera on the smart glasses. By identifying the texture image from the image captured by camera T, the corresponding image information can be obtained. The world position of camera T can be calculated by combining the image information. The corner anchor points in the image are distorted due to the camera's shooting angle, as shown in Figure 9. The method includes the following steps:

[0173] Step 1. By parsing the texture image, image information can be obtained, or the ID of the texture image can be obtained, and the image information can be matched with the lookup table stored locally in the smart glasses according to the ID;

[0174] The image information includes the world position (X) of the image's A-corner anchor point. A ,Y A Z A The texture image has three corner anchor points (A, m, n) forming an included angle nAm. The corner anchor points are square positioning patterns, with corner anchor point A being the vertex of the included angle nAm. The world position of corner anchor point A is defined as the world position (X, m, n) of this image. A ,Y A Z A The line An connecting A to the n-angle anchor point is the positive direction of the Y-axis, and the line Am connecting A to the m-angle anchor point is the positive direction of the X-axis. The length of the line nA in the real world is n, and the length of the line Am in the real world is m.

[0175] Step 2. Based on the image information, obtain: the world position A(X) of corner anchor point A.A ,Y A Z A ), the world position of the corner anchor point m (X) m ,Y m Z m ) and the world position n(X) of the corner anchor point n n ,Y n Z n X n =X A +m,Y m =Y A , X n =X A ,Y n =Y A +n, Z m = Z n =Z A ;

[0176] Step 3. Let the angle between the normal line of camera T perpendicular to the ground or ceiling and the line connecting camera T to the corner anchor point A be . The angle formed by the line perpendicular to the ground or ceiling from camera T and the line connecting camera T to the corner anchor point m is . The angle formed by the line perpendicular to the ground or ceiling from camera T and the line connecting camera T to the corner anchor point n is . Calculate the angles formed by the normal of camera T perpendicular to the ground or ceiling and the lines connecting camera T to the three corner anchor points (A, m, n). , , ):

[0177] Measure the angle of the upper half of the positioning pattern for each corner anchor point (Figure 7), and select the largest angle as the [angle value]. The angle formed by the line perpendicular to the ground or ceiling from camera T and the line connecting camera T to the corner anchor point is:

[0178] (4);

[0179] Step 4. Obtain the angle formed by the line connecting the camera T perpendicular to the ground or ceiling and the line connecting the camera T to the three corner anchor points (A, m, n) using formula (4). , , The world position (X) of camera T is calculated using formula (5). T ,Y T Z T ):

[0180] (5);

[0181] Formula (5) is derived through the following steps:

[0182] When the camera T(X) T ,Y T Z T When viewing a texture image, assuming the camera T(X) T ,Y T Z T ) and the corner anchor point A(X) of the texture image A ,Y A Z A ), m(X m ,Y m Z m ) and n(X n ,Y n Z n The line connecting the two sides is H. A H m and H n The angle formed by the line perpendicular to the ground or ceiling from camera T and the lines connecting camera T to the three corner anchor points mAn. , , Using the Pythagorean theorem, we obtain the following six formulas:

[0183] ;

[0184] Solving the above six formulas simultaneously yields the world position T(X) of the glasses. T ,Y T Z T The function formula for ) is:

[0185] (5);

[0186] The above six formulas can be combined to obtain many different X values. T Y T Z T Function formula (5).

[0187] It also includes step 5. averaging the world positions of multiple cameras T or converting them into the world position of the head-mounted display device based on the known positional relationships of the multiple cameras; the player's head-mounted display device broadcasts its own world position along with the current game status data to other players in the large space in real time, and the interaction methods include existing communication interaction methods such as wireless communication mode and Internet mode.

[0188] The three corner anchor points of the texture image can be positioning patterns without information or independent small texture images. The image information corresponding to the small texture image includes the world position of the small texture image itself and the size of the small texture image.

[0189] The image information of the texture image also includes the name of the spatial region used to distinguish the virtual space in the large space.

[0190] The image information of the texture image also includes: distance information p or q to adjacent texture images, that is, the distance p to adjacent texture images in the positive X-axis direction and the distance q to adjacent texture images in the positive Y-axis direction.

[0191] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed in this invention can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.

[0192] Specifically, the steps of the method embodiments in this application can be implemented by integrated logic circuits in the processor hardware and / or instructions in software form. The steps of the method disclosed in the embodiments of this application can be directly implemented by a hardware decoding processor, or by a combination of hardware and software modules in the decoding processor. Optionally, the software module can be located in a mature storage medium in the art, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, etc. This storage medium is located in memory, and the processor reads information in the memory and implements the steps in the above method embodiments in combination with its hardware.

[0193] Example 3

[0194] Embodiment 3 of the present invention provides a head-mounted display device, as shown in FIG12. The head-mounted display device 100 includes: a camera 101, a display 102, a memory 103 and a processor 104;

[0195] The camera 101 is connected to the processor 104 and is used to scan the user's real-world environment.

[0196] The display 102 is connected to the processor 104 and is used to display the output of the processor 104;

[0197] The memory 103 is connected to the processor 104 and is used to store computer programs and transfer the programs to the processor 104. In other words, the processor 104 can call and run the computer programs from the memory 103 to implement the method in Embodiment 1 of this application.

[0198] In some embodiments of this application, the processor 104 may include, but is not limited to:

[0199] General-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.

[0200] In some embodiments of this application, the memory 103 includes, but is not limited to, volatile memory and / or non-volatile memory. The non-volatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory may be random access memory (RAM), which serves as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static RAM (SRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), and Direct Rambus RAM (DRRAM).

[0201] In some embodiments of this application, the computer program may be divided into one or more modules, which are stored in the memory 103 and executed by the processor 104 to complete the method of Embodiment 1 provided in this application. The one or more modules may be a series of computer program instruction segments capable of performing specific functions, which describe the execution process of the computer program in the head-mounted display device 100.

[0202] It should be understood that the various components in the head-mounted display device 100 are connected through a bus system, which includes a data bus, a power bus, a control bus, and a status signal bus.

[0203] Example 4

[0204] Embodiment 4 of the present invention also provides a computer storage medium storing a computer program thereon, which, when executed by a computer, enables the computer to perform the method in Embodiment 1 above.

[0205] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above description is only a specific embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A positioning method for large-space smart glasses, characterized in that: Several different texture images are laid out on the bottom or ceiling of a large space. Images are captured by any camera on the smart glasses. The texture image is identified from the image captured by camera T, and the image information corresponding to the texture image is obtained. The image information can be obtained directly by parsing the texture image, or the ID of the texture image can be obtained. The image information is then matched with the ID in a lookup table stored locally on the smart glasses. The image information includes the world position (XYZ) and graphic size (m, n); the texture image has three corner anchor points (A, m, n) forming an included angle nAm, where corner anchor point A is the vertex of the included angle nAm. The world position of corner anchor point A is defined as the world position (XYZ) of this image. The line An connecting A to corner anchor point n is the positive direction of the Y-axis, and the line Am connecting A to corner anchor point m is the positive direction of the X-axis. The length of line nA in the real world is n, and the length of line Am in the real world is m; if the included angle nAm is not 90°... 0 The image information also includes the angle nAm, which is used to convert the X-axis and Y-axis. Based on the image information, the world position of corner anchor point A is A(X). A ,Y A Z A ), the world position of the corner anchor point m (X) m ,Y m, Z m ) and the world position n(X) of the corner anchor point n n ,Y n Z n ), the X m =X A +m, Y m =Y A X n =X A , Y n = Y A +n, Z m =Z n =Z A ; The pixel position P corresponding to the aforementioned corner anchor point mAn is obtained from the acquired image. A (X PA ,Y PA ), P m (X Pm ,Y Pm ) and P n (X Pn ,Y Pn ); The pixel position P perpendicular to the ground or ceiling in the image captured by the camera is obtained through the nine-axis geomagnetic chip of the smart glasses. O (X Po ,Y Po ); Let H be the line connecting camera T perpendicular to the normal of the bottom surface or ceiling and the line connecting camera T to the corner anchor point A. A The angle formed is The line H connecting the camera T perpendicular to the bottom surface or ceiling and the camera T to the corner anchor point m. m The angle formed is The line H connecting the normal of camera T perpendicular to the bottom surface or ceiling and the line from camera T to the corner anchor point n. n The angle formed is The world position (X) of camera T can be obtained through geometric calculations. T ,Y T Z T ).

2. The positioning method for large-space smart glasses according to claim 1, characterized in that, The world position (X) of camera T can be obtained through geometric calculation. T ,Y T Z T Assuming the texture image in the acquired image is undistorted or has been corrected for distortion, and given the camera's field of view (FOV) and the total number of pixels on the screen's X-axis (X),... D The number of pixels per degree (PPD) is obtained as follows: PPD = X D / FOV; The specific calculation steps are as follows: Step 1. Let Am be the line connecting corner anchor point A to corner anchor point m, and let P be the X-axis of the world space. A and P m The slope S of the line Am was calculated. X Then, passing through point P X Point P A The X-axis can be expressed using the linear formula as follows: Y=S X X+B X (6); Pixel position P A or P m Substituting into formula (6) yields B X ; Because of line P O P X Perpendicular to the X-axis, pixel position P X Let P be the line O P X The intersection with the X-axis is perpendicular to line P. A P m straight line P O P X The slope is -S X Expressed as a formula: Y=-S X X+B XV (7); Pixel position P O (X Po ,Y Po Substituting into formula (7), we get B. XV Thus, we can find the straight line P. O P X The pixel position of the intersection with the X-axis P X (X PX ,Y PX ); Let An, the line connecting corner anchor point A to corner anchor point n, be the Y-axis of world space. Based on pixel position P... A and P n The slope S of the line An is calculated. Y Then, passing through point P Y Point P A The straight line can be expressed by the formula: Y=S Y X+B Y (8); Pixel position P A or P n Substituting into formula (8) yields B Y; Because of line P O P Y Perpendicular to the Y-axis, pixel position P Y Let P be the line O P Y The intersection with the Y-axis is perpendicular to line P. A P n straight line P O P Y The slope is -S Y Expressed as a formula: Y=-S Y X+B YV (9); Pixel position P O (X Po ,Y Po Substituting into formula (9), we get B. YV Thus, we can find the straight line P. O P Y The pixel position P at the intersection with the Y-axis Y (X PY ,Y PY ); Step 2. Calculate the pixel distance P using the Pythagorean theorem. X P A and P X P m ,but =P X P A / PPD =P X P m / PPD(3); It is calculated using the following formula: (1); or (2); The pixel distance P was calculated using the Pythagorean theorem. Y P A and P Y P m ,but =P Y P A / PPD =P Y P n / PPD(3); It is calculated using the following formula: (1); or (2); Step 3. Combine the two Z values ​​obtained above. T After calculating the mean, the world position (X) of camera T is obtained. T ,Y T Z T ).

3. The positioning method for large-space smart glasses according to claim 1, characterized in that, The world position (X) of camera T can be obtained through geometric calculation. T ,Y T Z T Assuming the texture image in the acquired image is distorted due to the camera angle, calculate the angles formed by the normal of the camera T perpendicular to the bottom or ceiling and the lines connecting the camera T to the three corner anchor points (A, m, n). , , ): The three corner anchor points are all square positioning images. The angle of the upper half of the positioning pattern for each corner anchor point is measured, and the largest angle is selected as the [angle not specified]. The angle formed by the line perpendicular to the ground or ceiling from camera T and the line connecting camera T to the corner anchor point is: (4); Formula (4) yields the angle formed by the line connecting the camera T perpendicular to the ground or ceiling and the line connecting the camera T to the three corner anchor points (A, m, n). , , ); First, using the Pythagorean theorem, we obtain the following six formulas: ; Then, by combining the above six formulas, we can obtain the world position T(X) of the glasses. T ,Y T Z T The function formula for ) is: (5)。 4. The positioning method for large-space smart glasses according to claim 1, characterized in that: The world positions of multiple cameras T are averaged or calculated based on the known positional relationships of the multiple cameras to obtain the world position of the head-mounted display / smart glasses; the player's head-mounted display / smart glasses broadcast their own world position along with the current game status data to other players in the large space in real time.

5. A positioning method for large-space smart glasses according to any one of claims 1-3, characterized in that: The bottom surface of the large space refers to the floor, steps, walls, or tabletop of the large space.

6. The positioning method for large-space smart glasses according to claim 1, characterized in that: The three corner anchor points of the texture image can be positioning patterns without information or independent small texture images. The image information corresponding to the small texture image includes the world position of the small texture image itself and the size of the small texture image.

7. The positioning method for large-space smart glasses according to claim 1, characterized in that: The image information of the texture image also includes the name of the spatial region used to distinguish the virtual space in the large space.

8. The positioning method for large-space smart glasses according to claim 1, characterized in that, The image information of the texture image also includes: distance information p or q to adjacent texture images, that is, the distance p to adjacent texture images in the positive X-axis direction and the distance q to adjacent texture images in the positive Y-axis direction.

9. A head-mounted display device, characterized in that, The head-mounted display includes a camera, a display, a memory, and a processor; The camera is connected to the processor and is used to scan the user's real-world environment. The display is connected to the processor and is used to display the processor's output. This memory is connected to the processor and is used to store computer programs; The processor is used to execute the computer program to implement the positioning method of any one of the large-space smart glasses according to claims 1 to 8.

10. A computer-readable storage medium, characterized in that, A computer program is stored on the computer-readable storage medium, which, when executed by a processor, implements the positioning method of any one of the large-space smart glasses according to claims 1 to 8.