A method and apparatus for generating a secure zone

By generating planar contours and vertical boundaries of different shapes and sizes in VR devices, the problem of unreasonable safe area size in existing technologies is solved, enabling flexible safe area generation and improving user experience and security.

CN115187756BActive Publication Date: 2026-01-16HISENSE VISUAL TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210698473.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-20
Publication Date
2026-01-16
Estimated Expiration
2042-06-20

AI Technical Summary

Technical Problem

The existing method for generating safe zones in VR devices cannot be flexibly adjusted, resulting in unreasonable safe zone sizes, which affects user experience and safety.

Method used

By generating planar contours of different shapes and sizes at different heights, and generating the vertical boundary of the safe area based on the planar contours, the size of the safe area can be flexibly adjusted to meet the user's activity needs.

Benefits of technology

It improves the flexibility of generating safe zones for VR devices, provides reasonable activity space, enhances user experience, and ensures safety.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115187756B_ABST
    Figure CN115187756B_ABST
Patent Text Reader

Abstract

The application relates to the VR technical field and provides a safety area generation method and equipment, at least two planes are generated at different heights, the shapes and sizes of the safety areas on the different planes are different, the multiple activity ranges of the safety areas in the horizontal direction are flexibly determined, whether the maximum height of the at least two planes is greater than a height threshold value is determined, the vertical boundaries of the safety areas are created in different ways, the safety areas with different plane outlines in shape and size are flexibly generated, when the VR equipment is used, the scenes with different activity space sizes required by different parts can be applied, the utilization rate of the real space is improved, the user is provided with the reasonable activity space in the premise of ensuring the user safety, and the VR experience of the user is improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of virtual reality (VR), in particular to a method and device for generating a safety area. BACKGROUND

[0002] When a user wears a 6 degree of freedom (DOF) VR device, the user's vision is isolated from the real environment, and the user cannot know the situation of the real environment where the user is located, which may cause danger such as collision and entanglement.

[0003] To ensure user safety, most current VR devices support a safety area function. When a user moves outside the safety area, the user is given a corresponding warning prompt to help the user return to the inside of the safety area, so that it is necessary for the user to continue to be immersed in the virtual scene normally displayed by the VR device. Since most VR devices mainly determine whether a user moves outside the safety area by judging whether the coordinates of a head-mounted display and a handle are within the range of a safety area, the size of the safety area directly affects the immersive experience of the user.

[0004] Currently, the safety area of a VR device is mainly a cylindrical safety area generated by vertically extending a closed curve drawn on a set ground plane by a handle, so the shape and size of the cross section of the cylindrical safety area at different heights are completely consistent. However, in actual applications, the range of movement of the handle used to control the display screen of the head-mounted display is generally higher than the range of movement of the user's legs. If the cylindrical safety area is determined according to the range of movement of the handle, the safety area is too large, and if the cylindrical safety area is determined according to the range of movement of the user's legs, the safety area is too small.

[0005] Therefore, it is urgent to improve the flexibility of generating a safety area. SUMMARY

[0006] Embodiments of the present application provide a method and device for generating a safety area, which are used to improve the flexibility of generating a safety area and improve the VR experience.

[0007] In one aspect, the present application provides a method for generating a safety area, applied to a VR device, and the method comprises:

[0008] generating at least two planes at different heights, and determining a plane profile of the safety area on each plane, the plane profiles of the safety area on different planes being different in shape and size;

[0009] if the maximum height of the at least two planes is greater than a height threshold, generating a vertical boundary of the safety area according to the plane profiles of the safety area on two adjacent planes of the at least two planes;

[0010] if the maximum height of the at least two planes is less than or equal to the height threshold, generating the vertical boundary of the safety area according to the plane profile of the safety area on two adjacent planes of the at least two planes and the plane profile of the safety area on the plane at the maximum height;

[0011] generating the safety area according to the at least two plane profiles and the vertical boundary.

[0012] In another aspect, an embodiment of the present application provides a VR device, comprising a processor and a memory connected with the processor through a bus:

[0013] The memory stores a computer program, and the processor executes the following operations according to the computer program:

[0014] generating at least two planes at different heights and determining a plane profile of a safety area on each plane, the plane profiles of the safety area on different planes being different in shape and size;

[0015] if the maximum height of the at least two planes is greater than the height threshold, generating the vertical boundary of the safety area according to the plane profile of the safety area on two adjacent planes of the at least two planes;

[0016] if the maximum height of the at least two planes is less than or equal to the height threshold, generating the vertical boundary of the safety area according to the plane profile of the safety area on two adjacent planes of the at least two planes and the plane profile of the safety area on the plane at the maximum height;

[0017] generating the safety area according to the at least two plane profiles and the vertical boundary.

[0018] In another aspect, an embodiment of the present application provides a computer readable storage medium storing computer executable instructions for causing a computer device to execute the method for generating a safety area provided by an embodiment of the present application.

[0019] The method and device for generating a safety area provided in the embodiments of the present application generate at least two planes at different heights, and the shapes and sizes of the safety areas on different planes are different, so that the multiple activity ranges of the safety area in the horizontal direction are flexibly determined; by determining whether the maximum height of the at least two planes is greater than a height threshold, the vertical boundaries of the safety area are generated in different ways, so that the safety area with different activity space sizes at different heights is flexibly generated based on the plane profiles of the safety areas with different shapes and sizes on the planes at different heights. In this way, when the VR device is used, the scenarios with different activity space sizes required by different parts can be applied, the utilization rate of the real space is improved, the reasonable activity space is maximally provided for the user on the premise of ensuring the safety of the user, and the VR experience of the user is improved. BRIEF DESCRIPTION OF DRAWINGS

[0020] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the drawings needed to be used in the embodiments or the prior art description will be briefly introduced. Obviously, the drawings in the following description are some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.

[0021] Figure 1A The schematic diagram of the 6DOF VR all-in-one machine provided in the embodiments of the present application;

[0022] Figure 1B The schematic diagram of another 6DOF VR all-in-one machine provided in the embodiments of the present application;

[0023] Figure 2A The structural schematic diagram of the existing safety area provided in the embodiments of the present application;

[0024] Figure 2B The structural schematic diagram of another existing safety area provided in the embodiments of the present application;

[0025] Figure 3 The flowchart of the method for generating a safety area provided in the embodiments of the present application;

[0026] Figure 4 The flowchart of the method for generating a plane profile of a safety area in an automatic manner provided in the embodiments of the present application;

