Information processing system, program, and information processing method for correction of positions in a virtual space based on real-world surface characteristics

The information processing system corrects target positions in virtual spaces by using a height map derived from real-space motion data to address the unnatural reproduction caused by undulating surfaces, improving processing efficiency and realism.

WO2026018632A1PCT designated stage Publication Date: 2026-01-22SONY GROUP CORP
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2025/022650
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-07-17
Filing Date
2025-06-24
Publication Date
2026-01-22

AI Technical Summary

Technical Problem

Existing methods for reproducing a real space in a virtual space often result in unnatural representations of targets due to mismatches between undulating surfaces in the real and virtual spaces, leading to processing inefficiencies and inaccurate target positioning.

Method used

An information processing system that acquires a distance correction between a reference surface in the real space and a target, and adjusts the target's position in the virtual space based on this distance, using a height map generated from motion data to account for undulations.

Benefits of technology

This approach allows for natural reproduction of targets in the virtual space by accurately correcting their positions, reducing processing load and enhancing the realism of the virtual representation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2025022650_22012026_PF_FP_ABST
    Figure JP2025022650_22012026_PF_FP_ABST
Patent Text Reader

Abstract

An information processing system includes an acquisition unit that acquires a distance between a reference surface set in a real space and a target, obtained from a motion of the target, and a generation unit that generates a map to be used to reproduce the target in a virtual space, representing undulations with respect to the reference surface, on the basis of the distance acquired by the acquisition unit.
Need to check novelty before this filing date? Find Prior Art

Description

INFORMATION PROCESSING SYSTEM, PROGRAM, AND INFORMATION PROCESSING METHOD FOR CORRECTION OF POSITIONS IN A VIRTUAL SPACE BASED ON REAL-WORLD SURFACE CHARACTERISTICSCROSS REFERENCE TO RELATED APPLICATIONS

[0001] This application claims the benefit of Japanese Priority Patent Application JP 2024-114037 filed on July 17, 2024, the entire contents of each of which are incorporated herein by reference.

[0002] The present disclosure relates to an information processing system, a program, and an information processing method.

[0003] In recent years, a technique for providing a virtual space with more reality has been developed. For example, PTL 1 discloses a technique for more clearly showing a video of a background such as the ground in the virtual space.

[0004] Furthermore, a target in a real space is being reproduced in the virtual space. For example, the target is reproduced in the virtual space, on the basis of motion data obtained by capturing a motion of the target in the real space.

[0005] JP 2002-92635 ASummary

[0006] In generation of a virtual space, there is a case where it is requested to reduce a processing load of modeling and the like. In order to reduce the processing load, a surface with undulations such as the ground in a real space may be reproduced as a flat surface in the virtual space.

[0007] However, for example, in a case where a moving target on the surface with undulations is reproduced as it is on a surface in the virtual space that does not match the real space, such as a flat surface, there is a possibility that the target is unnaturally reproduced in the virtual space.

[0008] Therefore, in the present disclosure, a novel and improved technology that can naturally reproduce a target in a virtual space is proposed.

[0009] According to the present disclosure, an information processing system, comprising: processing circuitry configured to acquire a distance for correction between a reference surface set in a real space and a target; and correct a position of the target in a virtual space based on the distance for correction.

[0010] Furthermore, according to the present disclosure, a non-transitory computer-readable storage medium storing computer-readable instructions thereon which, when executed by a computer, cause the computer to perform a method, the method comprising: acquiring a distance between a reference surface set in a real space and a target; and correcting a position of the target in a virtual space based on the acquired distance.

[0011] Furthermore, according to the present disclosure, an information processing method executed by a computer comprising: acquiring a distance between a reference surface set in a real space and a target; and correcting a position of the target in a virtual space based on the acquired distance.

[0012] Fig. 1 is a diagram for explaining correction of a position of a player's foot in a virtual space.Fig. 2 is a diagram for explaining undulations represented in a pseudo manner according to measurement results of characteristic portions of a court and actual undulations.Fig. 3 is a block diagram illustrating a functional configuration example of a server 10 according to an embodiment of the present disclosure.Fig. 4 is a view for explaining an operation processing example of the server 10 according to an embodiment of the present disclosure.Fig. 5 is a diagram illustrating an example of a height map generated by setting a lowest player height among player heights acquired on a block.Fig. 6 is a diagram illustrating an example of a height map generated, by resetting a player heights set to a block B including an outlier in a height map M1 illustrated in Fig. 5.Fig. 7 is a diagram for explaining weights set to the respective adjacent blocks B.Fig. 8 is a diagram illustrating an example of a height map obtained by smoothing a height map M2 illustrated in Fig. 6.Fig. 9 is a view for illustrating a virtual space generated by a space processing unit 122.Fig. 10 is a block diagram illustrating a hardware configuration example of an information processing device 900 for implementing the server 10 according to an embodiment of the present disclosure.

[0013] Hereinafter, preferred embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. Note that, in the present specification and drawings, components having substantially the same functional configuration are denoted by the same reference signs, and redundant description is omitted.

[0014] Note that the description will be given in the following order. 1. Outline 2. Functional configuration example 3. Operation processing 4. Hardware configuration example 5. Additional notes

[0015] <1. Outline> The present disclosure relates to an information processing system for reproducing a target in a real space, in a virtual space. The target in the real space to be reproduced by the information processing system according to an embodiment of the present disclosure is assumed to be, for example, a player who plays a sport such as soccer or a skateboard, a person (user) such as a performer or an audience of a dance, a play, a music live show, and the like, a moving object such as a robot or a ball, and the like. Furthermore, the target in the real space to be reproduced by the information processing system according to an embodiment of the present disclosure may be a part of the person or the object described above. In the present disclosure, a case where a player who plays soccer is reproduced in the virtual space will be mainly assumed and described.

[0016] Note that the number of targets in the real space to be reproduced in the virtual space is not particularly limited. In the present disclosure, an example of a case where a plurality of players participating in a game is a target to be reproduced in the virtual space will be mainly described.

[0017] The reproduction of the player in the virtual space is performed on the basis of motion data obtained by capturing a motion of the player in the real space. The motion data may be acquired, for example, by analyzing a captured image obtained by imaging the player with a plurality of cameras installed in the real space.

[0018] The motion data may include a position of the player in the real space. More specifically, the motion data may include each position of a skeleton of the player. Furthermore, the motion data may include information other than the position of the player in the real space and each position of the skeleton of the player described above. Furthermore, information such as a height or a shoulder width of each player may be attached to the motion data as metadata.

