Method and system for automatically generating mark of curve boundary scene in VR application
By distributing and intersection point set methods for curved polygon scenes, marking positions are automatically generated, which solves the problem of inaccurate user position tracking in VR applications, and improves user experience and system adaptability.
Patent Information
- Application Number
- CN202510983298.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-17
- Publication Date
- 2025-08-15
- Estimated Expiration
- 2045-07-17
AI Technical Summary
In existing VR applications, curve boundary scenarios lack efficient automatic marking position generation methods, resulting in inaccurate user position tracking, especially in scarce features, which affects user experience and system adaptability.
The target scene is represented by curved polygons, and the potential mark position is obtained through the polygon intersection point set method, multiple coverage position problems are constructed, and the optimal mark position set is solved, and the automatic mark generation is realized.
It improves user location tracking accuracy, improves the user immersion experience and system adaptability of VR systems, especially in physical environments with scarce characteristics.
Smart Images

Figure CN120495586A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of virtual reality, and in particular to a method and system for automatically generating markers for curved boundary scenes in VR applications. Background Art
[0002] In multi-person, large-space VR (Virtual Reality) applications based on real-life walking interactions, accurate user positioning and tracking is a key issue affecting the user experience. Currently, feature-based tracking methods are primarily used in practical applications to localize users by capturing salient visual features such as edges, corners, spots, and patches. However, when the real environment contains large areas of uniform (such as white walls) or repetitive textures (such as tiles), this method is prone to positioning errors, resulting in inaccurate calculation of the user's spatial coordinates. Notably, even when richly feature-rich patterns are placed on the wall, intermittent positioning drift can still occur using this method.
[0003] To this end, some VR applications use marker-based tracking methods, leveraging predefined markers placed in the real environment to achieve more reliable user tracking. However, current marker location settings rely primarily on manual experience and observation, a time-consuming and labor-intensive process, and the effectiveness of marker placement remains questionable. While adding more markers can improve tracking accuracy, this can affect the visual experience and increase costs. Therefore, existing VR applications, particularly in complex scenes with curved boundaries, lack methods for automatically generating a limited number of marker locations, making it difficult to effectively assist in achieving accurate user positioning and tracking. Summary of the Invention
[0004] To address the above-mentioned issues, the present invention proposes a method and system for automatically generating markers for curved boundary scenes in VR applications, thereby improving the tracking accuracy of user positions in feature-scarce physical environments, thereby further enhancing the user immersion experience and system adaptability in VR systems.
[0005] According to some embodiments, the present invention adopts the following technical solutions: A method for automatically generating markers for curved boundary scenes in VR applications, comprising: Using a curve polygon to represent a target curve boundary scene in a VR application, and dividing the curve polygon to obtain a set of sub-polygons; By using the polygon intersection set method, the intersection of the coverage boundaries of any two sub-polygons in the sub-polygon set is taken as the potential position of the mark, and the potential position set of the mark is constructed; Based on the potential position set, sub-polygon set and a given number of markers, a multiple covering position problem is constructed. The sub-polygons are used as covered points and the potential positions of the markers are used as covering points. Under the restriction of the number of markers, the optimal set of marker positions is solved with the goal of maximizing the number of covered points.
[0006] According to some embodiments, the present invention adopts the following technical solutions: A system for automatically generating markers for curved boundary scenes in VR applications, comprising: The polygon segmentation module is configured to: represent a target curve boundary scene in a VR application using a curve polygon, and segment the curve polygon to obtain a sub-polygon set; The potential position construction module is configured to: construct a potential position set of the marker by using a polygon intersection set method to take the intersection of the coverage boundaries of any two sub-polygons in the sub-polygon set as the potential position of the marker; The marker position solving module is configured to: construct a multiple covering position problem based on the potential position set, the sub-polygon set and the given number of markers, take the sub-polygons as the covered points, and the potential positions of the markers as the covering points, and solve the optimal marker position set with the goal of maximizing the number of covered points under the limit of the number of markers.
[0007] According to some embodiments, the present invention adopts the following technical solutions: A computer program product includes a computer program, which, when executed by a processor, implements the method for automatically generating markers for curved boundary scenes in VR applications.
[0008] According to some embodiments, the present invention adopts the following technical solutions: A non-transitory computer-readable storage medium is used to store computer instructions. When the computer instructions are executed by a processor, the method for automatically generating a marker for a curved boundary scene in a VR application is implemented.
[0009] According to some embodiments, the present invention adopts the following technical solutions: An electronic device includes: a processor, a memory, and a computer program; wherein the processor is connected to the memory, and the computer program is stored in the memory. When the electronic device is running, the processor executes the computer program stored in the memory to enable the electronic device to implement the method for automatically generating markers for curved boundary scenes in VR applications.
[0010] Compared with the prior art, the present invention has the following beneficial effects: The present invention divides a given curved polygon representing a physical scene into a set of sub-polygons. For each sub-polygon set, the polygon intersection point set (PIPS) method is used to obtain a set of potential locations for markers. Based on the potential location set, the sub-polygon set, and a given number of markers, a maximum coverage location problem (MCLP) is constructed and solved to obtain the optimal set of markers. This method automatically generates marker positions in the physical scene represented by the curved polygon, allowing developers to quickly arrange markers in any feature-scarce physical scene, thereby ensuring accurate tracking of user positions in VR applications. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The accompanying drawings, which constitute a part of the present invention, are used to provide a further understanding of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute improper limitations on the present invention.
[0012] Figure 1 Automatically generate a flow chart for the marked position in Example 1; Figure 2 Schematic diagram of sub-polygons after space division in Example 1; Figure 3 Schematic diagram of subdivision of type 2 sub-polygons in Example 1; Figure 4 Schematic diagram of subdivision of case 1 of type 3 sub-polygon in embodiment 1; Figure 5 Schematic diagram of subdivision of case 2 of type 3 sub-polygon in embodiment 1; Figure 6 Schematic diagram of subdivision of case 1 of type 4 sub-polygon in embodiment 1; Figure 7 Schematic diagram of subdivision of case 2 of type 4 sub-polygon in embodiment 1; Figure 8 Schematic diagram of subdivision of case 3 of type 4 sub-polygon in embodiment 1; Figure 9 Schematic diagram of subdivision of case 1 of type 5 sub-polygon in embodiment 1; Figure 10 Schematic diagram of subdivision of case 2 of type 5 sub-polygon in embodiment 1; Figure 11 Schematic diagram of subdivision of case 3 of type 5 sub-polygon in embodiment 1; Figure 12 Schematic diagram of subdivision of case 4 of type 5 sub-polygon in embodiment 1; Figure 13Schematic diagram of all subdivided sub-polygons in Example 1; Figure 14 This is a schematic diagram of the coverage in Example 1; Figure 15 Schematic diagram of the intersection of the coverage areas of two sub-polygons in Example 1. DETAILED DESCRIPTION
[0013] The present invention will be further described below with reference to the accompanying drawings and embodiments.
[0014] It should be noted that the following detailed descriptions are exemplary and intended to provide further explanation of the present invention. Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which the present invention belongs.
[0015] It should be noted that the terms used herein are only for describing specific embodiments and are not intended to limit the exemplary embodiments according to the present invention. As used herein, unless the context clearly indicates otherwise, the singular form is intended to include the plural form. In addition, it should be understood that when the terms "comprise" and / or "comprising" are used in this specification, they indicate the presence of features, steps, operations, devices, components and / or combinations thereof.
[0016] Example 1 In one embodiment of the present invention, a method for automatically generating a marker for a curved boundary scene in a VR application is provided, comprising: Step S1: Using a curve polygon to represent a target curve boundary scene in a VR application, and dividing the curve polygon to obtain a sub-polygon set; Step S2: Using the polygon intersection set method, the intersection of the coverage boundaries of any two sub-polygons in the sub-polygon set is used as the potential position of the mark, and a potential position set of the mark is constructed; Step S3: Based on the potential position set, the sub-polygon set and the given number of markers, a multiple covering position problem is constructed, with the sub-polygons as the covered points and the marked potential positions as the covering points. Under the limit of the number of markers, the optimal set of marked positions is solved with the goal of maximizing the number of covered points.
[0017] As an embodiment, the present invention provides a method for automatically generating markers for curved boundary scenes in VR applications, which can improve the tracking accuracy of user positions in feature-scarce physical environments, thereby further enhancing the user immersion experience and system adaptability in VR systems. Figure 1 The specific implementation process is as follows: Step 1: Divide the given curve polygon representing the physical scene to obtain a set of sub-polygons, including: Step (1.1): Use the Voronoi-based decomposition (VBD) method to perform spatial division on the curve polygon to obtain the following: Figure 2 Several sub-polygons are shown, among which Figure 2 The numbers marked in the figure are the type numbers of the sub-polygons.
[0018] Step (1.2): Further subdivide each sub-polygon until the radius of the minimum circumscribed circle of all sub-polygons is less than a given threshold.
[0019] For each sub-polygon, subdivide it according to different methods based on the type of sub-polygon, specifically: Step (1.2.1): For the type 1 sub-polygon formed by three diagonal lines, the subdivision method is: First, find the vertex with the largest internal angle, make a perpendicular point from the vertex to its opposite side, and use the line segment from the vertex to the perpendicular point to divide the type 1 sub-polygon into two type 1 sub-triangles.
[0020] Step (1.2.2): For a type 2 subpolygon formed by a diagonal line and a curve, such as Figure 3 As shown, the subdivision method is: First find the point on the curve farthest from the diagonal line, and then connect that point to the endpoints of the diagonal line, thereby dividing the type 2 sub-polygon into a type 1 sub-polygon and a type 2 sub-polygon.
[0021] Step (1.2.3): For the type 3 sub-polygon formed by two diagonal lines and a curve, the subdivision method is divided into two cases: If the curve is convex, such as Figure 4 As shown, the endpoints of the curve are connected to divide the type 3 sub-polygon into a type 1 sub-polygon and a type 2 sub-polygon.
[0022] If the curve is concave, such as Figure 5 As shown, find the point on the curve farthest from the line segment connecting the curve endpoints, and then draw a parallel line from the point to intersect the line segment, thereby dividing the type 3 sub-polygon into one type 1 sub-polygon and two type 3 sub-polygons.
[0023] Step (1.2.4): For a type 4 sub-polygon formed by a diagonal line and two curves, the subdivision method is divided into three cases: If one of the curves is convex and the other is concave, as in Figure 6 As shown, find the point on the concave curve that is farthest from the line segment connecting the end points of the concave curve, and then draw a parallel line from the point to intersect the line segment, thereby dividing the type 4 sub-polygon into two type 3 sub-polygons and one type 4 sub-polygon.
[0024] If both curves are concave, such as Figure 7 As shown, find the point on the concave curve that is farthest from the line segment connecting the end points of the concave curve, and then draw a parallel line from the point to intersect the line segment, thereby dividing the type 4 sub-polygon into two type 3 sub-polygons and one type 4 sub-polygon.
[0025] If both curves are convex, such as Figure 8 As shown, the endpoints of each curve are connected respectively, thereby dividing type 4 into two type 2 sub-polygons and one type 1 sub-polygon.
[0026] Step (1.2.5): For a type 5 sub-polygon consisting of two diagonals and two curves, the subdivision method is divided into four cases: If both curves are convex, such as Figure 9 As shown, the endpoints of each curve are connected respectively, thereby dividing the type 5 into a quadrilateral and two type 2 sub-polygons. The quadrilateral is further divided into two type 1 sub-polygons by connecting one of its diagonals.
[0027] If both curves are concave, find two parallel lines, if these two parallel lines do not intersect the other curve, such as Figure 10 As shown, the type 5 sub-polygon will be divided into a quadrilateral and four type 3 sub-polygons, otherwise, as Figure 11 As shown, find the common tangent of the two curves and divide type 5 into four type 3 sub-polygons.
[0028] If one curve is concave and the other is convex, as in Figure 12 As shown, a parallel line is found for the concave curve and the endpoints of the convex curve are connected, thereby dividing type 5 into a quadrilateral, a type 2 sub-polygon and two type 3 sub-polygons. The quadrilateral is further divided into two type 1 sub-polygons by connecting one of its diagonals.
[0029] Step (1.3): Take all the subdivided sub-polygons as the subdivision results, and get the following Figure 13 The collection of sub-polygons shown.
[0030] Step 2: For a given curve polygon and polygon set, obtain a potential location set of markers using the PIPS method, including: Step (2.1): Calculate the coverage boundary of each sub-polygon, specifically: like Figure 14 As shown, with each vertex of the sub-polygon as the center, a circle with a given marker recognition range as the radius is drawn, and the overlapping part of all circles is the coverage boundary of the sub-polygon. Figure 14In the figure, the red triangle is the sub-polygon whose coverage boundary is to be calculated, the yellow line is the drawn circle, and the green line is the coverage boundary.
[0031] Through the above method, the coverage boundaries of all sub-polygons are obtained.
[0032] Step (2.2): Figure 15 As shown, the intersection of the coverage boundaries of any two sub-polygons is calculated, and the intersection is used as a potential position of the mark to obtain the set of all potential positions.
[0033] Step 3: Based on the set of potential locations of the markers, the set of sub-polygons, and the given number of markers, construct an MCLP, with the sub-polygons as the covered points and the potential locations of the markers as the covered points. Under the limit of the number of markers, with the goal of maximizing the number of covered points, the optimal set of marker locations is solved, including: Step (3.1): Let represents the set of potential locations of the mark, that is, the set of coverage points, Represents the sub-polygon set, that is, the covered point set, B is the given number of markers, that is, the upper limit of the number of markers, and there is a covering relationship between the covered points and the covering points. The covering relationship here is expressed by the potential position of the marker Is it in a sub-polygon The coverage boundary is characterized by Indicates that it can cover sub-polygons The set of potential locations of the markers, Indicates potential locations that can be marked The collection of covered sub-polygons.
[0034] Step (3.2): Construct MCLP, , , , , .
[0035] in, Indicates the potential location of the marker Set the mark, Indicates the potential location of the marker No flag is set; Represents a sub-polygon is covered by at least one marked potential location, i.e., the marked potential location In the sub-polygon On the coverage boundary, Represents a sub-polygon Not covered by any of the potential locations marked. A collection of potential locations through markers , sub-polygon collection Can be obtained, and is the decision variable to be solved.
[0036] Step (3.3): Solve the MCLP in step (3.2) using the branch-and-bound method, specifically: First, relax the integer constraints to obtain the upper bound and use the greedy algorithm to generate the initial lower bound. Then, branch by selecting the fractional variable (forcing or not placing the mark), calculate the relaxed solution of the subproblem and prune the invalid branch. Finally, output the optimal mark arrangement when the termination condition is met. .
[0037] This embodiment provides a method and system for automatically generating markers for curved boundary scenes in VR applications, which realizes the automatic generation of marker positions in physical scenes represented by curved polygons. This allows developers to quickly arrange markers in any physical scene with scarce features, ensuring accurate tracking of user positions in VR applications. It is widely used in generating virtual road maps for predictive redirection controllers in curved scenes.
[0038] Example 2 In one embodiment of the present invention, a system for automatically generating markers for curved boundary scenes in VR applications is provided, comprising: The polygon segmentation module is configured to: represent a target curve boundary scene in a VR application using a curve polygon, and segment the curve polygon to obtain a sub-polygon set; The potential position construction module is configured to: construct a potential position set of the marker by using a polygon intersection set method to take the intersection of the coverage boundaries of any two sub-polygons in the sub-polygon set as the potential position of the marker; The marker position solving module is configured to: construct a multiple covering position problem based on the potential position set, the sub-polygon set and the given number of markers, take the sub-polygons as the covered points, and the potential positions of the markers as the covering points, and solve the optimal marker position set with the goal of maximizing the number of covered points under the limit of the number of markers.
[0039] Example 3 In one embodiment of the present invention, a computer program product is provided, including a computer program. When the computer program is executed by a processor, the method for automatically generating a marker for a curved boundary scene in a VR application is implemented.
[0040] Example 4 In one embodiment of the present invention, a non-transitory computer-readable storage medium is provided, which is used to store computer instructions. When the computer instructions are executed by a processor, the method for automatically generating markers for curved boundary scenes in VR applications is implemented.
[0041] Example 5 In one embodiment of the present invention, an electronic device is provided, comprising: a processor, a memory, and a computer program; wherein the processor is connected to the memory, and the computer program is stored in the memory. When the electronic device is running, the processor executes the computer program stored in the memory, so that the electronic device executes the method for automatically generating markers for curved boundary scenes in VR applications.
[0042] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0043] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 The steps for the function specified in one or more boxes.
[0044] Although the above describes the specific embodiments of the present invention in conjunction with the accompanying drawings, it is not intended to limit the scope of protection of the present invention. Those skilled in the art should understand that various modifications or variations that can be made by those skilled in the art on the basis of the technical solution of the present invention without any creative work are still within the scope of protection of the present invention.
Claims
1. A method for automatically generating markers for curved boundary scenes in VR applications, characterized in that: include: Using a curve polygon to represent a target curve boundary scene in a VR application, and dividing the curve polygon to obtain a set of sub-polygons; By using the polygon intersection set method, the intersection of the coverage boundaries of any two sub-polygons in the sub-polygon set is taken as the potential position of the mark, and the potential position set of the mark is constructed; Based on the potential position set, sub-polygon set and a given number of markers, a multiple covering position problem is constructed. The sub-polygons are used as covered points and the potential positions of the markers are used as covering points. Under the restriction of the number of markers, the optimal set of marker positions is solved with the goal of maximizing the number of covered points.
2. The method for automatically generating markers for curved boundary scenes in VR applications according to claim 1, wherein: The said polygonal segmentation of the curve is specifically as follows: Using a Voronoi diagram-based partitioning method to spatially partition the curve polygon to obtain a plurality of sub-polygons; Each sub-polygon is further subdivided until the radius of the minimum circumscribed circle of all sub-polygons is less than a given threshold. All sub-polygons obtained after subdivision constitute a sub-polygon set.
3. The method for automatically generating markers for curved boundary scenes in VR applications according to claim 2, wherein: The subdivision adopts a corresponding subdivision method according to the type of the sub-polygon; Among them, the types include type 1 sub-polygon formed by three diagonal lines, type 2 sub-polygon formed by one diagonal line and a curve, type 3 sub-polygon formed by two diagonal lines and a curve, type 4 sub-polygon formed by one diagonal line and two curves, and type 5 sub-polygon formed by two diagonal lines and two curves.
4. The method for automatically generating markers for curved boundary scenes in VR applications according to claim 3, wherein: The subdivision method of the type 1 sub-polygon is as follows: find the vertex with the largest internal angle, make a perpendicular point from the vertex to its opposite side, and use the line segment from the vertex to the perpendicular point to divide the type 1 sub-polygon into two type 1 sub-triangles.
5. The method for automatically generating markers for curved boundary scenes in VR applications according to claim 3, wherein: The subdivision method of the type 2 sub-polygon is: connecting the point on the curve farthest from the diagonal line to the two end points of the diagonal line, and dividing the type 2 sub-polygon into a type 1 sub-polygon and a type 2 sub-polygon.
6. The method for automatically generating markers for curved boundary scenes in VR applications according to claim 3, wherein: The subdivision method of the type 3 sub-polygon is: If the curve is convex, connect the two endpoints of the curve and divide the type 3 sub-polygon into a type 1 sub-polygon and a type 2 sub-polygon; If the curve is concave, find the point on the curve farthest from the line segment connecting the curve endpoints, and draw a parallel line from that point to intersect the line segment, thereby dividing the type 3 sub-polygon into one type 1 sub-polygon and two type 3 sub-polygons.
7. The method for automatically generating markers for curved boundary scenes in VR applications according to claim 3, wherein: The subdivision method of the type 4 sub-polygon is: If one of the curves is convex and the other is concave, find the point on the concave curve farthest from the line segment connecting the endpoints of the concave curve, and draw a parallel line from that point to intersect the line segment, thereby dividing the type 4 sub-polygon into two type 3 sub-polygons and one type 4 sub-polygon; If both curves are concave, find the point on the concave curve farthest from the line segment connecting the endpoints of the concave curve, and draw a parallel line from this point to intersect the line segment, thereby dividing the type 4 sub-polygon into two type 3 sub-polygons and one type 4 sub-polygon; If both curves are convex, connect the endpoints of each curve separately, thereby dividing the type 4 into two type 2 sub-polygons and one type 1 sub-polygon.
8. The method for automatically generating markers for curved boundary scenes in VR applications according to claim 3, wherein: The subdivision method of the type 5 sub-polygon is: If both curves are convex, connect the endpoints of each curve, thereby dividing the type 5 into a quadrilateral and two type 2 sub-polygons. The quadrilateral is further divided into two type 1 sub-polygons by connecting one of its diagonals; If both curves are concave, find two parallel lines. If the two parallel lines do not intersect the other curve, the type 5 sub-polygon will be divided into a quadrilateral and four type 3 sub-polygons. If the two parallel lines intersect the other curve, find the common tangent of the two curves and divide the type 5 into four type 3 sub-polygons. If one curve is concave and the other is convex, find a parallel line for the concave curve and connect the endpoints of the convex curve, thereby dividing the type 5 into a quadrilateral, a type 2 sub-polygon, and two type 3 sub-polygons. The quadrilateral is further divided into two type 1 sub-polygons by connecting one of its diagonals.
9. The method for automatically generating markers for curved boundary scenes in VR applications according to claim 1, wherein: The coverage boundary of the sub-polygon is calculated as follows: Draw a circle with the given marker identification range as the radius, taking each vertex of the sub-polygon as the center; The overlapping part of all circles is the coverage boundary of the sub-polygon.
10. A system for automatically generating markers for curved boundary scenes in VR applications, characterized in that: include: The polygon segmentation module is configured to: represent a target curve boundary scene in a VR application using a curve polygon, and segment the curve polygon to obtain a sub-polygon set; The potential position construction module is configured to: construct a potential position set of the marker by using a polygon intersection set method to take the intersection of the coverage boundaries of any two sub-polygons in the sub-polygon set as the potential position of the marker; The marker position solving module is configured to: construct a multiple covering position problem based on the potential position set, the sub-polygon set and the given number of markers, take the sub-polygons as the covered points, and the potential positions of the markers as the covering points, and solve the optimal marker position set with the goal of maximizing the number of covered points under the limit of the number of markers.
Citation Information
Patent Citations
Polygon fragmentation method of distortion correction in computer image generating systems
CA2062936A1
Service area optimization method and device
CN112036924A
Measuring area route planning method and device, electronic equipment and storage medium
CN117470251A
Transmission, transformation and distribution unmanned aerial vehicle gridding deployment method based on GIS
CN119835650A
Method of determining intersections of polynomial parametric curves, for computer aided design
FR2646258A1