[0027] Figure 5 The flowchart of the method for generating a plane profile of a safety area in a manual manner provided in the embodiments of the present application;

[0028] Figure 6 The flowchart of the method for detecting the rationality of a plane of a safety area provided in the embodiments of the present application;

[0029] Figure 7A vertical boundary method flowchart for creating a cylindrical closed safety area provided for the embodiments of the present application;

[0030] Figure 8 A cylindrical closed safety area effect diagram provided for the embodiments of the present application;

[0031] Figure 9 A vertical boundary method flowchart for creating a frustoconical closed safety area provided for the embodiments of the present application;

[0032] Figure 10 A frustoconical closed safety area effect diagram provided for the embodiments of the present application;

[0033] Figure 11 A vertical boundary method flowchart for creating a cylindrical open safety area provided for the embodiments of the present application;

[0034] Figure 12 A cylindrical open safety area effect diagram provided for the embodiments of the present application;

[0035] Figure 13 A vertical boundary method flowchart for creating a frustoconical open safety area provided for the embodiments of the present application;

[0036] Figure 14 A frustoconical open safety area effect diagram provided for the embodiments of the present application;

[0037] Figure 15 A safety area vertical boundary rationality detection method flowchart provided for the embodiments of the present application;

[0038] Figure 16A A method flowchart for generating a plane profile of a safety area on a plane at different heights provided for the embodiments of the present application;

[0039] Figure 16B A method flowchart for generating a safety area based on plane profiles of different shapes and sizes at different heights provided for the embodiments of the present application;

[0040] Figure 17 A hardware structure diagram of a VR device provided for the embodiments of the present application. DETAILED DESCRIPTION

[0041] With the development of VR technology, VR devices (especially 6DOF VR all-in-one machines) are applied to various industries, especially the game field, greatly improving people's enjoyment in vision and hearing.

[0042] Referring to Figure 1A and Figure 1B, gives two common VR all-in-one machine schematic diagram on the market. The VR all-in-one machine contains a head-mounted display (HMD) with an independent processor, with independent operation, input and output functions, and the HMD can be externally connected to a handle, and the user controls the image screen displayed by the HMD through the operation of the handle.

[0043] When the user is in the power distribution VR device, the user's vision will be isolated from the real environment, and the user cannot know the situation of the real environment where the user is located. Therefore, during the VR experience process, there is a risk of collision and entanglement with the objects in the real environment. In order to ensure the safety of the user, most of the current VR devices support a safety area function. When the user moves outside the safety area, a corresponding warning prompt is given to help the user return to the inside of the safety area, so as to prevent the user from colliding with the objects in the real environment and being entangled, so as to ensure the safety of the user when experiencing the virtual scene like a visual feast.

[0044] At present, the safety area of the VR device is mainly a cylindrical safety area generated by vertically extending the closed curve drawn on the set horizontal plane by the handle. Therefore, the shape and size of the cross section of the cylindrical safety area at different heights are completely consistent, that is, the activity range of the safety area generated by the existing method at different heights is consistent.

[0045] However, in actual application, the activity range of the handle used to control the display screen of the head-mounted display is generally higher than the activity range of the user's legs, or the activity range of the user's steps has an obstacle, while the activity range of the handle has no obstacle. Therefore, if the cylindrical safety area is determined according to the activity range of the handle, the safety area is too large and may contain the obstacle at the user's feet, which endangers the safety of the user, as shown in Figure 2A If the cylindrical safety area is determined according to the activity range of the legs, the safety area is too small, the handle activity space is limited, and the user experience is affected, as shown in Figure 2B .

[0046] Therefore, no matter which activity range of the legs and the handle is used to generate the safety area, the size of the safety area is unreasonable. Therefore, the safety area with the shape and size of the cross section of the different height regions being completely consistent cannot fully utilize the current environment to create a reasonable game experience space for the user.

[0047] It should be noted that Figure 2A and Figure 2B The cylindrical safety area shown in and is only an example, and the embodiments of the present application do not have restrictive requirements on the shape of the safety area. For example, the cylindrical safety area can be a cylindrical safety area, and can also be a prismatic safety area.

[0048] In view of this, the embodiment of the present application provides a method and device for generating a safety area. The method can generate safety areas with different shapes and sizes at different heights, thereby being applicable to the scenario where a user experiences VR games in a sitting position or a stationary standing position, or the scenario where a user experiences VR games in a surrounding area without obstacles around a handle while the area at the feet of the user has obstacles and requires a larger activity space, and can provide a more reasonable activity space for the user under the premise of ensuring the safety of the user.

[0049] Referring to Figure 3 The method for generating a safety area provided by the embodiment of the present application has a flowchart, which is executed by a VR device and mainly includes the following steps:

[0050] S301: generating at least two planes at different heights and determining the plane profile of the safety area on each plane, the plane profiles of the safety areas on different planes being different in shape and size.

[0051] When using a VR device, to ensure the safety of a user, most VR devices are provided with binocular cameras (which can be RGB cameras or RGBD cameras), and the binocular cameras are turned on to enter a camera see-through mode. In the see-through mode, the user can perceive the real environment around, and the VR device creates a safety area for the user to move in when immersed in a virtual scene based on the real environment where the user is located.

[0052] In the process of generating a safety area, the plane profile of the safety area is usually determined first. In S301, the VR device can generate the plane profiles of safety areas with different shapes and sizes on planes at different heights. According to whether there is a user's operation, the embodiment of the present application provides two automatic and manual generation modes of the plane profile.

[0053] Automatic mode

[0054] In the embodiment of the present application, the plane profile of the safety area is automatically generated mainly by using the depth image collected by a multi-view camera. Referring to Figure 4 The method for automatically generating the plane profile of the safety area provided by the embodiment of the present application has a flowchart, which mainly includes the following steps:

[0055] S301_11: after entering the camera see-through mode, receiving a creation instruction for the plane profile of the safety area.

[0056] An optional implementation is that, in S301_11, after the VR device enters the camera perspective mode, two generation manners of the planar contour of the safety area are displayed on the display screen, the user sends a creation instruction of the planar contour of the safety area by clicking the option of the corresponding generation manner, and the VR device generates the planar contour of the safety area in the corresponding manner after receiving the creation instruction.

[0057] Another optional implementation is that each generation manner corresponds to a shortcut key. In S301_11, after the VR device enters the camera perspective mode, the creation instruction of the planar contour of the safety area is triggered by pressing the corresponding shortcut key, and the VR device generates the planar contour of the safety area in the generation manner corresponding to the shortcut key after receiving the creation instruction.