[0019] The position of the player may be a position on a three-dimensional coordinate axis set in the real space. The three-dimensional coordinate axes are calibrated and set at the time of imaging the target or analyzing the motion data. More specifically, two axes among the set three-dimensional coordinate axes may be set along a plane in the real space (for example, surface serving as reference in real space, such as ground, ceiling, or wall), and the remaining one axis may be set in a height direction with respect to the plane in the real space. In the present disclosure, an example will be mainly described in which the two axes of the three-dimensional coordinate axes are set along a plane (for example, ground surface of soccer court, ground surface of stadium for baseball game, wall for bouldering, and the like) in the real space where the player competes, and the remaining one axis is set in the height direction with respect to the plane in the real space. Note that the plane in the real space serving as a reference for setting the three-dimensional coordinate axes is not limited, and may be any one of the ground, the ceiling, the wall, and the like.

[0020] Furthermore, the motion data includes a height of the player. The height of the player is represented by a distance between the player (more specifically, player's foot) and a reference surface. The reference surface may be a plane specified by the two axes of the three-dimensional coordinate axes set in the real space. More specifically, the reference surface according to the embodiment of the present disclosure is a plane, set along the real space, specified by the two axes set along the ground. Hereinafter, the height of the player height included in the motion data is also referred to as a “player height”.

[0021] (Review of problems) In the real space where the player competes, undulations may occur. Here, a soccer court is taken as an example of the real space. In general, an outdoor soccer court has a ground shape that rises around a center circle. Furthermore, the court may have undulations due to an influence of, for example, a thickness of turf, unevenness of the ground, and the like. Here, since the motion data is represented on the basis of the three-dimensional coordinate axes set in the real space, the player height included in the motion data is represented including the undulations of the court.

[0022] On the other hand, in order to reduce a processing load in the generation of the virtual space, it is considered to reproduce an undulating surface of an outdoor court and the like as a horizontal surface on the virtual space.

[0023] In order to naturally reproduce the player in the real space moving on the court with undulations, in the virtual space, it is considered to correct a position of the player in the virtual space, more specifically, a position of the player's foot.

[0024] Fig. 1 is a diagram for explaining correction of the position of the player's foot in the virtual space. In Fig. 1, a player's foot F (F1 to F3) and a player's foot Fc (Fc1 to Fc3) after position correction in a virtual space V are illustrated.

[0025] A real space corresponding surface RF illustrated in Fig. 1 is a surface corresponding to an undulating surface on the real space, in the virtual space V. A reproduction surface VF illustrated in Fig. 1 is a surface used to reproduce the real space corresponding surface RF as a flat surface, in the virtual space V. The reproduction surface VF may be a surface corresponding to the reference surface in the real space, in the virtual space V.

[0026] As illustrated in the upper part of Fig. 1, in a case where the position of the player's foot F is reproduced without being corrected, even if the player's foot F is in contact with the undulating surface in the real space, the player's foot F floats or sinks with respect to the reproduction surface VF by a difference between the real space corresponding surface RF and the reproduction surface VF. For example, the player's foot F1 in contact with the undulating surface in the real space is reproduced to float with respect to the reproduction surface VF by a difference h.

[0027] On the other hand, as illustrated in the lower part of Fig. 1, the position of the player's foot Fc after the position correction is reproduced by correcting the position of the player's foot F, only by the difference between the real space corresponding surface RF and the reproduction surface VF. For example, the player's foot Fc1 after the position correction is reproduced by correcting the position of the player's foot F1, by the difference h between the real space corresponding surface RF and the reproduction surface VF. Therefore, since a foot in contact with the undulating surface in the real space, corresponding to the player's foot F1, is reproduced to have contact with the reproduction surface VF in the virtual space V, it is possible to naturally reproduce the player in the virtual space V.

[0028] In order to perform such correction, it is necessary to acquire the undulations of the undulating surface on the real space.

[0029] In the past, a map representing undulations of a roadway and the like is generated using depth information acquired by a measuring machine equipped with an infrared sensor and the like. However, since a court for competition has many irregularities, it is difficult to move the measuring machine. Furthermore, a state of the undulations may change in a short period due to an influence of turf care, wind and rain, and the like. For example, since the turf is generally changed in a soccer court every season, the state of the undulations changes every season. However, it is difficult to move the measuring machine every short period in terms of operation.

[0030] Furthermore, it is also considered to acquire a predicted value of an undulation of each portion in the court, by linearly interpolating other portions in the court, on the basis of a measurement result obtained by measuring a height of a characteristic portion (for example, corner of court, center of center circle, and the like) of the court. However, there is a difference between the undulations represented according to the measurement results of the characteristic portions of the court and actual undulations due to an influence of local undulations and the like. Fig. 2 is a diagram for explaining the undulations represented according to the measurement results of the characteristic portions of the court and the actual undulations.

[0031] In Fig. 2, player's feet F (F1 to F3) in the virtual space V, the real space corresponding surface RF, and a pseudo undulating surface MF are illustrated. The real space corresponding surface RF is a surface corresponding to the undulating surface in the real space, in the virtual space V. The pseudo undulating surface MF is a surface corresponding to the undulating surface, represented on the basis of the measurement results of the characteristic portions of the court, in the virtual space V.

[0032] As illustrated in Fig. 2, since there is a difference between the real space corresponding surface RF and the pseudo undulating surface MF, even if the position of the player's foot F in the virtual space V is corrected according to a height of the pseudo undulating surface MF, the target may be unnaturally reproduced.

[0033] Therefore, the present disclosure proposes a technology for generating a map representing undulations with respect to a reference surface, that is, a height of a court with respect to the reference surface, which enables to naturally reproduce a player in a virtual space.

[0034] <2. Functional configuration example> First, a functional configuration example of a server 10 for implementing an embodiment of the present disclosure will be described. Fig. 3 is a block diagram illustrating the functional configuration example of the server 10 according to the embodiment of the present disclosure. The server 10 is an information processing device that is included in an information processing system according to the present disclosure. In the present embodiment, an example in which the information processing system is configured by a single server 10 will be described. However, the information processing system may include a plurality of devices, and in this case, a function of the server 10 to be described below may be implemented by the plurality of devices.

[0035] As illustrated in Fig. 3, the server 10 according to the present embodiment includes a communication unit 110, a control unit 120, and a storage unit 130.

[0036] (Communication unit 110) The communication unit 110 includes a transmission unit that transmits data to an external device and a reception unit that receives data from the external device. The communication unit 110 according to the present embodiment may be communicably connected to an external device or to the Internet, using, for example, a wired / wireless local area network (LAN), a Wi-Fi (registered trademark), a Bluetooth (registered trademark), a mobile communication network (Long Term Evolution (LTE)), fourth generation mobile communication system (4G), or fifth generation mobile communication system (5G)), and the like.

[0037] The communication unit 110 functions as an acquisition unit that acquires the motion data obtained from the motion of the player (example of user) from the external device. The motion data may be acquired by analyzing a captured image obtained by imaging the player with the plurality of cameras installed in the real space. However, a method of acquiring the motion data is not particularly limited as long as the position of the player and the player height can be acquired. For example, a method such as OpenPose that estimates a position of a joint of the player from the captured image may be adopted, or the motion data may be acquired by a capture device including an inertial sensor and the like worn by the player.

