Virtual reality data processing method and device, virtual reality equipment and storage medium
By determining the processing delay time and adjusting the processing frequency in virtual reality data processing, the problem of out-of-synchronization of view angle switching caused by data processing delay is solved, and a better user experience and perspective switching effect is achieved.
Patent Information
- Application Number
- CN202510087935.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-20
- Publication Date
- 2025-05-13
AI Technical Summary
When processing virtual reality data, data processing delays are prone to occur in the prior art, resulting in the movement of human postures and viewing angle switching from the same to the synchronization, and the user experience is poor.
By determining the processing delay time of the human posture data and matching the corresponding target processing frequency, which is negatively correlated with the delay time, the processing frequency is adjusted to a target frequency greater than the preset minimum processing frequency.
In the case of large delays, the processing frequency is reduced to alleviate the pressure of system data processing, promote the system to return to normal, and ensure that the human posture data processing frequency meets the display requirements by presetting the minimum processing frequency, avoiding sudden switching of view angles, and ensuring a good switching effect of view angles.
Smart Images

Figure CN119991905A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of virtual reality, and in particular to a virtual reality data processing method, device, virtual reality equipment and storage medium. Background Art
[0002] When a user uses a virtual reality device, he or she can adjust the viewing angle displayed in the virtual reality device by changing his or her own posture. In actual use, human posture data is collected at high speed, and the viewing angle is switched at high speed based on the human posture data. When data processing delay occurs, the existing processing methods either delay the analysis of human posture data one by one, which will cause the movement of human posture and the viewing picture to be out of sync; or directly discard the data at the time of congestion, which will cause sudden switching between continuous pictures. The above methods cannot achieve good viewing angle switching, and the user experience is poor. Summary of the invention
[0003] The main purpose of the present invention is to propose a virtual reality data processing method, device, virtual reality equipment and storage medium, aiming to solve the problem in the prior art that it is difficult to achieve good perspective switching under data processing delay.
[0004] To achieve the above object, the present invention provides a virtual reality data processing method, the method comprising the steps of:
[0005] Determine the processing delay time of human posture data;
[0006] matching a target processing frequency corresponding to the processing delay time, wherein the target processing frequency is negatively correlated with the processing delay time;
[0007] The processing frequency of the human posture data is adjusted to the target processing frequency, wherein the target processing frequency is greater than a preset minimum processing frequency.
[0008] Optionally, the determining of the processing delay time of the human body posture data includes:
[0009] Acquire the collection time of the human body posture data and the system time when the human body posture data is processed;
[0010] Calculating the time difference between the acquisition time and the system time;
[0011] The time difference is used as the processing delay time.
[0012] Optionally, the taking the time difference as the processing delay time includes:
[0013] Determining a current processing cycle, wherein the current processing cycle includes a plurality of the human body posture data;
[0014] Calculate the average difference of the time differences corresponding to each of the human posture data;
[0015] The average difference is used as the processing delay time.
[0016] Optionally, the matching of the target processing frequency corresponding to the processing delay time includes:
[0017] matching a frequency adjustment parameter corresponding to the processing delay time, wherein the frequency adjustment parameter is negatively correlated with the processing delay time;
[0018] Obtaining a current processing frequency of the human body posture data;
[0019] The current processing frequency is adjusted using the frequency adjustment parameter to obtain the target processing frequency.
[0020] Optionally, the target processing frequency includes a target acquisition frequency, and adjusting the processing frequency of the human posture data to the target processing frequency includes:
[0021] The collection frequency of the human body posture data is set to the target collection frequency.
[0022] Optionally, the target processing frequency includes a target processing quantity, and adjusting the processing frequency of the human posture data to the target processing frequency includes:
[0023] Determining a current processing cycle, wherein the current processing cycle includes a plurality of the human body posture data;
[0024] Determining target processing data in the human body posture data included in the current processing cycle, wherein the number of the target processing data is the target processing number;
[0025] The target processed data is used as human body posture data adopted for perspective switching.
[0026] Optionally, determining target processing data from the human body posture data included in the current processing cycle includes:
[0027] Determine a change difference corresponding to each of the human body posture data, wherein the change difference is a data difference between the average value of the human body posture data in the previous processing cycle;
[0028] The human body posture data with the larger change difference is used as the target processing data, wherein the number of the target processing data is the target processing number.
[0029] To achieve the above object, the present invention further provides a virtual reality data processing device, the virtual reality data processing device comprising:
[0030] A first determination module, used to determine the processing delay time of human posture data;
[0031] A first matching module, configured to match a target processing frequency corresponding to the processing delay time, wherein the target processing frequency is negatively correlated with the processing delay time;
[0032] The first adjustment module is used to adjust the processing frequency of the human posture data to the target processing frequency, wherein the target processing frequency is greater than a preset minimum processing frequency.
[0033] To achieve the above-mentioned purpose, the present invention also provides a virtual reality device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and the computer program, when executed by the processor, implements the steps of the virtual reality data processing method as described above.
[0034] To achieve the above-mentioned object, the present invention further provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the virtual reality data processing method as described above are implemented.
[0035] The present invention proposes a virtual reality data processing method, device, virtual reality equipment and storage medium, which determine the processing delay time of human posture data; match the target processing frequency corresponding to the processing delay time, wherein the target processing frequency is negatively correlated with the processing delay time; and adjust the processing frequency of the human posture data to the target processing frequency, wherein the target processing frequency is greater than the preset minimum processing frequency. By adjusting the processing frequency of the human posture data based on the processing delay time, the processing frequency can be reduced in the event of a large delay, thereby alleviating the data processing pressure of the system and enabling the system to return to normal more quickly. At the same time, a preset minimum processing frequency is set to limit the degree of reduction in the processing frequency, ensuring that the processing frequency of the human posture data meets the display requirements, avoiding the situation where the viewing angle suddenly switches, and ensuring a good viewing angle switching. BRIEF DESCRIPTION OF THE DRAWINGS
[0036] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
[0037] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0038] Figure 1 This is a flowchart of a first embodiment of a virtual reality data processing method of the present invention;
[0039] Figure 2 It is a structural diagram of the devices in the virtual reality data processing device of the present invention;
[0040] Figure 3 It is a schematic diagram of the overall process of IMU in the virtual reality data processing method of the present invention;
[0041] Figure 4 It is a schematic diagram of the overall process of MCU in the virtual reality data processing method of the present invention;
[0042] Figure 5 It is a schematic diagram of the module structure of the virtual reality device of the present invention. DETAILED DESCRIPTION
[0043] It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention. In order to enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only embodiments of a part of the present application, not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without making creative work should fall within the scope of protection of the present application.
[0044] The present invention provides a virtual reality data processing method, referring to Figure 1 , Figure 1 This is a flow chart of a first embodiment of a method for processing virtual reality data according to the present invention. The method comprises the following steps:
[0045] Step S10, determining the processing delay time of the human body posture data;
[0046] The virtual reality described in this application may be, but is not limited to, VR (Virtual Reality), AR (Augmented Reality), and XR (Extended Reality).
[0047] Human body posture data is data obtained by detecting the user's posture; the method for obtaining human body posture data can be set based on actual needs, such as setting an IMU (Inertial Measurement Unit) on a virtual reality device, and then obtaining human body posture data based on the detection data output by the IMU.
[0048] When a virtual reality device is used, in addition to the IMU, it also includes at least a CPU (Central Processing Unit) and a screen; the CPU obtains display data, and determines the viewing angle corresponding to the display data through the human posture data sent by the IMU to obtain a viewing angle image, and sends the viewing angle image to the screen for display, thereby achieving the effect that the screen display viewing angle changes with the user's posture.
[0049] The delayed processing time is the time from when the human posture data is collected to when it is processed. It is understandable that a data processing module, such as a CPU, is provided in the virtual reality device. The IMU sends the collected human posture data to the CPU and stores it in the CPU cache first. The CPU switches the perspective based on the human posture data in the cache. In this process, due to the IMU itself or related reasons on the transmission channel, the time for the human posture data to be transmitted from the IMU to the CPU cache may become longer. At the same time, due to the high processing pressure of the CPU and other reasons, the time between when the human posture data is stored in the cache and when the CPU obtains the human posture data from the cache will become longer. That is, under the influence of multiple reasons, the delayed processing time will be different.
[0050] Step S20, matching a target processing frequency corresponding to the processing delay time, wherein the target processing frequency is negatively correlated with the processing delay time;
[0051] The processing frequency is the frequency at which the CPU processes the human posture data. It is understandable that the higher the processing frequency, the more human posture data the CPU processes in the same time, the higher the frequency of view switching, the better the view display tracking effect, and the more data the CPU processes, the more likely it is to cause an increase in delay processing time.
[0052] The target processing frequency is the processing frequency that needs to be set based on the current processing delay time; in this embodiment, the target processing frequency and the processing delay time are set to be negatively correlated, that is, the larger the processing delay time, the smaller the target processing frequency is set, and the smaller the amount of human posture data processed by the CPU, thereby reducing the processing pressure of the CPU, so that the processing delay time can be reduced as soon as possible; and the smaller the processing delay time, the larger the target processing frequency is set, and the larger the amount of human posture data processed by the CPU, thereby improving the effect of perspective switching. The specific correspondence between the processing delay time and the target processing frequency can be set based on actual needs.
[0053] Step S30, adjusting the processing frequency of the human posture data to the target processing frequency, wherein the target processing frequency is greater than a preset minimum processing frequency.
[0054] After the target processing frequency is determined, the processing frequency of the CPU for the human posture data can be set to the target processing frequency, so that the processing frequency of the CPU matches the current processing delay time.
[0055] The preset minimum processing frequency is the minimum processing frequency allowed; it is understandable that when the processing frequency is too low, the frequency of viewing angle switching is also too low, resulting in screen freeze. Therefore, in order to avoid this problem, the preset minimum processing frequency is set in this embodiment, and the target processing frequency is greater than the preset minimum processing frequency, thereby ensuring the minimum frequency of viewing angle switching and avoiding the problem of screen freeze. The specific value of the preset minimum processing frequency can be set based on the processing capacity and needs of the actual device. For example, the maximum viewing angle switching interval acceptable to the human eye can be determined in advance through experiments, and the processing frequency at this time can be used as the preset minimum processing frequency.
[0056] This embodiment adjusts the processing frequency of human posture data based on the processing delay time, so that when a large delay occurs, the processing frequency can be reduced, thereby alleviating the data processing pressure of the system and enabling the system to return to normal more quickly. At the same time, a preset minimum processing frequency is set to limit the degree of reduction in the processing frequency, ensuring that the processing frequency of human posture data meets the display requirements, avoiding sudden switching of viewing angles, and ensuring good viewing angle switching.
[0057] Furthermore, in the second embodiment of the virtual reality data processing method of the present invention proposed based on the first embodiment of the present invention, the step S10 includes the steps of:
[0058] Step S11, obtaining the collection time of the human body posture data and the system time when the human body posture data is processed;
[0059] Step S12, calculating the time difference between the acquisition time and the system time;
[0060] Step S13: taking the time difference as the processing delay time.
[0061] The collection time is the time when the IMU collects the human posture data; when collecting the human posture data, the IMU can use the real-time timestamp as the collection time of the human posture data.
[0062] See also Figure 2 , the system time is the time when the CPU starts to process the human body posture data; it should be noted that the specific method for obtaining the system time can be set based on actual needs. For example, the system time can be determined by RTC (Real_Time Clock), and for devices without RTC, the CPU can determine the system time by obtaining the timestamp of the camera.
[0063] It should be noted that, in this embodiment, the human body posture data being processed refers to the event of the CPU obtaining the human body posture data from the cache or obtaining the acquisition time; it is not a step of determining the viewing angle based on the human body posture data.
[0064] It can be understood that the acquisition time reflects the moment when the human body posture data is collected, and the system time reflects the moment when the human body posture data is processed. Therefore, the time difference between the acquisition time and the system time reflects the time length from the collection to the processing of the human body posture data. Therefore, the time difference is the processing delay time of the human body posture data.
[0065] Furthermore, the step S13 comprises the steps of:
[0066] Step S131, determining a current processing cycle, wherein the current processing cycle includes a plurality of human body posture data;
[0067] Step S132, calculating the average difference of the time differences corresponding to each of the human posture data;
[0068] Step S133: Using the average difference as the processing delay time.
[0069] In this embodiment, in order to avoid a large deviation in the time difference caused by system time jitter, which may affect the determination of the processing delay time, the processing delay time is jointly determined based on the time difference of multiple human posture data.
[0070] The processing cycle can be set based on the length or the number of human body posture data included; for example, if the length of the processing cycle is set to 10ms, the human body posture data that begins to be processed within 10ms corresponding to the processing cycle is included in the processing cycle. At this time, based on the different processing frequencies of the human body posture data, the number of human body postures included in the processing cycle is also different; for example, if the processing cycle is set to include 10 human body posture data, the length of the processing cycle is determined based on the earliest processed human body posture data and the latest processed human body posture data among the 10; this embodiment and subsequent embodiments are explained by taking the processing cycle including a preset number of human body posture data as an example, wherein the specific value of the preset number can be set based on actual needs, such as 10.
[0071] For each human posture data, the time difference is calculated based on its corresponding acquisition time and system time; then the time difference corresponding to each human posture data in the processing cycle is averaged to obtain the average difference.
[0072] It can be understood that the average difference reflects the overall delay of the human posture data within the processing cycle, and the impact of the deviation of individual human posture data caused by system fluctuations can be eliminated through averaging.
[0073] After obtaining the average difference, the average difference is used as the processing delay time.
[0074] Furthermore, in a third embodiment of the virtual reality data processing method of the present invention proposed based on the first embodiment of the present invention, step S20 includes the steps of:
[0075] Step S21, matching a frequency adjustment parameter corresponding to the processing delay time, wherein the frequency adjustment parameter is negatively correlated with the processing delay time;
[0076] Step S22, obtaining the current processing frequency of the human body posture data;
[0077] Step S23: adjusting the current processing frequency with the frequency adjustment parameter to obtain the target processing frequency.
[0078] The frequency adjustment parameter is used to indicate the adjustment of the processing frequency; in this embodiment, the frequency adjustment parameter and the processing delay time are set to be negatively correlated, that is, the larger the processing delay time, the smaller the frequency adjustment parameter, and the smaller the amount of human posture data processed by the CPU, thereby reducing the processing pressure of the CPU so that the processing delay time can be reduced as soon as possible; and the smaller the processing delay time, the larger the frequency adjustment parameter, and the greater the amount of human posture data processed by the CPU, thereby improving the effect of perspective switching. The corresponding relationship between the processing delay time and the frequency adjustment parameter can be set based on actual needs; for example, multiple delay time thresholds are set, and adjacent delay time thresholds constitute a delay interval, and each delay interval corresponds to a frequency adjustment parameter; for example, the delay time thresholds include a, b, c, d, and e from large to small, and the interval (∞, a] corresponds to the first frequency adjustment parameter, the interval (a, b] corresponds to the second frequency adjustment parameter, the interval (b, c] corresponds to the third frequency adjustment parameter, the interval (c, d] corresponds to the fourth frequency adjustment parameter, the interval (d, e] corresponds to the fifth frequency adjustment parameter, and the interval (e, 0] corresponds to the sixth frequency adjustment parameter; wherein the first frequency adjustment parameter < the second frequency adjustment parameter < the third frequency adjustment parameter < the fourth frequency adjustment parameter < the fifth frequency adjustment parameter < the sixth frequency adjustment parameter.
[0079] The current processing frequency is the frequency at which the CPU currently processes the human posture data; the processing delay time is determined based on the current processing frequency, and therefore, the processing delay time reflects the processing delay of the human posture data under the current processing frequency; therefore, in this embodiment, the frequency adjustment parameter determined based on the processing delay time is applied to the current processing frequency to determine the target processing frequency that ultimately needs to be set based on the real-time operation scenario of the system.
[0080] It can be understood that when the frequency adjustment parameter is 0, the current processing frequency is not adjusted, and the target processing frequency is the current processing frequency; when the frequency adjustment parameter is a negative number, the current processing frequency is reduced to obtain the target processing frequency; when the frequency adjustment parameter is a positive number, the current processing frequency is increased to obtain the target processing frequency.
[0081] In the specific implementation, different frequency levels can be set, such as the processing frequency includes 5 frequency levels from low to high, namely level 1, level 2, level 3, level 4, and level 5; when at level 5, the CPU processes the human body posture data at the highest processing frequency; when at level 1, the human body posture data is processed at the lowest processing frequency.
[0082] Take the first to sixth frequency adjustment parameters as an example; wherein the fifth frequency adjustment parameter indicates not to adjust the current processing frequency; the sixth frequency adjustment parameter indicates to increase by one level; the fourth frequency adjustment parameter indicates to decrease by one level, the third frequency adjustment parameter indicates to decrease by two levels, the second frequency adjustment parameter indicates to decrease by three levels, and the first frequency adjustment parameter indicates to decrease by four levels;
[0083] If the current processing frequency corresponds to level 5, at this time, if the delay time threshold is in the interval (∞, a], the frequency adjustment parameter is the first frequency adjustment parameter, which needs to be reduced by four levels on the basis of level 5. Therefore, the obtained target processing frequency corresponds to level 1;
[0084] For another example, the current processing frequency corresponds to level 5. At this time, if the delay time threshold is in the interval (d, e], the frequency adjustment parameter is the fifth frequency adjustment parameter, and the current processing frequency is not adjusted. Therefore, the obtained target processing frequency still corresponds to level 5.
[0085] For another example, the current processing frequency corresponds to level 5. At this time, if the delay time threshold is in the interval (e, 0], the frequency adjustment parameter is the sixth frequency adjustment parameter, and it is necessary to increase one level based on level 5. However, since level 5 is the highest level, it cannot be further increased, and the obtained target processing frequency still corresponds to level 5.
[0086] For another example, the current processing frequency corresponds to level 2. At this time, if the delay time threshold is in the interval (e, 0], the frequency adjustment parameter is the sixth frequency adjustment parameter, which needs to be increased by one level on the basis of level 2. Therefore, the obtained target processing frequency corresponds to level 3.
[0087] In this embodiment, the current processing frequency can be adjusted based on the frequency adjustment parameter, so that the processing frequency is automatically reduced when the processing delay time is large, and is automatically increased when the processing delay time is small.
[0088] Further, in a fourth embodiment of the virtual reality data processing method of the present invention proposed based on the first embodiment of the present invention, the target processing frequency includes a target acquisition frequency, and the step S30 includes the steps of:
[0089] Step S31, setting the collection frequency of the human body posture data to the target collection frequency.
[0090] The acquisition frequency is the frequency at which the IMU collects human posture data; it can be understood that the higher the acquisition frequency, the more human posture data is obtained in the same time, the more human posture data is processed by the CPU in the same time, and the greater the processing pressure on the CPU.
[0091] Therefore, in this embodiment, the acquisition frequency is used as the target processing frequency for adjustment; when the target processing frequency is lowered relative to the current processing frequency, the acquisition frequency is lowered, and the amount of human body posture data obtained in the same time is reduced, thereby alleviating the processing pressure of the CPU; and when the target processing frequency is increased relative to the current processing frequency, the acquisition frequency is increased, and the amount of human body posture data obtained in the same time is increased, thereby improving the effect of perspective switching.
[0092] When setting the acquisition frequency specifically, an acquisition signal corresponding to the target acquisition frequency can be sent to the IMU. After receiving the acquisition signal, the IMU sets its own acquisition frequency to the target acquisition frequency, thereby achieving adjustment of the acquisition frequency.
[0093] It should be noted that the preset minimum processing frequency may include a preset minimum sampling frequency; the target acquisition frequency is always greater than or equal to the preset minimum sampling frequency, thereby ensuring the minimum frequency of perspective switching and avoiding screen freeze problems.
[0094] Further, in a fifth embodiment of the virtual reality data processing method of the present invention proposed based on the first embodiment of the present invention, the target processing frequency includes a target processing quantity, and the step S30 includes the steps of:
[0095] Step S32, determining a current processing cycle, wherein the current processing cycle includes a plurality of the human body posture data;
[0096] Step S33, determining target processing data in the human body posture data included in the current processing cycle, wherein the amount of the target processing data is the target processing amount;
[0097] Step S34, using the target processed data as human body posture data adopted for perspective switching.
[0098] The target processing data is the human body posture data that needs to be used for perspective switching in the current processing cycle.
[0099] It can be understood that the number of human posture data contained in the current processing cycle is fixed; if all human posture data contained in the current processing cycle are switched for perspective, the perspective switching effect is better, but the data processing pressure of the CPU is also greater; therefore, when the target processing frequency is high, the number of human posture data required for perspective switching in the current processing cycle is large, that is, the target processing number is large, and a better perspective switching effect is achieved; and when the target processing frequency is low, the number of human posture data required for perspective switching in the current processing cycle is small, that is, the target processing number is small, reducing the data processing pressure of the CPU.
[0100] The specific value of the target processing quantity can be set based on actual needs; for example, taking the aforementioned levels 1 to 5, and the current processing cycle contains 10 human posture data; when the target processing frequency is level 5, the corresponding target processing quantity is 10, that is, all human posture data in the current processing cycle are switched in perspective; when the target processing frequency is level 4, the corresponding target processing quantity is 8; when the target processing frequency is level 3, the corresponding target processing quantity is 6; when the target processing frequency is level 2, the corresponding target processing quantity is 3; when the target processing frequency is level 1, the corresponding target processing quantity is 1; the correspondence between the above different levels and the target processing quantity is only for example.
[0101] In this embodiment, level 1 is the level with the lowest target processing frequency, and its corresponding target processing quantity is at least 1, thereby achieving the setting of the minimum processing frequency for the processing quantity to ensure the minimum frequency of perspective switching and avoid the problem of screen freeze.
[0102] Specifically, the method of determining the target processing number of target processing data in the human posture data can be set based on actual needs, such as selecting the same interval based on the collection order. For example, at level 2, the target processing number is 3. At this time, the 1st, 5th, and 9th human posture data in the current processing cycle can be selected as the target processing data, so that the collection intervals between the target processing data are the same, which can reflect the user's posture changes as a whole;
[0103] For example, further, the step S33 includes the steps of:
[0104] Step S331, determining the change difference corresponding to each of the human body posture data, wherein the change difference is the data difference between the average value of the human body posture data in the previous processing cycle;
[0105] Step S332, taking the human body posture data with the larger change difference as the target processing data, wherein the number of the target processing data is the target processing number.
[0106] The change difference is used to indicate the degree of change of the user posture corresponding to the human posture data relative to the previous processing cycle.
[0107] It should be noted that the data output by the IMU includes parameters such as angular velocity and acceleration. When calculating the change difference, the change difference can be determined by combining the differences between multiple parameters.
[0108] It is understandable that when the user's posture changes significantly, in order to ensure smooth switching of the perspective, it is necessary to switch the perspective based on the human posture data collected when the posture changes significantly. Therefore, in this embodiment, human posture data with a larger change difference is retained first.
[0109] The average value of the human posture data in the last processing cycle indicates the overall posture of the user in the last processing cycle; the larger the change difference, the greater the degree of change of the human posture data relative to the last processing cycle, and the more it needs to be retained for perspective switching. In other embodiments, the human posture data can also be compared with the last human posture data collected in the last processing cycle to determine the change difference, that is, the change difference is the data difference between the last human posture data collected in the last processing cycle.
[0110] For example, if the current processing cycle contains 10 human posture data, based on the collection order, the corresponding change difference of the human posture data is (1, 2, 2, 3, 5, 7, 6, 4, 1, 1). Taking the target processing quantity corresponding to the aforementioned levels 1 to 5 as an example, when the target processing frequency is level 5, the corresponding target processing quantity is 10, and all human posture data are target processing data;
[0111] When the target processing frequency is level 4, the corresponding target processing quantity is 8, and the human posture data with the change difference of 7, 6, 5, 4, 3, 2, 2, and 1 are the target processing data. It should be noted that at this time, there are 3 human posture data with a change difference of 1, and the target processing data can only contain one human posture data with a change difference of 1. Therefore, the priority under the same change difference can be set in advance, such as the human posture data with an earlier collection time has a higher priority. At this time, the first human posture data collected in the current processing cycle is used as the target processing data, and the last two human posture data are not used as the target processing data; the priority rule can be set based on actual needs, such as the human posture data with a later collection time has a higher priority, and the same applies to the subsequent ones;
[0112] When the target processing frequency is level 3, the corresponding target processing quantity is 6, and the human posture data with change difference values of 7, 6, 5, 4, 3, and 2 are the target processing data;
[0113] When the target processing frequency is level 2, the corresponding target processing quantity is 3, and the human posture data with change differences of 7, 6, and 5 are the target processing data;
[0114] When the target processing frequency is level 1, the corresponding target processing quantity is 1, and the human body posture data with a change difference of 7 is the target processing data.
[0115] In practical applications, the processing level of human posture data can be marked in advance based on the change difference and the target processing quantity, such as marking the processing level of human posture data with a change difference of 7 as level 1, marking the processing level of human posture data with a change difference of 6 and 5 as level 2, marking the processing level of human posture data with a change difference of 4, 3, and 2 (the second human posture data) as level 3, marking the processing level of human posture data with a change difference of 2 (the third human posture data) and 1 (the first human posture data) as level 4, and marking the processing level of human posture data with a change difference of 1 (the ninth human posture data) and 1 (the tenth human posture data) as level 5. The marking operation can be completed by IMU or MCU. For example, after collecting human posture data of a processing cycle, IMU determines the processing level corresponding to each human posture data based on the actual change difference, and associates the processing level with the human posture data and stores it in the cache of MCU, thereby reducing the data processing amount of MCU; human posture data can also be directly stored in the cache of MCU, and when processing to the current processing cycle, MCU marks the processing level based on the above method.
[0116] After determining the level of the target processing frequency, the human body posture data of the labeled level corresponding to the level can be used as the target processing data. For example, if the level of the target processing frequency is level 3, the human body posture data above level 3, i.e., level 3, level 4 and level 5, will be used as the target processing data.
[0117] See below Figure 3 and Figure 4 The overall implementation process of this application is described as follows:
[0118] IMU collects human posture data and sets the collection time of human posture data based on the timestamp of the collection time; for a processing cycle, the human posture data is labeled with the processing level based on the change difference, and the labeled data is sent to the MCU cache for storage;
[0119] The MCU obtains the human posture data within a processing cycle in the cache, calculates the average difference of the time difference corresponding to the human posture data to obtain the processing delay time, and determines the target level of the target processing frequency based on the processing delay time, and judges whether the target level is the same as the current level. If the target level is different from the current level, the target acquisition frequency and target processing data corresponding to the target level are determined; the acquisition frequency of the IMU is set to the target acquisition frequency, and the perspective is switched in sequence based on the acquisition order of the target processing data; if the target level is the same as the current level, the target processing data corresponding to the target level is determined, and the perspective is switched in sequence based on the acquisition order of the target processing data.
[0120] It should be noted that, for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described order of actions, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present application.
[0121] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in each embodiment of the present application.
[0122] The present application also provides a virtual reality data processing device for implementing the above virtual reality data processing method, the virtual reality data processing device comprising:
[0123] A first determination module, used to determine the processing delay time of human posture data;
[0124] A first matching module, configured to match a target processing frequency corresponding to the processing delay time, wherein the target processing frequency is negatively correlated with the processing delay time;
[0125] The first adjustment module is used to adjust the processing frequency of the human posture data to the target processing frequency, wherein the target processing frequency is greater than a preset minimum processing frequency.
[0126] The virtual reality data processing device adjusts the processing frequency of human posture data based on the processing delay time, so that when a large delay occurs, the processing frequency can be reduced, thereby alleviating the data processing pressure of the system and enabling the system to return to normal more quickly. At the same time, a preset minimum processing frequency is set to limit the degree of reduction in the processing frequency, ensuring that the processing frequency of human posture data meets the display requirements, avoiding sudden switching of viewing angles, and ensuring good viewing angle switching.
[0127] It should be noted that the first determination module in this embodiment can be used to execute step S10 in the embodiment of the present application, the first matching module in this embodiment can be used to execute step S20 in the embodiment of the present application, and the first adjustment module in this embodiment can be used to execute step S30 in the embodiment of the present application.
[0128] Furthermore, the first determining module includes:
[0129] A first acquisition unit, used to acquire the acquisition time of the human body posture data and the system time when the human body posture data is processed;
[0130] A first calculation unit, used for calculating the time difference between the acquisition time and the system time;
[0131] The first execution unit is configured to use the time difference as the processing delay time.
[0132] Furthermore, the first execution unit includes:
[0133] A first determining subunit is used to determine a current processing cycle, wherein the current processing cycle includes a plurality of human body posture data;
[0134] A first calculation subunit, used for calculating an average difference of time differences corresponding to each of the human body posture data;
[0135] The first execution subunit is configured to use the average difference as the processing delay time.
[0136] Furthermore, the first matching module includes:
[0137] A first matching unit, configured to match a frequency adjustment parameter corresponding to the processing delay time, wherein the frequency adjustment parameter is negatively correlated with the processing delay time;
[0138] A second acquisition unit, used for acquiring a current processing frequency of the human body posture data;
[0139] The first adjustment unit is used to adjust the current processing frequency by using the frequency adjustment parameter to obtain the target processing frequency.
[0140] Further, the target processing frequency includes a target acquisition frequency, and the first adjustment module includes:
[0141] The first setting unit is used to set the collection frequency of the human body posture data to the target collection frequency.
[0142] Further, the target processing frequency includes a target processing quantity, and the first adjustment module includes:
[0143] A first determining unit, configured to determine a current processing cycle, wherein the current processing cycle includes a plurality of the human body posture data;
[0144] A second determining unit is used to determine target processing data in the human body posture data included in the current processing cycle, wherein the number of the target processing data is the target processing number;
[0145] The second execution unit is used to use the target processing data as human body posture data adopted for perspective switching.
[0146] Further, the second determining unit includes:
[0147] A first determining subunit is used to determine a change difference corresponding to each of the human posture data, wherein the change difference is a data difference from an average value of the human posture data in a previous processing cycle;
[0148] The second execution subunit is used to use the human body posture data with a larger change difference as the target processing data, wherein the amount of the target processing data is the target processing amount.
[0149] Reference Figure 5In terms of hardware structure, the virtual reality device may include components such as a communication module 10, a memory 20, and a processor 30. In the virtual reality device, the processor 30 is connected to the memory 20 and the communication module 10 respectively, and a computer program is stored in the memory 20. The computer program is executed by the processor 30 at the same time, and the steps of the above method embodiment are implemented when the computer program is executed.
[0150] The communication module 10 can be connected to an external communication device through a network. The communication module 10 can receive requests from an external communication device, and can also send requests, instructions and information to the external communication device, which can be other virtual reality devices, servers or Internet of Things devices, such as televisions, etc.
[0151] The memory 20 can be used to store software programs and various data. The memory 20 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, at least one application required for a function (such as determining the processing delay time of human posture data), etc.; the data storage area can include a database, and the data storage area can store data or information created according to the use of the system, etc. In addition, the memory 20 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices.
[0152] The processor 30 is the control center of the virtual reality device. It uses various interfaces and lines to connect various parts of the entire virtual reality device. By running or executing software programs and / or modules stored in the memory 20, and calling data stored in the memory 20, it performs various functions of the virtual reality device and processes data, thereby monitoring the virtual reality device as a whole. The processor 30 may include one or more processing units; optionally, the processor 30 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 30.
[0153] although Figure 5 Although not shown, the virtual reality device may further include a circuit control module, which is used to connect to a power source to ensure the normal operation of other components. Figure 5 The virtual reality device structure shown in the figure does not constitute a limitation of the virtual reality device, and may include more or less components than shown in the figure, or combine certain components, or arrange the components differently.
[0154] The present invention also provides a computer-readable storage medium on which a computer program is stored. The computer-readable storage medium may be Figure 5 The memory 20 in the virtual reality device may also be at least one of a ROM (Read-Only Memory) / RAM (Random Access Memory), a magnetic disk, and an optical disk. The computer-readable storage medium includes a number of instructions for enabling a terminal device with a processor (which may be a TV, a car, a mobile phone, a computer, a server, a terminal, or a network device, etc.) to execute the methods described in the various embodiments of the present invention.
[0155] In the present invention, the terms "first", "second", "third", "fourth" and "fifth" are used for descriptive purposes only and are not to be understood as indicating or implying relative importance. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.
[0156] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, without contradiction.
[0157] Although the embodiments of the present invention have been shown and described above, the scope of protection of the present invention is not limited thereto. It is understood that the above embodiments are exemplary and cannot be understood as limiting the present invention. A person of ordinary skill in the art can change, modify and replace the above embodiments within the scope of the present invention, and these changes, modifications and replacements should be included in the scope of protection of the present invention. Therefore, the scope of protection of the present invention shall be subject to the scope of protection of the claims.
Claims
1. A virtual reality data processing method, characterized in that: The virtual reality data processing method comprises: Determine the processing delay time of human posture data; matching a target processing frequency corresponding to the processing delay time, wherein the target processing frequency is negatively correlated with the processing delay time; The processing frequency of the human posture data is adjusted to the target processing frequency, wherein the target processing frequency is greater than a preset minimum processing frequency.
2. The virtual reality data processing method according to claim 1, characterized in that: The processing delay time of determining the human body posture data includes: Acquire the collection time of the human body posture data and the system time when the human body posture data is processed; Calculating the time difference between the acquisition time and the system time; The time difference is used as the processing delay time.
3. The virtual reality data processing method according to claim 2, characterized in that: The using the time difference as the processing delay time comprises: Determining a current processing cycle, wherein the current processing cycle includes a plurality of the human body posture data; Calculate the average difference of the time differences corresponding to each of the human posture data; The average difference is used as the processing delay time.
4. The virtual reality data processing method according to claim 1, characterized in that: The matching of the target processing frequency corresponding to the processing delay time includes: matching a frequency adjustment parameter corresponding to the processing delay time, wherein the frequency adjustment parameter is negatively correlated with the processing delay time; Obtaining a current processing frequency of the human body posture data; The current processing frequency is adjusted using the frequency adjustment parameter to obtain the target processing frequency.
5. The virtual reality data processing method according to claim 1, characterized in that: The target processing frequency includes a target acquisition frequency, and adjusting the processing frequency of the human body posture data to the target processing frequency includes: The collection frequency of the human body posture data is set to the target collection frequency.
6. The virtual reality data processing method according to claim 1, characterized in that: The target processing frequency includes a target processing quantity, and adjusting the processing frequency of the human body posture data to the target processing frequency includes: Determining a current processing cycle, wherein the current processing cycle includes a plurality of the human body posture data; Determining target processing data in the human body posture data included in the current processing cycle, wherein the number of the target processing data is the target processing number; The target processed data is used as human body posture data adopted for perspective switching.
7. The virtual reality data processing method according to claim 6, characterized in that: Determining target processing data from the human body posture data included in the current processing cycle includes: Determine a change difference corresponding to each of the human body posture data, wherein the change difference is a data difference between the average value of the human body posture data in the previous processing cycle; The human body posture data with the larger change difference is used as the target processing data, wherein the number of the target processing data is the target processing number.
8. A virtual reality data processing device, characterized in that: The device comprises: A first determination module, used to determine the processing delay time of human posture data; A first matching module, configured to match a target processing frequency corresponding to the processing delay time, wherein the target processing frequency is negatively correlated with the processing delay time; The first adjustment module is used to adjust the processing frequency of the human posture data to the target processing frequency, wherein the target processing frequency is greater than a preset minimum processing frequency.
9. A virtual reality device, characterized in that: The virtual reality device includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the computer program is executed by the processor, the steps of the virtual reality data processing method according to any one of claims 1 to 7 are implemented.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the virtual reality data processing method according to any one of claims 1 to 7 are implemented.