[0058] S301_12: When it is determined to generate the planar contour of the safety area in the automatic manner according to the creation instruction, a depth image in a set range collected by the multi-view camera of the VR device is obtained.

[0059] In S301_12, when the creation instruction received by the VR device indicates to automatically generate the planar contour of the safety area, a detection range is set, for example, a range with a center of the current position of the VR device and a length and width of 5 meters, and a depth image in the set range collected by the multi-view camera is obtained.

[0060] S301_13: Plane detection is performed according to the depth image to obtain a plane at the lowest height.

[0061] In S301_13, three-dimensional point cloud data of a real environment is extracted from the depth image, a random sample consensus (RANSAC) algorithm is used to perform plane detection on the three-dimensional point cloud data, and the detected ground is taken as the plane at the lowest height.

[0062] It should be noted that the manner of plane detection is not limited in the embodiments of the present application, and a trained deep learning network can also be used for detection.

[0063] S301_14: Feature points of an obstacle in the set range are extracted from the depth image, and the height of the obstacle is determined according to the extracted feature points.

[0064] In S301_14, when there is an obstacle (for example, a stool at the feet) that blocks the user's activities in the set range, the feature points of the obstacle extracted from the depth image can reflect the contour of the obstacle, the highest point of the obstacle can be determined according to the contour of the obstacle, and the height from the highest point to the ground can be determined. When there are multiple obstacles, the horizontal distance between the obstacles can also be determined according to the feature points of the obstacles.

[0065] S301_15: Create a plane at the height of the obstacle.

[0066] In S301_15, the plane identifier representing the safety area plane is moved to the height of the obstacle, and a plane of the safety area is automatically created at the height corresponding to the highest point of the obstacle.

[0067] S301_16: On each plane, determine the plane contour of the safety area according to a preset pattern.

[0068] In an embodiment of the present application, multiple planes can be automatically created according to the number and height of the obstacles, and the plane contour of the safety area in the preset pattern (such as a circle, a square, etc.) is generated for each plane at different heights (including the ground). The shape and size of the plane contour of the safety area on different planes are different.

[0069] For example, when there is an obstacle at the user's feet, the plane contour of the safety area on the plane at the lowest height (the ground) is a circle with a radius of 2 meters, and the plane contour of the safety area on the plane at the height of the highest point of the obstacle is a circle with a radius of 5 meters.

[0070] Manual mode

[0071] Generally, a VR device can be connected with a handle, and the user controls the image displayed by the head-mounted display by operating the handle. In an embodiment of the present application, the handle connected with the VR device is used to manually generate the plane contour of the safety area by drawing a line. See Figure 5 A flowchart of the method for manually generating the plane contour of the safety area according to an embodiment of the present application is provided, which mainly includes the following steps:

[0072] S301_21: After entering the camera perspective mode, receive the creation instruction of the plane contour of the safety area.

[0073] The detailed description of this step is described in S301_11, which is not repeated here.

[0074] S301_22: When it is determined to generate the plane contour of the safety area in the manual mode according to the creation instruction, determine the height of the plane according to the current height of the handle connected with the VR device.

[0075] In S301_22, when the plane contour of the safety area is generated in the manual mode, the handle is associated with a plane identifier for creating a plane, and the position height of the plane identifier changes with the change of the height of the handle. The user can determine the current height of the handle according to the current real environment, confirm the height of the plane identifier by pressing a specific key (such as a trigger key) of the handle, and take the current height of the plane identifier as the height of the plane.

[0076] S301_23: Obtain the intersection set of the ray of the handle and the plane at the current height, at a set distance interval.

[0077] In S301_23, the handle is pointed to the plane at the current height, and the handle is moved horizontally to draw a line. During the drawing process, the ray emitted by the handle intersects the plane at the current height. The three-dimensional coordinates of the intersection point can be recorded at a set distance interval (for example, every 5 cm), and a set of three-dimensional finite intersection points is obtained.

[0078] S301_24: Determine the plane profile of the safety area on the current plane according to the obtained intersection point set.

[0079] An optional implementation is that, in S301_24, the intersection points in the three-dimensional intersection point set are projected onto a plane to obtain a two-dimensional intersection point set, and edge points of the safety area on the current plane are extracted from the two-dimensional intersection point set. The edge points are connected in order of coordinate size to obtain the plane profile of the safety area on the current plane.

[0080] Another optional implementation is that, in S301_24, the pixel coordinates corresponding to the intersection points in the three-dimensional intersection point set in the depth image are determined, and each pixel coordinate is curve-fitted to generate the plane profile of the safety area on the current plane.

[0081] S301_25: In response to the vertical movement operation of the handle, the intersection set of the ray of the handle and the plane at the new height is re-obtained to determine the plane profile of the safety area on the plane at the new height.

[0082] In S301_25, the VR device determines the height of the next plane in response to the vertical movement operation of the handle, moves the handle horizontally at the determined new height, re-obtains the intersection set of the ray of the handle and the plane at the new height, and re-determines the plane profile of the safety area on the plane at the new height through S301_24 according to the new intersection point set.

[0083] It should be noted that the above automatic and manual methods for generating the plane profile of the safety area can be used independently or in combination.

[0084] In some embodiments, whether the automatic or manual method is used to generate the plane profile of the safety area, the safety of the safety area can be ensured by performing rationality detection on the plane at each height. The specific detection process is described in Figure 6 , which mainly includes the following steps:

[0085] S301_31: Extract three-dimensional point cloud data of the obstacle according to the depth image collected by the multi-camera of the VR device.

[0086] The depth image refers to an image taking distance from the RGBD camera to each point in the scene object as a pixel value, which directly reflects the geometry of the visible surface of the object. The depth image can obtain three-dimensional point cloud data of the object through point cloud conversion. This part is quite mature in the point cloud data extraction scheme and is not described here.

[0087] S301_32: For each plane, determine whether the obstacle passes through the plane according to the three-dimensional point cloud data. If the obstacle passes through the plane, perform S301_33, otherwise, perform S301_35.

[0088] In S301_32, according to the three-dimensional point cloud data of the obstacle, the longitudinal coordinate reflecting the height of each point of the obstacle can be obtained. For each plane, the absolute value of the longitudinal coordinate of the obstacle is compared with the height of the plane. If the absolute value of the longitudinal coordinate of the obstacle is greater than the height of the plane, it indicates that the obstacle passes through the plane, and the height of the plane is set unreasonably, and S301_33 should be performed. If the longitudinal coordinate of the obstacle is less than or equal to the height of the plane, it indicates that the obstacle does not pass through the plane, and the height of the plane is set reasonably, and S301_35 should be performed.