[0038] As described above, the motion data includes the position of each skeleton of the player and the player height in the real space. The position of each skeleton of the player and the player height are expressed on the basis of the preset three-dimensional coordinate axis. More specifically, the player height is represented expressed by a distance between the reference surface and the player's foot, using a plane set along the court where the player performs the competition as the reference surface. The distance between the reference surface and the player's foot is a first distance according to the embodiment of the present embodiment.

[0039] For example, the communication unit 110 may acquire motion data of all players participating in a game at each time in one game. Furthermore, in a case where the technology according to the embodiment of the present disclosure is applied to reproduction of a dance, a play, a music live show, and the like in the virtual space, motion data of all performers participating in a program at each time in the program may be acquired. As an amount of motion data acquired in a region reproduced in the virtual space increases, accuracy of the height represented by a map generated by a map generation unit 121 to be described later improves.

[0040] (Control unit 120) The control unit 120 functions as an arithmetic processing device and a control device, and controls an overall operation in the server 10 in accordance with various programs. The control unit 120 is implemented by an electronic circuit such as a central processing unit (CPU) or a microprocessor, for example. Furthermore, the control unit 120 may include a read only memory (ROM) that stores programs, operation parameters, and the like to be used, and a random access memory (RAM) that temporarily stores parameters and the like that change as necessary.

[0041] Furthermore, the control unit 120 also functions as the map generation unit 121 and a space processing unit 122.

[0042] (Map generation unit 121) The map generation unit 121 is a generation unit that generates a map representing undulations with respect to the reference surface, on the basis of the player height included in the motion data acquired by the communication unit 110. The map generation unit 121 generates a map regarding a region to be reproduced in the virtual space.

[0043] In the present embodiment, an example of a case will be described where such a map is a map representing a height of each position in the court with respect to the reference surface. The height here represents a distance between the reference surface and each position in the court and is represented by a positive or a negative value while setting a vertically upward direction of the reference surface as positive. Hereinafter, such a map is also referred to as a “height map”. Details of height map generation processing by the map generation unit 121 will be described later.

[0044] (Space processing unit 122) The space processing unit 122 generates a video reproducing the player in the virtual space, on the basis of the height map generated by the map generation unit 121 and the motion data of the player acquired by the communication unit 110.

[0045] The space processing unit 122 functions as a processing unit that corrects the position of the player in the virtual space according to undulations corresponding to the position of the player arranged in the virtual space, represented by the height map. Details of processing for correcting the position of the player will be described later.

[0046] (Storage unit 130) The storage unit 130 is implemented by a ROM that stores programs, operation parameters, and the like to be used for the processing of the control unit 120, and a RAM that temporarily stores parameters and the like that change as necessary. For example, the storage unit 130 stores the height map generated by the map generation unit 121.

[0047] <3. Operation processing> Subsequently, an operation processing example of the server 10 according to an embodiment of the present disclosure will be described.

[0048] Fig. 4 is a view for explaining the operation processing example of the server 10 according to the embodiment of the present disclosure. As illustrated in Fig. 4, an operation of the server 10 according to the embodiment of the present disclosure is divided into steps of (S10) acquisition of motion data, (S20) generation of a height map, and (S30) reproduction of a virtual space. Hereinafter, each of these steps will be described with reference to Figs. 5 to 9.

[0049] (S10) Acquisition of motion data The communication unit 110 acquires the motion data obtained from the motion of the player from the external device. The communication unit 110 outputs the acquired motion data to the map generation unit 121 and the space processing unit 122.

[0050] (S20) Generation of height map The map generation unit 121 generates the height map, on the basis of the player height included in the motion data acquired by the communication unit 110. The height map is generated via each of steps of S21 to S23.

[0051] First, the map generation unit 121 divides a region reproduced in the virtual space, that is, the inside of the court into regions having a predetermined size. More specifically, the reference surface corresponding to the court is divided into the regions having the predetermined size. A shape of the region is not particularly limited and may be any shape. For example, the shape of the region may be a rectangle, that is, a block. More specifically, the block may be a square having one side of one m. Here, an example of a case where the block is a square having one side of one m will be described. However, a length of one side may be any length. The shape of the block or the length of one side may be automatically determined according to the size of the region reproduced in a virtual space, or may be appropriately set by the user.

[0052] In the following processing, the map generation unit 121 generates a map in which the height of the court from the reference surface is expressed for each block. Therefore, as the size of the block is smaller, a map more finely indicating the height of each position can be created. On the other hand, as the number of player heights obtained on the block is larger, accuracy of the height represented for each block is improved. Therefore, it is sufficient that the size of the block be appropriately changed depending on the number of pieces of data of the player height and the like.

[0053] Hereinafter, the height of the court from the reference surface, represented for each block is also referred to as a “height of a block”. The height of the block is a distance representing the undulation of the block according to the present embodiment and is a second distance.

[0054] The map generation unit 121 selects the lowest player height, from among the player heights acquired on the block, included in the motion data acquired by the communication unit 110 (S21). The player height acquired on the block is a player height obtained from a player's foot existing in a vertical direction of a surface of the block. For example, in a case where three player heights of 10 cm, zero cm, and - 10 cm on the block are acquired, the map generation unit 121 selects - 10 cm.

[0055] Here, there is a high possibility that the player's foot corresponding to the lowest player height has contact with the court. Therefore, there is a high possibility that the lowest player height represents the height of the court with respect to the reference surface. Therefore, the map generation unit 121 generates the height map, by setting the player height selected for each block as the height of each block.

[0056] Fig. 5 is a diagram illustrating an example of the height map generated by setting the lowest player height among the player heights acquired on the block. A height map M1 illustrated in Fig. 5 represents a height of a block of each block B (for example, blocks B1 to B5) obtained by dividing the court. Note that, here, the drawing is simplified and illustrated for easy understanding of the description. However, actually, it is sufficient that the block B be more finely divided and set in the court.

[0057] A legend G is a legend of the height of the block expressed in the height map M1. For example, in the height map M1, it is indicated that the height of the court in the block B1 is about 20 cm. Furthermore, in a height map M2, it is indicated that the height of the court in the block B2 is about - 20 cm.

[0058] It is considered that a block B in which the player height is not acquired on the block B is generated, among the blocks B in the height map M1. For example, in a case where there is a block B through which none of the players passes in a game in which the motion data is acquired, the player height is not acquired on the block B.

[0059] In such a case, the map generation unit 121 does not need to set the height of the block of the block B. The block B3 of the height map M1 in Fig. 5 is blank. This indicates that the height of the block of the block B3 is not set.

[0060] Here, due to an error at the time of generation of the motion data, a player height lower than an actual player height or higher than the actual player height may be included in the motion data. Furthermore, the motion data may be generated on the basis of a capture result of a player who raises his / her foot by jumping and the like. Therefore, the height of the block set to each block B may be different from an actual height. For example, since a height of the block B4 in the height map M1 in Fig. 5 is extremely lower than the surrounding blocks, it is considered that a height different from the actual height is set as the height of the block.

[0061] Therefore, the map generation unit 121 generates a height map representing a more accurate block height, by steps S22 and S23 to be subsequently performed.

[0062] First, the map generation unit 121 removes outliers (S22). More specifically, the map generation unit 121 determines whether an outlier is set to the block B by determining whether or not each height of the block set to each block B satisfies a predetermined condition.

[0063] Then, in a case where the height of the block set to the block B satisfies the predetermined condition, the map generation unit 121 removes the outlier by changing the height of the block set to the block B.

[0064] The height of the block may be changed by resetting the set height of the block or changing the height of the block according to the height of the block set to the surrounding blocks B. Here, an example will be described in which the height of the set block is reset, as the change in the height of the block.

[0065] The predetermined condition may include, for example, that the height of the block set to the block B is equal to or more than a first value or equal to or less than a second value.

[0066] It is sufficient that the first value and the second value be appropriately set according to an assumed size of the undulation of the court (that is, assumed block height) and a setting position of the reference surface. Therefore, in a case where an unexpected height of the block is set, the height of the block can be removed as an outlier. The first value and the second value may be an upper limit value and a lower limit value of the assumed height of the block, respectively, or vice versa. For example, each of the first value and the second value may be 20 cm and - 20 cm.

[0067] Furthermore, the predetermined condition may include that a difference between the height of the block set to the block B and an average value of the heights of the blocks set to the respective blocks B adjacent to the block B is equal to or more than a third value.

[0068] It is sufficient that the third value be appropriately set according to an assumed degree of the inclination of the undulation of the court. Therefore, it is possible to remove, as an outlier, the height of the block of the block B for which it is determined that a height of a wrong block has been set, from a relationship with the height of the block set to the adjacent block B. The third value may be, for example, five cm. Here, for example, a predetermined value may be determined as each of the first value, the second value, and the third value, and each value may be arbitrarily set by the user.

[0069] Fig. 6 is a diagram illustrating an example of a height map generated, by resetting a player height set to the block B including the outlier in the height map M1 illustrated in Fig. 5. The height map M2 illustrated in Fig. 6 is a height map generated by resetting the player height set to the block B including the outlier in the height map M1. As in the height map M1, in the height map M2, a height expressed in the height map M2 is represented by the legend G.

[0070] Referring to Figs. 5 and 6, the block B such as the block B4 that is not blank in the height map M1, that is, in which the height of the block has been set, is blank in the height map M2. This indicates that the player height set to the block B, in which such a block B includes the outlier, that is, it is considered that a height different from the actual height of the block B is set as the height of the block, is reset.

[0071] Subsequently, the map generation unit 121 smooths the height map M2 by weighted averaging (S23). More specifically, for the block B to which the height of the block is set, the map generation unit 121 resets a weighted average of the height of the block and the heights of the blocks set to the blocks B adjacent to the block B, as the height of the block.

[0072] Fig. 7 is a diagram for explaining a weight set to each of the adjacent blocks B. In Fig. 7, a block Bs in which the height of the block is reset and nine blocks Ba (Ba1, Ba2, ...) adjacent to the block Bs are illustrated. As illustrated in Fig. 7, a weight “2” may be used for the block Bs to which the height of the block is reset and a weight “1” may be used for the block Ba. The map generation unit 121 calculates the height of the block to be reset to the block Bs, by weighted averaging using such weights.

[0073] Note that the map generation unit 121 performs weighted averaging as setting the weight of the block B, to which the height of the block is not set, as zero.

[0074] The weight is not limited to the example illustrated in Fig. 7, and it is sufficient to arbitrarily set the weight. Furthermore, for the weighted average, a height of a block set to a block B in a wider range, for example, a block B two blocks away from the block Bs to which the height of the block is reset may be further used.

[0075] Furthermore, for the block B to which the height of the block B is not set, the height of the block is calculated using the height of the block set to each adjacent block B. Hereinafter, the block B to which the height of the block is not set is referred to as an “unset block Bn”.

[0076] For example, the map generation unit 121 may calculate an average value of the heights of the blocks set to the unset block Bn and the adjacent blocks B, as a height of a block set to the unset block Bn.

[0077] Furthermore, a case is considered where the height of the block is not set to all the blocks B adjacent to the unset block Bn. In this case, the map generation unit 121 may set the height of the block set to the block B, to which the height of the block is set, closest to the unset block Bn, as the height of the block of the unset block Bn. In a case where there is the plurality of blocks B, to which the height of the block is set, closest to the unset block Bn, the average value of the heights of the plurality of blocks may be set as the height of the block of the unset block Bn.

[0078] Fig. 8 is a diagram illustrating an example of a height map obtained by smoothing the height map M2 illustrated in Fig. 6. A height map M3 illustrated in Fig. 8 is a height map generated by executing weighted average processing and processing for setting the height of the block to the unset block Bn, on each block in the height map M2. As in the height maps M1 and M2, in the height map M3, a height expressed in the height map M3 is represented by the legend G.

[0079] In the height map M3, the height map M2 is smoothed by the weighted averaging processing. For example, in the height maps M1 and M2, about - 20 cm has been set to the block B5, as the height of the block. In the height map M3, for the block B5, the height of the block is reset to a higher value than before the setting and is smoothed, by weighted averaging the set height of the block and the height of the block set to the adjacent block B.

[0080] Furthermore, in the height map M3, the height of the block is set to all the blocks B in the height map M3, by setting the height of the block to the unset block Bn.

[0081] For example, the height of the block has not been set to the block B3 and the block B3 has been blank, because the player height has not been acquired in the block B3, in the height maps M1 and M2. In the height map M3, it is found that the height of the block is set, by calculating an average value of the heights of the blocks set to the blocks B adjacent to the block B3.

[0082] Furthermore, in the height map M2, the height of the block has not been set to the block B4, and the block B4 has been blank, due to the removal of the outlier. In the height map M3, it is found that the height of the block is set, by calculating an average value of the heights of the blocks set to the blocks B adjacent to the block B4.

[0083] According to steps in S22 and S23 described above, a deviation between the actual height of the block and the height of the block in the height map M1, caused by an error and the like at the time of generating the motion data, is corrected.

[0084] Note that the height of the block of each block B indicated by each height map M (height maps M1 to M3) may be adjusted by an administrator and the like of the virtual space. More specifically, the height map M may be transmitted to an external terminal, and an editing screen of the height map M may be displayed by the external terminal. By operating the editing screen, the administrator may designate a block B whose height of the block is to be changed or change the height of the designated block B. The height may be changed by inputting a value, or may be intuitively changed by moving the block B indicated together with the reference surface in the height direction.