[0089] S301_33: Display the first prompt information and receive the first operation instruction corresponding to the first prompt information.

[0090] In S301_33, for each plane, if the obstacle passes through the plane, it indicates that the height of the plane is set unreasonably, and the height of the plane should be adjusted or the plane should be discarded to be recreated. Specifically, when the obstacle passes through the plane, the VR device displays the first prompt information to the user through the display screen. The user sends the first operation instruction of adjusting the height of the plane or recreating the plane to the VR device according to the first prompt information.

[0091] S301_34: Perform the first operation instruction to obtain the plane that does not pass through the obstacle.

[0092] In S301_34, when the first operation instruction is to adjust the height of the plane or to recreate the plane, the plane identifier is moved upward in a manual manner to raise the height of the plane, so that the plane at the adjusted height does not pass through the obstacle, thereby improving the rationality of creating the plane at different heights of the safety area. Under the premise of ensuring the safety of the user, the activity space of the safety area is maximally divided.

[0093] In some embodiments, after adjusting the height of the plane or recreating the plane each time, the rationality of the plane can be detected again.

[0094] S301_35: Complete the plane creation.

[0095] In S301_35, for each plane, if the obstacle does not pass through the plane, it indicates that the height of the plane is set reasonably, and the VR device can directly complete the creation of the plane of the safety area.

[0096] In some embodiments, for the plane that does not pass through the obstacle, the VR device can also show prompt information to the user, so that the user determines whether the height of the plane needs to be manually adjusted according to the current real environment to meet the rationality of the activity space.

[0097] After the plane profile of the safety area is created, the vertical boundary of the safety area is determined based on the plane profiles with different shapes and sizes at different heights, so as to complete the generation of the safety area. For details, refer to S302-S304.

[0098] S302: Determine whether the maximum height of the at least two planes is greater than the height threshold value. If yes, perform S303; if no, perform S304.

[0099] In the above embodiments of the present application, different shape and size plane profiles are generated on the planes at different heights. The connection mode of these plane profiles directly affects the vertical boundary of the safety area, and the maximum height of the at least two planes determines the height of the safety area, and further affects the activity space of the safety area. Therefore, the maximum height of the at least two planes can be compared with the set height threshold value, so as to determine whether the maximum height of the at least two planes meets the activity demand of the user.

[0100] The size of the height threshold value can be set according to actual needs. For example, the sum of the height of the human body and the length of the arm can be set as the height threshold value. For example, half of the height of the current real scene can also be set as the height threshold value.

[0101] S303: Generate the vertical boundary of the safety area according to the plane profiles of the safety area on two adjacent planes of the at least two planes.

[0102] In S303, when the maximum height of the at least two planes is greater than the height threshold value, the plane profiles of the safety area on two adjacent planes of the at least two planes can be vertically connected to obtain the vertical boundary of the closed safety area. According to different connection modes, the shape of the safety area is different.

[0103] Mode one

[0104] When a cylindrical closed safety area is to be generated, in the execution of S303, the vertical boundary of the safety area is generated by the flow shown in FIG. 3. Figure 7

[0105] ​S303_11: Determine if the current plane's height is the maximum height. If not, execute S303_12; otherwise, execute S303_13.

[0106] For example, with Figure 8 For example, three planes, 1, 2, and 3, with different heights are created. Plane 1 is the ground and has the lowest height. Plane 2 has a height greater than or equal to the height of the obstacle. Plane 3 has the highest height and is greater than the height threshold. When the current plane is plane 1 or plane 2, if the height of plane 1 or plane 2 is not the maximum height, S303_12 is executed; when the current plane is plane 3, S303_13 is executed.

[0107] S303_12: Extend the planar outline of the safe area on the current plane vertically upwards until it reaches the height of the previous plane, generating the vertical boundary of the safe area.

[0108] For two adjacent planes, the height of one plane can be used as the upper limit of the other plane in the vertical direction. (Continuing with...) Figure 8 For example, the planar contours on planes 1, 2, and 3 are circles of different sizes. Specifically, the planar contour of the safe area on plane 1 is a circle with a radius of 2m, the planar contour of the safe area on plane 2 is a circle with a radius of 5m, and the planar contour of the safe area on plane 3 is a circle with a radius of 5m. When the current plane is plane 1, plane 2 is the adjacent plane. The height of plane 2 is the upper limit of the vertical boundary generated based on the planar contour of the safe area on plane 1. In this case, the circular contour on plane 1 is extended vertically upwards until it reaches the height of plane 2, thus obtaining the first sub-vertical boundary between plane 1 and plane 2. When the current plane is plane 2, plane 3 is the adjacent plane. The height of plane 2 is the upper limit of the vertical boundary generated based on the planar contour of the safe area on plane 1. In this case, the circular contour on plane 2 is extended vertically upwards until it reaches the height of plane 3, thus obtaining the first sub-vertical boundary between plane 2 and plane 3.

[0109] S303_13: Stop vertical upward extension.

[0110] Still with Figure 8 For example, the height of plane 3 is the maximum height. The height of plane 3 is the final upper limit of the vertical boundary of the safe zone, and it can stop extending vertically upwards.

[0111] Method 2

[0112] When generating a frustum-shaped closed safety area, the following method is used when executing S303: Figure 9 The process shown generates the vertical boundary of the safety zone.

[0113] S303_21: Determine whether the planar contour shapes of the safety area on two adjacent planes are similar, if yes, execute S303_22, if no, execute S303_23.

[0114] S303_22: Directly vertically connect the planar contours of the safety area on two adjacent planes to generate the vertical boundary of the safety area.

[0115] When the planar contour shapes of the safety area on two adjacent planes are similar, the vertical connection of the planar contours can be directly performed. For example, two planes 1, 2 of different heights are created, and the planar contours of the safety area on the plane 1 and the plane 2 are similar in shape but different in size, wherein the plane 1 is the ground with the lowest height, and the plane 2 has the highest height and is greater than the height threshold value. At this time, the circular contours of the safety area on the plane 1 and the plane 2 are directly vertically connected to generate the vertical boundary of the safety area. Figure 10

[0116] S303_23: Vertically extend the planar contour of the safety area on the plane at a non-maximum height upward until the height of the upper plane is reached to generate the vertical boundary of the safety area.