[0085] The generation of the height map M has been described above. So far, an example has been described in which the player height representing the distance between the reference surface and the player in the motion data acquired by the communication unit 110 is used to set the height of the block in the height map M. That is, so far, an example of a case has been described where a reference surface (hereinafter, also referred to as “map reference surface”) where a height of a block is zero cm matches the reference surface in the motion data, in the height map M. However, the map reference surface in the height map M may be set as a surface different from the reference surface in the motion data.

[0086] For example, the map reference surface may be set such that a height of an object fixed in the court, such as a height of a goal net installed in the court, serves as a reference.

[0087] In a case where the map reference surface is set as the surface different from the reference surface in the motion data, the player height included in the motion data may be converted into a player height from the map reference surface, according to a positional relationship between the set map reference surface and the reference surface in the motion data. By using the converted player height, the map generation unit 121 can set the height of the block having the map reference surface of zero cm, to each block obtained by dividing the map reference surface.

[0088] Furthermore, the map reference surface may be set such that a height of an object set by the user in advance serves as a reference or may be set on the basis of priority information set by the user in advance. A type of the priority information is not particularly limited. For example, the priority information may be represented by a numerical value such as zero to 10, or may be represented by a text such as HIGH, MIDDLE, or LOW. Normally, it is considered that there is a plurality of candidate objects in the real space to be the map reference surface. Therefore, the user sets the priority information to each candidate object in advance, and an object having the highest priority is set as the map reference surface, so that a user's intention may be more reflected.

[0089] (S30) Reproduction of virtual space The space processing unit 122 generates a video reproducing the player in the virtual space, on the basis of the smoothed height map M3 generated by the map generation unit 121 and the motion data of the player acquired by the communication unit 110. Note that the space processing unit 122 may generate the video reproducing the player in the virtual space, on the basis of the height map M1 or the height map M2 generated by the map generation unit 121.

[0090] For example, in the generation of the virtual space, the space processing unit 122 reproduces an undulating court as a flat surface in the virtual space. Hereinafter, a surface to be reproduced in the virtual space is also referred to as a “reproduction surface”. The reproduction surface may match the map reference surface. In this case, the height of each block represented by the height map M3 represents a difference between a position in the virtual space of each position in the court and the reproduction surface. Hereinafter, an example of a case where the reproduction surface and the map reference surface match will be mainly described.

[0091] The space processing unit 122 corrects the position of the player in the virtual space represented on the basis of the motion data, more specifically, the height of the player in the virtual space, according to the height of the block set to the block B corresponding to the position of the player arranged in the virtual space, represented by the height map M3.

[0092] The space processing unit 122 performs correction to move the position of the player's foot toward the map reference surface, that is, a reproduction surface side in the virtual space, by an amount of the undulations corresponding to the position of the player's foot. More specifically, as described with reference to Fig. 1, the space processing unit 122 corrects the position of the player's foot F by a difference between the real space corresponding surface RF (surface corresponding to court in virtual space) and the reproduction surface VF, that is, the height of each block represented by the height map M3, and reproduces the same in the virtual space.

[0093] Note that, when the position of the player's foot is corrected, a position of another part (such as hand) of the player may be corrected as much as the position of the player's foot according to the corrected position of the foot. Therefore, a video of the virtual space with less sense of discomfort is generated.

[0094] Fig. 9 is a view for illustrating the virtual space generated by the space processing unit 122. The upper part of Fig. 9 illustrates a video Ib of the virtual space V in which a player in the real space is reproduced, in a case where the correction by the space processing unit 122 is not performed. At a position corresponding to the player reproduced in the video Ib in the virtual space V, the height of the court in the real space is lower than the map reference surface. Therefore, a foot of a player P1 and a hand of a player P2 actually having contact with the court that are deep into the court are reproduced, in the video Ib of the virtual space V.

[0095] The lower part of Fig. 9 illustrates a video Ic of the virtual space V in which a player in the real space is reproduced, in a case where the correction by the space processing unit 122 is performed. The space processing unit 122 corrects a position of each portion of the player, according to a height of a block set to a block at each position where the player exists reproduced by the video Ic of the virtual space V, indicated by the height map M3. Therefore, the video Ic of the virtual space V reflecting a positional relationship between the player and the court in the real space, that is, the height of the player with respect to the court in the real space is generated. According to such a configuration, the player in the video Ic of the virtual space V is naturally reproduced. For example, in the video Ic of the virtual space V, the foot of the player P1 and the hand of the player P2 that are not deep into the court and having contact with the court are reproduced.

[0096] An example of the correction by the space processing unit 122 in a case where the reproduction surface and the map reference surface match has been described above. However, the space processing unit 122 may use a surface that does not match the map reference surface, as the reproduction surface. In this case, it is only required for the space processing unit 122 to further correct the position of each portion of the player, by a difference between the map reference surface and the reproduction surface, at each position on the reproduction surface. The reproduction surface is not limited to a flat surface and may be a surface with undulations.

[0097] By freely setting the reproduction surface, a degree of freedom of expression of the virtual space is increased. For example, in a case where the correction processing using the surface that does not match the map reference surface as the reproduction surface is applied when a performer and the like of a dance, a play, a music live show, and the like on a stage is reproduced in the virtual space, it is possible to express a more complicated stage different from the stage in the real space. Therefore, the user viewing a video of the virtual space can be more entertained. For example, in a music live show and the like, it is assumed that an object having a complicated shape be set on the stage where the performer stands on, or an object having a step such as a staircase connecting the stage and an audience be provided. Even in such a case, the reproduction surface is appropriately set on the stage, the stairs, and the like, and a position of the performer or the audience is corrected by a difference between the map reference surface and each reproduction surface, so that a position of a foot or a position of a hand of the performer or the audience can be appropriately drawn without being deep into the surface of the stage or the stairs. This makes it possible to provide a more comfortable experience to the user.

[0098] Furthermore, an example in which the space processing unit 122 reproduces the undulating coat as a flat surface in the virtual space using the height map M3 has been described so far. However, the space processing unit 122 may reproduce the court with undulations in the virtual space, by reflecting a shape of the undulations indicated by the height map M3, on the surface in the virtual space corresponding to the map reference surface of the height map M3. In this case, the space processing unit 122 reproduces the player in the virtual space, without correcting each portion of the player. Therefore, a state in the real space is more faithfully reproduced in the virtual space.

[0099] Furthermore, so far, an example has been described in which the space processing unit 122 generates the virtual space including the player, using the height map M generated on the basis of the motion data of the player reproduced in the virtual space. However, the space processing unit 122 may generate the virtual space using the height map M generated using motion data different from the motion data of the player reproduced in the virtual space. For example, in a case where a state of a game is reproduced in real time in the virtual space, the height map M may be generated, on the basis of motion data of a player, acquired in another game played in the past on a court where the game is played.

[0100] The another game performed in the past on the court where the game is played may be, for example, a game played in the same season as the game to be reproduced in the virtual space. In general, in outdoor sports such as soccer, replacement or construction of turf is often performed between seasons. Therefore, a change in the undulations of the court is relatively small through the same season. Therefore, a natural virtual space can be generated, by generating the virtual space on the basis of the height map M generated on the basis of the motion data of the player acquired in such a game.

[0101] Furthermore, an average value of the heights of the blocks may be calculated, for each block B, by using the plurality of height maps M generated on the basis of the motion data acquired in the plurality of games played in the same season. Since accuracy of the height of the block increases, by using such an average value as the height of the block, a more natural virtual space can be generated.

[0102] However, there is a case where there is no motion data acquired in the games played in the same season, such as a first game in the season. In this case, the height map M generated on the basis of motion data acquired in games played in an immediately previous season may be used. Even in this case, for example, a more natural virtual space, as compared with a case where the height map expressing the undulation of each portion in the court in a pseudo manner, can be generated on the basis of the measurement result of the height of the characteristic portion of the court.

[0103] Furthermore, although an example has been described in which the height map M is generated on the basis of the motion data of the player has been described so far, the height map M may be generated on the basis of motion data of another object existing on the court. For example,, the height map M may be generated on the basis of motion data of a soccer ball. Note that, in a case where a center position of the soccer ball is included as the motion data of the soccer ball, a height of the soccer ball may be acquired from a size of the soccer ball. Then, the height map M may be generated using the height of the soccer ball, similarly to the player height. Furthermore, motion data of a referee of the game may be used similarly to the motion data of the player.

[0104] Furthermore, the another object may be reproduced in the virtual space, by correcting a position of the another object indicated by the motion data of the another object existing on the court on the basis of the height map M3. For example, a position of the soccer ball may be corrected on the basis of the height map M3 and may be reproduced in the virtual space.

[0105] <4. Hardware Configuration> An embodiment of the present disclosure has been described above. Next, a hardware configuration example of the server 10 according to the embodiment of the present disclosure will be described with reference to Fig. 10.

[0106] The processing by the server 10 described above may be implemented by one or a plurality of information processing devices. Fig. 10 is a block diagram illustrating a hardware configuration example of an information processing device 900 for implementing the server 10 according to the embodiment of the present disclosure. Note that, the information processing device 900 does not necessarily have the entire hardware configuration illustrated in Fig. 10. Furthermore, a part of the hardware configuration illustrated in Fig. 10 does not need to exist in the server 10.

[0107] As illustrated in Fig. 10, the information processing device 900 includes a CPU 901, a read only memory (ROM) 903, and a RAM 905. Furthermore, the information processing device 900 may also include a host bus 907, a bridge 909, an external bus 911, an interface 913, an input device 915, an output device 917, a storage device 919, a drive 921, a connecting port 923, and a communication device 925. The information processing device 900 may include a processing circuit called a graphics processing unit (GPU), a digital signal processor (DSP), or an application specific integrated circuit (ASIC) instead of or in addition to the CPU 901.

[0108] The CPU 901 functions as an arithmetic processing device and a control device, and controls overall operation in the information processing device 900 or a part thereof, in accordance with various programs recorded in the ROM 903, the RAM 905, the storage device 919, or a removable recording medium 927. The ROM 903 stores programs, operation parameters, and the like to be used by the CPU 901. The RAM 905 temporarily stores a program used in execution by the CPU 901, parameters that change as appropriate during the execution, and the like. The CPU 901, the ROM 903, and the RAM 905 are mutually connected by the host bus 907 including an internal bus such as a CPU bus. Moreover, the host bus 907 is connected to the external bus 911 such as a peripheral component interconnect / interface (PCI) bus via the bridge 909.

[0109] The input device 915 is, for example, a device, such as a button, operated by the user. The input device 915 may include a mouse, a keyboard, a touch panel, a switch, a lever, and the like. Furthermore, the input device 915 may include a microphone that detects user's voice. The input device 915 may be, for example, a remote control device using infrared rays or other radio waves, or may be external connection equipment 929 such as a mobile phone adapted to the operation of the information processing device 900. The input device 915 includes an input control circuit that generates an input signal on the basis of information input by the user and outputs the input signal to the CPU 901. By operating the input device 915, the user inputs various types of data or gives an instruction to perform a processing operation, to the information processing device 900.

[0110] Furthermore, the input device 915 may include an imaging device and a sensor. The imaging device is, for example, a device that generates a captured image by imaging a real space using various members such as an imaging element such as a charge coupled device (CCD) or a complementary metal oxide semiconductor (CMOS), and a lens for controlling image formation of a subject image on the imaging element. The imaging device may capture a still image or a moving image.

[0111] Examples of the sensor include various types of sensors, such as a range sensor, an accelerometer, a gyro sensor, a geomagnetic sensor, a vibration sensor, a light sensor, or a sound sensor. The sensor obtains information regarding a state of the information processing device 900 itself such as attitude of a casing of the information processing device 900, and information regarding a surrounding environment of the information processing device 900 such as brightness or noise around the information processing device 900, for example. Furthermore, the sensor may include a global positioning system (GPS) sensor that receives a GPS signal to measure the latitude, longitude, and altitude of the device.

[0112] The output device 917 includes a device that can visually or audibly notify the user of acquired information. The output device 917 may be, for example, a display device such as a liquid crystal display (LCD) or an organic electro-luminescence (EL) display, an audio output device such as a speaker or a headphone, and the like. Furthermore, the output device 917 may include a plasma display panel (PDP), a projector, a hologram, a printer device, and the like. The output device 917 outputs a result obtained by processing performed by the information processing device 900 as a text or a video such as an image, or outputs the result as a sound such as voice or audio. Furthermore, the output device 917 may include a lighting device or the like that brightens the surroundings.

[0113] The storage device 919 is a data storage device configured as an example of a storage unit of the information processing device 900. The storage device 919 includes, for example, a magnetic storage device such as a hard disk drive (HDD), a semiconductor storage device, an optical storage device, a magneto-optical storage device, and the like. This storage device 919 stores programs and various types of data executed by the CPU 901, various types of data acquired from the outside, and the like.

[0114] The drive 921 is a reader / writer for the removable recording medium 927 such as a magnetic disk, an optical disc, a magneto-optical disk, or a semiconductor memory and is built in or externally attached to the information processing device 900. The drive 921 reads information recorded in the attached removable recording medium 927 and outputs the information to the RAM 905. Furthermore, the drive 921 writes a record to the attached removable recording medium 927.

[0115] The connecting port 923 is a port for connecting a device directly to the information processing device 900. The connecting port 923 may be, for example, a universal serial bus (USB) port, an IEEE1394 port, a small computer system interface (SCSI) port, and the like. Furthermore, the connecting port 923 may be an RS-232C port, an optical audio terminal, a high-definition multimedia interface (HDMI (registered trademark)) port, and the like. By connecting the external connection equipment 929 to the connecting port 923, various types of data may be exchanged between the information processing device 900 and the external connection equipment 929.