[0117] Since the planar contour shapes of the safety area on two adjacent planes are not similar, even if the scaling of the planar contour is performed, the planar contours cannot be completely aligned. Therefore, the planar contour of the safety area on the plane at a non-maximum height can be vertically extended upward until the height of the upper plane is reached to generate the vertical boundary of the safety area.

[0118] S304: Generate the vertical boundary of the safety area according to the planar contours of the safety area on two adjacent planes in at least two planes and the planar contour of the safety area on the plane at a maximum height.

[0119] In S304, when the maximum height of at least two planes is less than or equal to the height threshold value, the planar contour of the safety area on the plane at the maximum height in at least two planes can be extended in the vertical direction to obtain the vertical boundary of the open safety area with a height meeting the requirement. Different connection methods of the planar contours of the safety area on two adjacent planes are used to generate safety areas with different shapes.

[0120] Method three

[0121] When a cylindrical open safety area is to be generated, in the execution of S304, the vertical boundary of the safety area is generated by using the flowchart shown in Figure 11

[0122] S304_11: Determine whether the height of the current plane is the maximum height, if no, execute S304_12, if yes, execute S304_13. ​​

[0123] For example, two planes 1, 2 of different heights are created, where the plane 1 is the ground with the lowest height, and the height of the plane 2 is greater than or equal to the height of the obstacle but less than the height threshold. When the current plane is the plane 1, S304_12 is executed; when the current plane is the plane 2, S304_13 is executed. Figure 12

[0124] S304_12: vertically extend the plane profile of the safety area on the current plane upward until the height of the upper plane is reached, to generate a first sub-vertical boundary between the two adjacent planes.

[0125] Still taking Figure 12 as an example, the plane profiles on the planes 1, 2 are circles of different sizes, where the plane profile of the safety area on the plane 1 is a circle with a radius of 2 m, and the plane profile of the safety area on the plane 2 is a circle with a radius of 5 m. When the current plane is the plane 1, the plane 2 as the adjacent plane, the height of the plane 2 is the upper limit for generating the vertical boundary based on the plane profile of the safety area on the plane 1, at this time, the circle profile on the plane 1 is vertically extended upward until the height of the plane 2 is reached, to obtain the first sub-vertical boundary between the plane 1 and the plane 2.

[0126] S304_13: vertically extend the plane profile of the safety area on the current plane upward by a set height, to generate a second sub-vertical boundary of the plane at the maximum height.

[0127] Still taking Figure 12 as an example, the height of the plane 2 is the maximum height in the two planes but less than the height threshold, which does not meet the activity requirements, so the circle profile on the plane 2 is vertically extended upward by 3 m, to obtain the second sub-vertical boundary of the safety area corresponding to the plane 2.

[0128] S304_14: determine the first sub-vertical boundary and the second sub-vertical boundary as the vertical boundary of the safety area.

[0129] Method four

[0130] When the opening safety area in the shape of a frustum of a cone is to be generated, in the execution of S304, the vertical boundary of the safety area is generated by the flow shown in Figure 13

[0131] S304_21: determine whether the shapes of the plane profiles of the safety areas on the two adjacent planes are similar, if yes, S304_22 is executed, if not, S304_23 is executed.

[0132] ​​S304_22: directly connecting the planar contours of the safety area on two adjacent planes vertically, and extending the planar contour of the safety area on the plane at the maximum height vertically upward by a set height, to generate the vertical boundary of the safety area.

[0133] When the planar contours of the safety area on two adjacent planes are similar in shape, the planar contours can be directly connected vertically. For example, as shown in Figure 14 , two planes 1, 2 of different heights are created, and the planar contours of the safety area on the plane 1 and the plane 2 are similar in shape but different in size, where the plane 1 is the ground and has the lowest height, and the height of the plane 2 is greater than or equal to the height of the obstacle but less than the height threshold. At this time, the circular contours of the safety area on the plane 1 and the plane 2 are directly connected vertically, and the circular contour of the safety area on the plane 2 is extended vertically upward by 3m, to obtain the vertical boundary of the safety area.

[0134] S304_23: extending the planar contour of the safety area on the plane at a non-maximum height vertically upward until the height of the upper plane, and extending the planar contour of the safety area on the plane at the maximum height vertically upward by a set height, to generate the vertical boundary of the safety area.

[0135] Since the planar contours of the safety area on two adjacent planes are not similar in shape, even if the planar contours are scaled, they cannot be completely aligned, so the planar contour of the safety area on the plane at a non-maximum height can be extended vertically upward until the height of the upper plane, and the planar contour of the safety area on the plane at the maximum height can be extended vertically upward by a set height, to generate the vertical boundary of the safety area.

[0136] It should be noted that when the processes shown in Figure 7 , 9 , 11, and 13 are used to generate the boundary of the safety area, in addition to generating the vertical boundary of the safety area from bottom to top, the vertical boundary of the safety area can also be created from top to bottom.

[0137] S305: generating the safety area according to the at least two planar contours and the vertical boundary.

[0138] In the embodiments of the present application, the planar contours of the safety area at different heights determine the horizontal activity range of the safety area at different heights, and the vertical connection or vertical extension between the planar contours determines the vertical activity range of the safety area. By using the connection modes shown in Figure 7 and Figure 9 , a closed safety area with different cross-sectional shapes and sizes can be obtained, as shown in Figure 8 and Figure 10 , by using Figure 11 and Figure 13The connection mode shown can obtain an open safety area with different cross-sectional shape and size, such as Figure 12 and Figure 14 as shown.

[0139] In some embodiments, every time a vertical boundary of a safety area between two planes is generated, or every time a vertical boundary of a plane extension at the maximum height is generated, it can be detected whether the vertical boundary passes through the obstacle, to ensure that the obstacle does not enter the safety area to threaten the safety of the user. The specific detection process is described in Figure 15 , which mainly includes the following steps:

[0140] S1501: According to the depth image collected by the multi-view camera of the VR device, three-dimensional point cloud data of the obstacle is extracted.

[0141] The scheme for extracting three-dimensional point cloud data from a depth image is already quite mature and is not described here.

[0142] S1502: According to the three-dimensional point cloud data, it is determined whether the obstacle passes through the boundary, and if so, S1503 is performed, otherwise, S1505 is performed.

[0143] In the above process of generating the boundary of the safety area in the vertical direction, the line between the plane profiles on the adjacent two planes or the extension line of the plane profile on a single plane constitutes the boundary of the safety area. For each boundary, in S1502, according to the extracted three-dimensional point cloud data of the obstacle, the horizontal coordinate reflecting the width of each point of the obstacle can be obtained. For each boundary, the horizontal coordinate of the obstacle is compared with the minimum horizontal coordinate of the boundary, and if the absolute value of the horizontal coordinate of the obstacle is less than the absolute value of the minimum horizontal coordinate of the boundary, it is determined that the obstacle passes through the boundary, indicating that the height setting of the plane associated with the boundary is unreasonable, or the size of the plane profile of the safety area is unreasonable.

[0144] S1503: Displaying a second prompt information and receiving a second operation instruction corresponding to the second prompt information.

[0145] In S1503, for each boundary, if the obstacle passes through the boundary, it indicates that the height setting of the plane associated with the boundary is unreasonable, or the size of the plane profile of the safety area is unreasonable, and the second prompt information should be displayed to the user. The VR device adjusts the height or shape size of the plane profile associated with the boundary according to the second operation instruction fed back by the user to the second prompt information, or re-creates the plane.

[0146] S1504: Executing the second operation instruction so that the newly generated boundary does not pass through the obstacle.

[0147] In S1504, the VR device adjusts the height, shape size, or recreates the plane associated with the boundary so that the newly generated boundary is not crossed by the obstacle, thereby improving the rationality of creating a plane profile of different shapes at different heights for the safety area and protecting the user's safety.

[0148] S1505: completion of the generation of the safety area.

[0149] In S1505, for each boundary, if the obstacle does not cross the boundary, it indicates that the generated safety area can guarantee the user's safety, and the generation of the safety area is completed.

[0150] The safety area generation method provided in the above embodiments of the present application generates at least two planes at different heights, and the shapes and sizes of the safety areas on different planes are different, thereby flexibly determining multiple activity ranges of the safety area in the horizontal direction. When the maximum height of the at least two planes is greater than the height threshold, a closed safety area in the shape of a cylinder or a frustum is generated by way one and way two, as shown in Figure 8 and Figure 10 When the maximum height of the at least two planes is less than or equal to the height threshold, whether the plane profiles of the safety areas on adjacent two planes are similar is determined, and a cylinder or a frustum-shaped open safety area is generated by way three or way four, as shown in Figure 12 and Figure 14 Regardless of the way in which the safety area is generated, because the shapes and sizes of the plane profiles of the safety areas on the planes at different heights are different, the safety area with different activity space sizes at different heights can be flexibly obtained when the vertical boundary of the safety area is generated based on the plane profile, thereby being applicable to the scenario in which the user experiences VR games in a sitting or stationary standing posture, or the scenario in which the user experiences VR games when the area around the handle has no obstacle while the area at the feet has an obstacle, and can provide the user with a more reasonable activity space under the premise of guaranteeing the user's safety.

[0151] Referring to Figure 16A and Figure 16B , a complete safety area generation method flowchart is provided for the embodiments of the present application, which mainly includes the following steps:

[0152] S1601: enter the camera perspective mode and start the creation of the safety area.

[0153] S1602: determine whether to customize the plane height of the safety area, if yes, perform S1603, otherwise, perform S1608.

[0154] S1603: acquire the depth image in the set range collected by the multi-camera of the VR device.

[0155] S1604: Determine whether the creation of the ground plane is completed, if not, execute S1605, if yes, execute S1606.

[0156] S1605: Perform plane detection according to the depth image, take the plane at the lowest height within the set range as the ground plane, and generate the plane contour of the safety area on the ground plane based on the set first contour information.

[0157] The first contour information includes the shape of the contour and the size of the shape, such as a circle with a radius of 2m.

[0158] S1606: Extract feature points of the obstacles within the set range from the depth image, and determine the height of the obstacles according to the extracted feature points.

[0159] S1607: Determine the height of the plane according to the height of the obstacles, and create a plane at the height, and generate the plane contour of the safety area on the plane based on the set second contour information.

[0160] S1608: Determine the height of the plane according to the current height of the handle connected to the VR device.

[0161] S1609: Obtain the intersection set of the ray of the handle and the plane at the current height at a set distance interval.

[0162] S1610: Determine the plane contour of the safety area on the current plane according to the obtained intersection set.

[0163] S1611: In response to the vertical movement operation of the handle, re-obtain the intersection set of the ray of the handle and the plane at the new height to determine the plane contour of the safety area on the plane at the new height.

[0164] S1612-S1613: For each height of the plane, extract the three-dimensional point cloud data of the obstacles from the depth image, and determine whether the obstacles pass through the plane according to the three-dimensional point cloud data, if yes, execute S1614, if not, execute S1615.

[0165] S1614: Display the first prompt information.

[0166] S1615: Show the user inquiry information on whether to adjust the height of the plane, if the feedback to the inquiry information is adjustment, execute S1616, if the feedback to the inquiry information is no adjustment, execute S1617.

[0167] S1616: Adjust the height of the plane in a manual manner, and return to S1612 to re-detect the passing of the obstacles.

[0168] S1617: complete the confirmation of the plane height.

[0169] After completing the horizontal profile of creating the safety area on the plane at different heights, the vertical boundary of the safety area is generated next.

[0170] S1618: for the created at least two planes, determine whether the plane profiles of the safety area on the adjacent two planes are connected, if not connected, execute S1619, if connected, execute S1621.

[0171] S1619: determine whether the plane profile shapes of the safety area on the two adjacent planes are similar, if similar, execute S1620, otherwise, execute S1626.

[0172] S1620: directly vertically connect the plane profiles of the safety area on the two adjacent planes to generate the vertical boundary of the safety area.

[0173] S1621: determine whether the maximum height of the at least two planes is greater than a height threshold, if yes, a closed safety area is obtained, if not, execute S1622.

[0174] S1622: vertically extend the plane profile of the safety area on the plane at the maximum height by a set height to generate an open safety area.

[0175] S1623: for each vertical boundary, determine whether the obstacle passes through the boundary according to the three-dimensional point cloud data, if yes, execute S1624, otherwise, complete the generation of the safety area.

[0176] S1624: display a second prompt information.

[0177] S1625: according to the feedback of the user to the second prompt information, adjust the height of the plane associated with the vertical boundary, or the shape and size of the plane profile, or discard the plane associated with the boundary to create again.

[0178] S1626: vertically extend the plane profile of the safety area on the plane at the current height until extending to the height of the previous plane, and execute S1621.

[0179] Based on the same technical concept, the embodiment of the present application provides a VR device, which can implement the steps of the safety area generation method in the above-mentioned embodiment and achieve the same technical effects.