[0116] The communication device 925 is, for example, a communication interface including a communication device for connecting to a network 931, or the like. The communication device 925 may be, for example, a communication card for a wired or wireless local area network (LAN), Bluetooth (registered trademark), Wi-Fi (registered trademark), or a wireless USB (WUSB). Furthermore, the communication device 925 may be a router for optical communication, a router for asymmetric digital subscriber line (ADSL), a modem for various types of communication, or the like. The communication device 925 transmits and receives a signal, or the like, with, for example, the Internet or another communication apparatus by using a predetermined protocol such as TCP / IP. Furthermore, the network 931 connected to the communication device 925 is a network connected by wire or wirelessly and is, for example, the Internet, a home LAN, infrared communication, radio wave communication, satellite communication, or the like.

[0117] <5. Additional notes> Although the preferred embodiment of the present disclosure has been described above in detail with reference to the accompanying drawings, the technical scope of the present disclosure is not limited to such an example. It is apparent that a person having ordinary knowledge in the technical field of the present disclosure can achieve various type of examples of changes or modifications within the scope of the technical idea recited in the claims, and it will be naturally understood that such examples also belong to the technical scope of the present disclosure.

[0118] For example, in the above embodiment, the map reference surface and the reference surface in the motion data are set along the ground, and the height map representing the undulations of the ground is generated. However, the present technology is not limited to such an example. For example, the map reference surface and the reference surface in the motion data may be set along a wall. Therefore, a map representing undulations of the wall is generated instead of the height map M in the above embodiment. For example, by generating a map using motion data of a player who plays bouldering, a map representing undulations on a climbing wall can be generated. By using such a map, it is possible to naturally reproduce the player who performs bouldering in the virtual space.

[0119] Further, it is also possible to create a computer program for causing hardware such as a CPU, a ROM, or a RAM included the server 10 to exhibit functions of the server 10. Furthermore, a computer-readable storage medium that stores the computer program is also provided.

[0120] Furthermore, the effects described in the present specification are merely exemplary or illustrative, and not restrictive. In other words, the technology according to the embodiment of the present disclosure can exhibit other effects apparent to those skilled in the art from the description of the present specification, in addition to the effects described above or instead of the effects described above.

[0121] Note that the following configurations also fall within the technological scope of the present disclosure. (1) An information processing system including: an acquisition unit configured to acquire a distance between a reference surface set in a real space and a target, obtained from a motion of the target; and a generation unit configured to generate a map to be used to reproduce the target in a virtual space, representing undulations with respect to the reference surface, on the basis of the distance acquired by the acquisition unit. (2) The information processing system according to (1), in which the distance includes a first distance, and the generation unit divides the reference surface into regions having a predetermined size and sets the shortest first distance, among a plurality of the first distances acquired in the region as a second distance that is a distance representing undulations of the region. (3) The information processing system according to (2), in which the generation unit determines whether or not each of a plurality of the set second distances satisfies a predetermined condition, and in a case where the second distance satisfies the predetermined condition, changes setting of the second distance regarding the region corresponding to the second distance. (4) The information processing system according to (3), in which the predetermined condition includes that the second distance is equal to or more than a first value or equal to or less than a second value. (5) The information processing system according to (3), in which the predetermined condition includes that a difference between the second distance and an average value of the second distance of each region adjacent to the region is equal to or more than a third value. (6) The information processing system according to (5), in which the third value is set according to a degree of an inclination of the undulation with respect to the reference surface. (7) The information processing system according to any one of (2) to (6), in which the generation unit resets a weighted average between the second distance and the second distance of a region adjacent to the region, as the second distance, for the region to which the second distance is set. (8) The information processing system according to any one of (2) to (7), in which the generation unit sets the average value of the second distance of a region adjacent to the region, as the second distance of the region to which the second distance is not set. (9) The information processing system according to any one of (1) to (8), further including: a processing unit configured to correct a position of the target in the virtual space, using the map generated by the generation unit. (10) The information processing system according to (9), in which the processing unit corrects the position of the target in the virtual space, according to an undulation corresponding to the position of the target arranged in the virtual space, represented by the map. (11) The information processing system according to (10), in which the processing unit performs correction of moving the position of the target to a side of the reference surface in the virtual space, by the undulation corresponding to the position of the target. (12) The information processing system according to any one of (1) to (11), further including: a processing unit configured to reflect a shape of the undulation on a surface in the virtual space corresponding to the reference surface. (13) The information processing system according to any one of (1) to (12), in which the reference surface includes a plane set on the basis of the real space, and the distance between the reference surface and the target represents a height of the target from the reference surface. (14) The information processing system according to (13), in which the reference surface includes a plane specified by two axes of three-dimensional coordinate axes set when motion data is obtained from the motion of the target. (15) The information processing system according to any one of (1) to (14), in which the target includes a part of a body of a user existing in the real space, and the reference surface includes a plane set on the basis of a place where the user performs a competition. (16) The information processing system according to (15), in which the part of the body includes a foot of the user. (17) The information processing system according to any one of (1) to (16), in which the reference surface is set on the basis of an object in the real space with a highest priority. (18) The information processing system according to any one of (9) to (11), in which the generation unit generates a single or a plurality of the maps, on the basis of the distance corresponding to the target in a single or a plurality of games played in the past in a place in a real space where the target in the virtual space is reproduced, different from the target in the virtual space, of which a position is corrected by the processing unit, the processing unit corrects a position of the target in the virtual space, according to the undulation corresponding to the position of the target in the virtual space, represented by the single map, generated by the generation unit or an average value of the undulation corresponding to the position of the target in the virtual space, represented by the plurality of maps, and the single or the plurality of games includes a game played in a season same as or immediately before a season when the game played in the real space to be reproduced by the processing unit is played. (19) A program for causing a computer to function as: an acquisition unit that acquires a distance between a reference surface set in a real space and a target, obtained from a motion of the target; and a generation unit that generates a map to be used to reproduce the target in a virtual space, representing undulations with respect to the reference surface, on the basis of the distance between the reference surface and the target acquired by the acquisition unit. (20) An information processing method executed by a computer including: acquiring a distance between a reference surface set in a real space and a target, obtained from a motion of the target; and generating a map to be used to reproduce the target in a virtual space, representing undulations with respect to the reference surface, on the basis of the acquired distance between the reference surface and the target. (21) An information processing system, comprising: processing circuitry configured to acquire a distance for correction between a reference surface set in a real space and a target; and correct a position of the target in a virtual space based on the distance for correction. (22) The information processing system according to (21), wherein the processing circuitry is further configured to generate a map representing undulations with respect to the reference surface, wherein each undulation is based on a respective distance for correction. (23) The information processing system according to (22), wherein the processing circuitry is further configured to correct the position of the target in the virtual space according to an undulation represented in the map corresponding to the position of the target arranged in the virtual space. (24) The information processing system according to (23) wherein the processing circuitry is further configured to move the position of the target to a side of the reference surface in the virtual space by an amount corresponding to a dimension of the undulation. (25) The information processing system according to (21), wherein the processing circuitry is further configured to reflect a shape of an undulation on a surface in the virtual space corresponding to the reference surface. (26) The information processing system according to (21), wherein the reference surface includes a plane set based on the real space, and the distance for correction between the reference surface and the target represents a height of the target from the reference surface. (27) The information processing system according to (26), wherein the reference surface includes a plane specified by two axes of three-dimensional coordinate axes set when motion data is obtained from a motion of the target. (28) The information processing system according to (21), wherein the target includes a part of a body of a user existing in the real space. (29) The information processing system according to claim (28), wherein the part of the body includes a foot of the user. (30) The information processing system according to (21), wherein the reference surface is set based on an object in the real space with a highest priority. (31) The information processing system according to (21), wherein the processing circuitry is further configured to divide the reference surface into a plurality of regions, each region of the plurality of regions having a predetermined size, acquire one or more distances in a region of the plurality of regions, set a shortest acquired distance among the one or more acquired distances as the distance for correction for the region, the distance for correction representing an undulation of the region, and correct the position of the target in the region in the virtual space using the distance for correction. (32) The information processing system according to (31), wherein the processing circuitry is further configured to determine whether or not each of a plurality of the set distances for correction satisfies a predetermined condition, and in a case where a set distance for correction of the plurality of set distances for correction satisfies the predetermined condition, change the set distance for correction. (33) The information processing system according to (32), wherein the predetermined condition includes that the distance for correction is equal to or more than a first value or equal to or less than a second value. (34) The information processing system according to (32), wherein the predetermined condition includes that a difference between the distance for correction and an average value of the distance for correction of each region adjacent to the region is equal to or more than a third value. (35) The information processing system according to (34), wherein the third value is set according to a degree of an inclination of the undulation with respect to the reference surface. (36) The information processing system according to (31), wherein the processing circuitry is further configured to for each region in which the distance for correction is set, update, as a weighted distance, a weighted average between the distance for correction of the region and a distance for correction of another region adjacent to the region. (37) The information processing system according to (31), wherein the processing circuitry is further configured to set, as a distance for correction of a region for which a distance for correction is not set, an average value of distances for correction of one or more regions adjacent to the region for which the distance for correction is not set. (38) The information processing system according to (21), wherein the distance for correction is acquired from a moving target. (39) A non-transitory computer-readable storage medium storing computer-readable instructions thereon which, when executed by a computer, cause the computer to perform a method, the method comprising: acquiring a distance between a reference surface set in a real space and a target; and correcting a position of the target in a virtual space based on the acquired distance. (40) An information processing method executed by a computer comprising: acquiring a distance between a reference surface set in a real space and a target; and correcting a position of the target in a virtual space based on the acquired distance.

[0122] 10 Server 110 Communication unit 120 Control unit 121 Map generation unit 122 Space processing unit 130 Storage unit B Block M Height map

Claims

1. An information processing system, comprising: processing circuitry configured to acquire a distance for correction between a reference surface set in a real space and a target; and correct a position of the target in a virtual space based on the distance for correction.

2. The information processing system according to claim 1, wherein the processing circuitry is further configured to generate a map representing undulations with respect to the reference surface, wherein each undulation is based on a respective distance for correction.

3. The information processing system according to claim 2, wherein the processing circuitry is further configured to correct the position of the target in the virtual space according to an undulation represented in the map corresponding to the position of the target arranged in the virtual space.

4. The information processing system according to claim 3, wherein the processing circuitry is further configured to move the position of the target to a side of the reference surface in the virtual space by an amount corresponding to a dimension of the undulation.

5. The information processing system according to claim 1, wherein the processing circuitry is further configured to reflect a shape of an undulation on a surface in the virtual space corresponding to the reference surface.

6. The information processing system according to claim 1, wherein the reference surface includes a plane set based on the real space, and the distance for correction between the reference surface and the target represents a height of the target from the reference surface.

7. The information processing system according to claim 6, wherein the reference surface includes a plane specified by two axes of three-dimensional coordinate axes set when motion data is obtained from a motion of the target.

8. The information processing system according to claim 1, wherein the target includes a part of a body of a user existing in the real space.

9. The information processing system according to claim 8, wherein the part of the body includes a foot of the user.

10. The information processing system according to claim 1, wherein the reference surface is set based on an object in the real space with a highest priority.

11. The information processing system according to claim 1, wherein the processing circuitry is further configured to divide the reference surface into a plurality of regions, each region of the plurality of regions having a predetermined size, acquire one or more distances in a region of the plurality of regions, set a shortest acquired distance among the one or more acquired distances as the distance for correction for the region, the distance for correction representing an undulation of the region, and correct the position of the target in the region in the virtual space using the distance for correction.

12. The information processing system according to claim 11, wherein the processing circuitry is further configured to determine whether or not each of a plurality of the set distances for correction satisfies a predetermined condition, and in a case where a set distance for correction of the plurality of set distances for correction satisfies the predetermined condition, change the set distance for correction.

13. The information processing system according to claim 12, wherein the predetermined condition includes that the distance for correction is equal to or more than a first value or equal to or less than a second value.

14. The information processing system according to claim 12, wherein the predetermined condition includes that a difference between the distance for correction and an average value of the distance for correction of each region adjacent to the region is equal to or more than a third value.

15. The information processing system according to claim 14, wherein the third value is set according to a degree of an inclination of the undulation with respect to the reference surface.

16. The information processing system according to claim 11, wherein the processing circuitry is further configured to for each region in which the distance for correction is set, update, as a weighted distance, a weighted average between the distance for correction of the region and a distance for correction of another region adjacent to the region.

17. The information processing system according to claim 11, wherein the processing circuitry is further configured to set, as a distance for correction of a region for which a distance for correction is not set, an average value of distances for correction of one or more regions adjacent to the region for which the distance for correction is not set.

18. The information processing system according to claim 1, wherein the distance for correction is acquired from a moving target.

19. A non-transitory computer-readable storage medium storing computer-readable instructions thereon which, when executed by a computer, cause the computer to perform a method, the method comprising: acquiring a distance between a reference surface set in a real space and a target; and correcting a position of the target in a virtual space based on the acquired distance.

20. An information processing method executed by a computer comprising: acquiring a distance between a reference surface set in a real space and a target; and correcting a position of the target in a virtual space based on the acquired distance.

Citation Information

Patent Citations

  • Surface Computer User Interaction

    US20100315413A1

  • Undulation detection device and method

    US20130245997A1

  • Apparatus and method for displaying image in virtual space

    US20170243401A1

  • Ground plane adjustment in a virtual reality environment

    US20180003982A1

  • Contextual-based rendering of virtual avatars

    US20190188895A1