[0180] Referring to Figure 17 , the VR device comprises a processor 1701 and a memory 1702, the memory 1702 is connected with the processor 1701 through a bus 1703;

[0181] The memory 1702 stores a computer program, and the processor 1701 executes the following operations according to the computer program:

[0182] At least two planes of different heights are generated, and a plane profile of the safety area on each plane is determined, and the plane profiles of the safety area on different planes are different in shape and size;

[0183] If the maximum height of the at least two planes is greater than the height threshold, a vertical boundary of the safety area is generated according to the plane profiles of the safety area on two adjacent planes in the at least two planes;

[0184] If the maximum height of the at least two planes is less than or equal to the height threshold, a vertical boundary of the safety area is generated according to the plane profiles of the safety area on two adjacent planes in the at least two planes and the plane profile of the safety area on the plane at the maximum height;

[0185] The safety area is generated according to the at least two plane profiles and the vertical boundary.

[0186] Optionally, the VR device further includes a multi-view camera 1704, and the processor 1701 generates at least two planes of different heights and determines a plane profile of the safety area on each plane, and the specific operation is as follows:

[0187] If the plane profile of the safety area is generated in an automatic manner, a depth image in a set range collected by the multi-view camera 1704 is obtained;

[0188] Plane detection is performed according to the depth image to obtain a plane at the lowest height;

[0189] Feature points of an obstacle in the set range are extracted from the depth image, and the height of the obstacle is determined according to the feature points;

[0190] A plane is created at the height of the obstacle;

[0191] On each plane, a plane profile of the safety area is determined according to a preset pattern.

[0192] Optionally, the VR device further includes a communication interface 1705, and is connected with a handle through the communication interface 1705, and the processor 1701 generates at least two planes of different heights and determines a plane profile of the safety area on each plane, and the specific operation is as follows:

[0193] If the plane profile of the safety area is generated in a manual manner, the height of the plane is determined according to the current height of the handle;

[0194] A set of intersection points of a ray of the handle and the plane at the current height is obtained at a set distance interval.

[0195] According to the intersection set, a plane profile of a safe area on the plane is determined;

[0196] In response to the vertical movement operation of the handle, the intersection set of the ray of the handle and the plane at a new height is re-acquired to determine a plane profile of a safe area on the plane at the new height.

[0197] Optionally, after the at least two planes at different heights are generated, the processor 1701 further performs:

[0198] According to the depth image captured by the multi-view camera 1704, three-dimensional point cloud data of the obstacle is extracted;

[0199] For each plane, according to the three-dimensional point cloud data, it is determined whether the obstacle passes through the plane;

[0200] If the obstacle passes through the plane, a first prompt information is displayed, and a first operation instruction corresponding to the first prompt information is received;

[0201] The first operation instruction is executed to obtain a new plane that does not pass through the obstacle.

[0202] Optionally, the processor 1701 generates a vertical boundary of the safe area according to the plane profiles of the safe areas on two adjacent planes in the at least two planes, and specifically performs:

[0203] It is determined whether the height of the current plane is the maximum height;

[0204] If not, the plane profile of the safe area on the current plane is extended vertically upward until the height of the previous plane, and a vertical boundary of the safe area is generated.

[0205] Optionally, the processor 1701 generates a vertical boundary of the safe area according to the plane profiles of the safe areas on two adjacent planes in the at least two planes, and specifically performs:

[0206] It is determined whether the plane profiles of the safe areas on the two adjacent planes are similar;

[0207] If similar, the plane profiles of the safe areas on the two adjacent planes are directly connected vertically to generate a vertical boundary of the safe area;

[0208] If not similar, the plane profile of the safe area on the plane at a non-maximum height is extended vertically upward until the height of the previous plane, and a vertical boundary of the safe area is generated.

[0209] Optionally, the processor 1701 generates the vertical boundary of the safety area according to the plane profile of the safety area on two adjacent planes in the at least two planes and the plane profile of the safety area on the plane at the maximum height, and specifically performs the following operations:

[0210] determines whether the height of the current plane is the maximum height;

[0211] if not, extends the plane profile of the safety area on the current plane vertically upward until the height of the plane on which the previous plane is located, to generate a first sub-vertical boundary between the two adjacent planes;

[0212] if yes, extends the plane profile of the safety area on the current plane vertically upward by a set height, to generate a second sub-vertical boundary of the plane at the maximum height;

[0213] determines the first sub-vertical boundary and the second sub-vertical boundary as the vertical boundary of the safety area.

[0214] Optionally, the processor 1701 generates the vertical boundary of the safety area according to the plane profile of the safety area on two adjacent planes in the at least two planes and the plane profile of the safety area on the plane at the maximum height, and specifically performs the following operations:

[0215] determines whether the plane profile shapes of the safety area on the two adjacent planes are similar;

[0216] if similar, directly connects the plane profiles of the safety area on the two adjacent planes vertically, and extends the plane profile of the safety area on the plane at the maximum height vertically upward by a set height, to generate the vertical boundary of the safety area;

[0217] if not similar, extends the plane profile of the safety area on the plane at the non-maximum height vertically upward until the height of the plane on which the previous plane is located, and extends the plane profile of the safety area on the plane at the maximum height vertically upward by a set height, to generate the vertical boundary of the safety area.

[0218] Optionally, for each vertical boundary, the processor 1701 further performs the following operations:

[0219] extracts three-dimensional point cloud data of an obstacle according to the depth image captured by the multi-view camera 1704;

[0220] determines whether the obstacle passes through the boundary according to the three-dimensional point cloud data;

[0221] if yes, displays a second prompt information and receives a second operation instruction corresponding to the second prompt information;

[0222] The second operation instruction is executed so that the newly generated boundary does not pass through the obstacle.

[0223] It should be noted that, Figure 17 This is only an example, and the hardware necessary for the VR device to execute the method steps of generating a safety area provided by the embodiments of the present application is not shown. The VR device also includes common hardware of display devices, such as left and right lenses, a display screen, a speaker, a microphone, and the like.

[0224] The embodiments of the present application Figure 17 The processor involved in the embodiments of the present application can be a central processing unit (CPU), a general-purpose processor, a graphics processing unit (GPU), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof.

[0225] The embodiments of the present application also provide a computer-readable storage medium for storing some instructions, which can complete the method of the foregoing embodiments when executed.

[0226] The embodiments of the present application also provide a computer program product for storing a computer program, which is used to execute the method of the foregoing embodiments.

[0227] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage, etc.) containing computer-usable program code.

[0228] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks.

[0229] These computer program instructions can also be stored in a computer- readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instructions which implement the function specified in the flowchart block or blocks.

[0230] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks.

[0231] Obviously, numerous modifications and variations of the present application are possible in light of the above teachings. It is therefore to be understood that within the scope of the claims and their equivalents, the application can be practiced otherwise than as specifically described.

Claims

1. A method of generating a secure area, characterized by, The method applied to a VR device comprises: generating at least two planes at different heights surrounding a user, and determining a plane profile of a safe area on each plane, the plane profile of the safe area on different planes being different in shape and size; if a maximum height of the at least two planes is greater than a height threshold, generating a vertical boundary of the safe area according to the plane profiles of the safe area on two adjacent planes of the at least two planes, and generating a closed safe area in combination with the at least two plane profiles; if the maximum height of the at least two planes is less than or equal to the height threshold, generating a vertical boundary of the safe area according to the plane profiles of the safe area on two adjacent planes of the at least two planes and the plane profile of the safe area on the plane at the maximum height, and generating an open safe area in combination with the at least two plane profiles.

2. The method of claim 1, wherein, The generating of the at least two planes at different heights surrounding the user and the determining of the plane profile of the safe area on each plane comprise: if the plane profile of the safe area is generated in an automatic manner, obtaining a depth image within a set range collected by a multi-camera of the VR device; performing plane detection according to the depth image to obtain a plane at a lowest height; extracting feature points of an obstacle within the set range from the depth image, and determining a height of the obstacle according to the feature points; creating a plane at the height of the obstacle; on each plane, determining the plane profile of the safe area according to a preset pattern.

3. The method of claim 1, wherein, The generating of the at least two planes at different heights surrounding the user and the determining of the plane profile of the safe area on each plane comprise: if the plane profile of the safe area is generated in a manual manner, determining a height of a plane according to a current height of a handle connected to the VR device; obtaining a set of intersection points of a ray of the handle and the plane at the current height at a set distance interval; determining the plane profile of the safe area on the plane according to the set of intersection points; in response to a vertical movement operation of the handle, re-obtaining a set of intersection points of a ray of the handle and a plane at a new height to determine the plane profile of the safe area on the plane at the new height.

4. The method according to any one of claims 1 to 3, characterized in that, After the generation of the at least two planes at different heights surrounding the user, the method further comprises: extracting three-dimensional point cloud data of an obstacle from a depth image collected by a multi-camera of the VR device; for each plane, determining whether the obstacle passes through the plane according to the three-dimensional point cloud data; if the obstacle passes through the plane, displaying a first prompt information, and receiving a first operation instruction corresponding to the first prompt information; executing the first operation instruction to obtain a new plane that is not passed through by the obstacle.

5. The method of claim 1, wherein, The generating of the vertical boundary of the safe area according to the plane profiles of the safe area on two adjacent planes of the at least two planes comprises: determining whether a height of a current plane is a maximum height; if not, extending the plane profile of the safe area on the current plane vertically upward until the height of a previous plane to generate a vertical boundary of the safe area.

6. The method of claim 1, wherein, The generating the vertical boundary of the safety area according to the plane profiles of the safety areas on two adjacent planes in the at least two planes and the plane profile of the safety area on the plane at the maximum height comprises: determining whether the plane profiles of the safety areas on the two adjacent planes are similar in shape; if yes, directly connecting the plane profiles of the safety areas on the two adjacent planes vertically to generate the vertical boundary of the safety area; if not, extending the plane profile of the safety area on the plane at a height other than the maximum height vertically upward until extending to the height of the plane above to generate the vertical boundary of the safety area.

7. The method of claim 1, wherein, The generating the vertical boundary of the safety area according to the plane profiles of the safety areas on two adjacent planes in the at least two planes and the plane profile of the safety area on the plane at the maximum height comprises: determining whether the height of the current plane is the maximum height; if not, extending the plane profile of the safety area on the current plane vertically upward until extending to the height of the plane above to generate a first sub-vertical boundary between the two adjacent planes; if yes, extending the plane profile of the safety area on the current plane vertically upward by a set height to generate a second sub-vertical boundary of the plane at the maximum height; determining the first sub-vertical boundary and the second sub-vertical boundary as the vertical boundary of the safety area.

8. The method of claim 1, wherein, The generating the vertical boundary of the safety area according to the plane profiles of the safety areas on two adjacent planes in the at least two planes and the plane profile of the safety area on the plane at the maximum height comprises: determining whether the plane profiles of the safety areas on the two adjacent planes are similar in shape; if yes, directly connecting the plane profiles of the safety areas on the two adjacent planes vertically, and extending the plane profile of the safety area on the plane at the maximum height vertically upward by a set height to generate the vertical boundary of the safety area; if not, extending the plane profile of the safety area on the plane at a height other than the maximum height vertically upward until extending to the height of the plane above, and extending the plane profile of the safety area on the plane at the maximum height vertically upward by a set height to generate the vertical boundary of the safety area.

9. The method of any one of claims 1-3, 5-8, wherein, For each vertical boundary, the method further comprises: extracting three-dimensional point cloud data of the obstacle according to a depth image captured by a multi-view camera of the VR device; determining whether the obstacle passes through the boundary according to the three-dimensional point cloud data; if yes, displaying a second prompt information, and receiving a second operation instruction corresponding to the second prompt information; executing the second operation instruction so that the newly generated boundary does not pass through the obstacle.

10. A VR device, comprising: A device comprises a processor and a memory connected with the processor through a bus: the memory stores a computer program, and the processor executes the following operations according to the computer program: generating at least two planes at different heights surrounding a user, and determining a plane profile of a safety area on each plane, the plane profiles of the safety areas on different planes being different in shape and size; if the maximum height of the at least two planes is greater than a height threshold, generating vertical boundaries of the safety region according to the plane profile of the safety region on two adjacent planes of the at least two planes, and generating a closed safety region in combination with the at least two plane profiles; if the maximum height of the at least two planes is less than or equal to the height threshold, generating vertical boundaries of the safety region according to the plane profile of the safety region on two adjacent planes of the at least two planes and the plane profile of the safety region on the plane at the maximum height, and generating an open safety region in combination with the at least two plane profiles.

Citation Information

Patent Citations

  • Method and device for setting security area, VR equipment and storage medium

    CN111243103A

  • Systems and methods for determining a safety boundary for a mobile artificial reality user

    US10535199B1