WO2022004422A1 - 情報処理装置、情報処理方法、及び記録媒体 - Google Patents

情報処理装置、情報処理方法、及び記録媒体 Download PDF

Info

Publication number
WO2022004422A1
WO2022004422A1 PCT/JP2021/023153 JP2021023153W WO2022004422A1 WO 2022004422 A1 WO2022004422 A1 WO 2022004422A1 JP 2021023153 W JP2021023153 W JP 2021023153W WO 2022004422 A1 WO2022004422 A1 WO 2022004422A1
Authority
WO
WIPO (PCT)
Prior art keywords
information processing
environment
map data
environment map
processing device
Prior art date
Application number
PCT/JP2021/023153
Other languages
English (en)
French (fr)
Inventor
遼 深澤
浩丈 市川
Original Assignee
ソニーグループ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニーグループ株式会社 filed Critical ソニーグループ株式会社
Priority to US18/003,373 priority Critical patent/US20230148185A1/en
Publication of WO2022004422A1 publication Critical patent/WO2022004422A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Definitions

  • the present technology relates to an information processing device, an information processing method, and a recording medium, and more particularly to an information processing device, an information processing method, and a recording medium capable of arranging virtual objects more appropriately.
  • AR Augmented Reality
  • Patent Document 1 discloses a technique for adjusting the priority of information about a virtual object arranged in the content to be displayed based on a history of actions taken by a user in a virtual space in which a plurality of virtual objects are arranged. It has been disclosed.
  • This technology was made in view of such a situation, and makes it possible to arrange virtual objects more appropriately.
  • the information processing device of one aspect of the present technology includes a control unit that limits the size of the environment map data in which the virtual object is arranged based on the detection result by the sensor in the real space to which the environment map data is associated. It is an information processing device.
  • the information processing apparatus limits the size of the environment map data in which the virtual object is arranged based on the detection result by the sensor in the real space to which the environment map data is associated. Information processing method.
  • the recording medium of one aspect of the present technology is a control unit that limits the size of the environment map data in which the virtual object is placed based on the detection result by the sensor in the real space to which the environment map data is associated. It is a recording medium on which a program that functions as a sensor is recorded.
  • the size of the environment map data in which the virtual object is placed is the detection result by the sensor in the real space to which the environment map data is associated. Limited based on.
  • the information processing device on one aspect of the present technology may be an independent device or an internal block constituting one device.
  • an application that supports augmented reality (AR) provides a user experience that combines virtual and real. Can be done.
  • AR augmented reality
  • an optical see-through type HDM that can provide a user experience by AR
  • a device such as an AR HMD is also referred to as an AR device.
  • UI User Interface
  • environment shape information and attribute information such as floors and walls. Is free to act in the environment.
  • an AR application superimposes a virtual ghost image on the real environment around a user wearing an AR HMD.
  • Virtual ghosts move to escape from the user on the passages in the environment, or come out from the gap between buildings according to the environment.
  • Game AI technology is applied to realize the placement of virtual objects and action decisions according to such an environment.
  • Route search using a navigation mesh is used to generate the movement of virtual objects in the environment.
  • the movable range of the virtual object is registered in advance as the area NA of the navigation mesh, and the movement path of the virtual object is dynamic within that range. Is calculated to.
  • the navigation mesh is basically automatically generated using the floor surface of the environment shape, but in order to actually realize the natural movement in the environment, not only the shape of the environment but also the place in the environment It is necessary to adjust the navigation mesh according to the characteristics of.
  • a collision area CA using a bounding box that matches the mesh shape of the environment is set in the application.
  • Collision is a collision detection object.
  • the virtual object automatically calculates the collision with an object in the environment, slipping through a wall or floor, and colliding with an object in the environment by performing a collision determination based on the collision information of the environment and the collision information of the object itself.
  • This collision is also automatically generated based on the shape of the environment mesh, but like the navigation mesh, the shape is adjusted to realize natural movement, and it also acts in places where the environment mesh does not exist. Adjustments are made such as additional collisions being set to limit.
  • the target environment is the actual environment around the user.
  • AR HMD becomes widespread in the future, users may run AR applications everywhere, and navigation meshes and collisions must be dynamically set for various real environments. ..
  • the navigation mesh in an unknown environment basically follows the shape information of the environment mesh and static attribute information such as floors and walls, and is dynamic such as human movements such as players and non-players. Information cannot be taken into account. Further, also in Patent Document 1 described above, there is a technique for adjusting the priority of the content to be displayed from the action history of the player, but the technique relating to the action range of the character in the real environment is not disclosed.
  • FIG. 4 shows a configuration example of the appearance of the information processing apparatus to which the present technology is applied.
  • the information processing device 10 is configured as an AR device such as an AR HMD.
  • FIG. 4 illustrates a glasses-type AR HMD (AR glass) as a mobile terminal.
  • a transmissive display is placed at a position corresponding to the lens attached to the frame in ordinary eyeglasses.
  • a virtual object is an object displayed by an AR device, and includes both character objects and non-character objects.
  • the information processing device 10 performs processing such as acquisition of surrounding environment information and user's self-position estimation based on data from a built-in camera or sensor.
  • the AR application is executed and the virtual object is presented based on the processing result.
  • the information processing device 10 is an AR HMD
  • it is not limited to optical see-through, and a transmissive method such as video see-through may be used.
  • augmented reality AR
  • it can be applied to all devices that support xR such as virtual reality (VR: Virtual Reality) and mixed reality (MR: Mixed Reality).
  • the information processing device 10 is not limited to the head-mounted HDM, and may be configured as a handheld mobile terminal such as a smartphone.
  • the position of the terminal may be regarded as the position of the user, and the camera angle of view of the terminal may be regarded as the viewing angle of the user.
  • the camera attached to the AR HMD as the shooting environment, if the mesh information of the environment and the information about the player or non-player in the environment can be taken, the camera installed in the environment or unmanned
  • a non-handheld terminal such as an aircraft (drone) or a non-wearable terminal may be used.
  • FIG. 5 shows an example of the internal configuration of the information processing apparatus to which the present technology is applied.
  • the information processing device 10 includes a control unit 100, a sensor unit 101, a storage unit 102, a display unit 103, a speaker 104, a communication unit 105, and an operation input unit 106.
  • the control unit 100 is composed of a processor such as a CPU (Central Processing Unit).
  • the control unit 100 is a central control device (processing device) that controls the operation of each unit and performs various arithmetic processes, and controls the operation of each unit of the information processing device 10.
  • the sensor unit 101 is composed of various sensor devices.
  • the sensor unit 101 senses the user and its surroundings, and supplies the sensor data obtained as a result of the sensing to the control unit 100.
  • the control unit 100 performs various processes based on the sensor data supplied from the sensor unit 101.
  • the storage unit 102 is an auxiliary storage device including a semiconductor memory such as a non-volatile memory.
  • the storage unit 102 may be configured as an internal storage or may be an external storage such as a memory card.
  • the storage unit 102 records various data according to the control from the control unit 100.
  • the display unit 103 is configured as a transmissive display for the left eye or the right eye.
  • the display unit 103 displays an image corresponding to the display data and various types of information according to the control from the control unit 100.
  • the speaker 104 is configured as a speaker built in the information processing device 10.
  • the speaker 104 outputs sound according to the sound data according to the control from the control unit 100.
  • An earphone or headphone may be used instead of the built-in speaker.
  • the information processing device 10 is an AR HMD, it is configured as a small headphone arranged at a position close to the user's left and right ears. May be good.
  • the communication unit 105 is configured as a communication device (communication module) compatible with wireless communication such as wireless LAN (Local Area Network) and cellular communication (for example, LTE-Advanced, 5G, etc.) or wired communication.
  • the communication unit 105 communicates with other devices via the network according to the control from the control unit 100, and exchanges various data.
  • the operation input unit 106 is composed of physical buttons, touch sensors, and the like.
  • the operation input unit 106 supplies operation data corresponding to a predetermined operation by the user to the control unit 100.
  • the control unit 100 performs various processes based on the operation data supplied from the operation input unit 106.
  • the control unit 100 includes an acquisition unit 111, a generation unit 112, a calculation unit 113, a restriction unit 114, and an output control unit 115.
  • the acquisition unit 111 acquires the environmental shooting data obtained at the time of environmental shooting and supplies it to the generation unit 112 and the calculation unit 113.
  • the environmental shooting data includes the sensor data supplied from the sensor unit 101.
  • the environmental shooting data may be appropriately recorded in the storage unit 102 and read out as needed.
  • the generation unit 112 generates an environment mesh based on the environment shooting data supplied from the acquisition unit 111.
  • the environment mesh is environment map data including data showing a three-dimensional structure of a real environment (real space).
  • the generation unit 112 generates a navigation mesh and a collision based on the generated environment mesh.
  • the navigation mesh is an area set in the movable range of the virtual object.
  • Collision is an area set for collision determination between a real environment and a virtual object.
  • the generated environment mesh, navigation mesh, and collision data are supplied to the limiting unit 114.
  • the calculation unit 113 calculates a physical quantity related to a dynamic object in the environment based on the environmental shooting data supplied from the acquisition unit 111, and supplies the data to the restriction unit 114.
  • the physical quantity data related to the dynamic object may be appropriately recorded in the storage unit 102 and read out as needed.
  • the dynamic object is a person object including a user (player, non-player, etc.) or a moving object including a moving object (automobile, bicycle, etc.) excluding the person.
  • Physical quantities related to a dynamic object include the position of the dynamic object, the movement path of the dynamic object, the movement speed of the dynamic object, the residence time of the dynamic object, or the distribution of the visual field range of the dynamic object.
  • these physical quantities are calculated from the sensor data, it can be said that they correspond to the detection results of the sensor unit 101. Further, it can be said that the dynamic object is a photographing object included in the image captured by the sensor unit 101.
  • the restriction unit 114 limits the size of the environment mesh (navigation mesh and collision area) based on the physical quantity of the dynamic object. Data regarding this restricted environment mesh is supplied to the output control unit 115.
  • the output control unit 115 performs rendering processing.
  • the output control unit 115 is supplied with data related to the virtual object read from the storage unit 102 and data related to the restricted environment mesh from the restriction unit 114.
  • the output control unit 115 controls the virtual object arranged in the restricted environment mesh so as to be displayed on the screen of the display unit 103.
  • control unit 100 executing the AR application recorded in the storage unit 102.
  • the sensor unit 101 includes an environment camera 121, a depth sensor 122, a gyro sensor 123, an acceleration sensor 124, an azimuth sensor 125, and a position sensor 126.
  • the environmental camera 121 is a camera for photographing the real environment, and is composed of an image sensor, a signal processing circuit, and the like.
  • the environmental camera 121 supplies the environmental image data obtained by photographing the real environment to the control unit 100.
  • the depth sensor 122 is composed of a distance image sensor or the like using a ToF (Time-of-Flight) method.
  • the depth sensor 122 supplies the depth data obtained by scanning a three-dimensional object in a real environment to the control unit 100.
  • the gyro sensor 123 is a sensor that measures a three-dimensional angular velocity.
  • the acceleration sensor 124 is a sensor that measures acceleration. The gyro sensor 123 and the acceleration sensor 124 measure the three-dimensional angular velocity and acceleration of the information processing apparatus 10, and the measured data is supplied to the control unit 100.
  • the azimuth sensor 125 is composed of a 3-axis geomagnetic sensor and the like.
  • the direction sensor 125 measures the direction in which the information processing apparatus 10 is facing, and the measurement data is supplied to the control unit 100.
  • the position sensor 126 is a sensor that measures the movement or movement of the object to be measured. The position sensor 126 supplies the measurement data obtained by measuring the object to be measured to the control unit 100.
  • FIG. 5 is an example of the configuration of the information processing apparatus 10, and other components may be added or the above-mentioned components may be removed.
  • it is an example of the configuration of the sensor unit 101 described above, and other sensors may be used.
  • a 9DoF (Degrees of Freedom) inertial measurement unit (IMU) can be used.
  • the information processing device 10 configured as described above, in the AR application, when the environment (environment mesh) is photographed, the movement path of the user (player, etc.) in the environment, the distribution of the visual field range, and the third party (non-player) are used. Etc.) existence distribution and movement route are recorded together with the environmental mesh. Then, based on the recorded information, the range that the user can actually move in the environment and the area of the three-dimensional space that is likely to be seen are estimated. At the same time, based on the recorded information, an area of three-dimensional space in which a third party is likely to exist or move in the environment is estimated.
  • the navigation mesh automatically generated by the shape of the environment mesh is compared with the estimated movable range of the user, and the area where the user cannot move or is unlikely to move is the navigation mesh. Excluded from. In addition, comparisons are made with areas of 3D space where third parties are likely to be present or move, and areas where location conflicts with third parties are likely to occur are excluded from the navigation mesh.
  • the shape of the collision automatically generated by the shape of the environment mesh is compared with the estimated distribution of the three-dimensional viewing range of the user, and the user is unlikely to see the shape of the three-dimensional space. Additional collisions are set in areas, such as vertical top surfaces that are likely to be out of sight. Similarly, in order to exclude an area of the three-dimensional space where a third party exists or is likely to move from the movable area of the virtual object, an additional collision is set in the area.
  • the AR application considers not only the shape of the environment but also a person such as a user (player or the like) or a third party (non-player or the like) or a moving object in the actual environment.
  • the available area can be set dynamically.
  • a in FIG. 8 shows a conceptual diagram (Top View) from a bird's-eye view showing the environment from above
  • B in FIG. 8 is a side view when the environment is viewed from the left in the bird's-eye view of A in FIG.
  • the figure (Side View) is shown.
  • buildings such as buildings B11 to B13 and roadside trees such as trees T11 to T14 exist as real objects.
  • some real objects are omitted for the sake of clarity.
  • the user U exists in the space between the building B12 and the building B13.
  • step S11 the output control unit 115 presents to the user U the size of the area (use area) used by the AR application at the time of starting or before starting the AR application.
  • information on the size of the usage area required for the AR application to be activated is displayed on the display unit 103, and the user U who confirms this displays the environment.
  • the operator of the event or the like may perform it according to the situation of using the AR application, or the player who actually experiences the AR application experiences the main part. It may be done before.
  • step S12 the acquisition unit 111 acquires the environmental shooting data obtained at the time of the environmental shooting by the user U.
  • FIG. 9 shows the movement route when the user U, who is the operator or the player, walks in the environment and photographs the real environment by the route R11 represented by the broken line in the figure.
  • the information processing apparatus 10 acquires the sensor data obtained as a result of sensing by the sensor unit 101 as environmental photography data and sequentially records it in the storage unit 102.
  • This environmental shooting data includes environmental image and depth information data for generating an environmental mesh.
  • the estimation result of the three-dimensional shape using an algorithm such as SfM (Structure from Motion) from a plurality of environment images (still images) taken by the environment camera 121, estimation from the environment image, or Meshing is performed based on the point cloud information in the depth direction of the environment obtained by the depth sensor 122.
  • the environment image is used to estimate the position and movement route of dynamic objects in the environment.
  • the storage unit 102 records the position and movement path of a dynamic object (mainly a human such as a third party) other than the player in the environment.
  • the dynamic object is estimated based on the environmental image taken by the environmental camera 121.
  • Various methods can be used to detect dynamic objects, but here are some typical methods. That is, methods such as detection of an animal body by extracting differences from a plurality of continuous images, detection by an estimation algorithm of a human body pose such as OpenPose, and detection by object recognition using dictionary-based image recognition can be used. Using these methods, the types and positions of dynamic objects existing in the environment, their changes, etc. are recorded.
  • the position change of the user U is recorded as time-series data of the head position at the time of shooting.
  • the head position of the user U corresponds to the position and orientation of the AR HMD, and the data included in the position and orientation are the assumed position change from the shooting start point and the posture change of the AR HMD.
  • SLAM Simultaneous Localization and Mapping
  • the SLAM data here may be corrected in combination with position / attitude estimation using inertial navigation by IMU.
  • the position change and the posture change are recorded together with the time stamp of the original environmental image, and the moving speed and the residence time at each place are also recorded as confirmable information.
  • the AR HMD incorporates a sensor capable of detecting the line of sight of the wearer
  • the line of sight data of the user U may be recorded in addition to the above-mentioned position and posture.
  • step S13 the generation unit 112 generates an environment mesh based on the acquired environment shooting data.
  • the environment mesh is meshed based on the estimation result of the three-dimensional shape using an algorithm such as SfM from a plurality of environment images, the estimation from the environment image, or the point cloud information in the depth direction of the environment. ..
  • the entire environment may be recorded as one mesh, or multiple environment meshes may be recorded according to the characteristics of a certain size, location, etc. (for each room, etc.). It may be recorded separately in the environment mesh of.
  • the attributes for each rough location such as floor and wall are segmented and saved at the same time.
  • step S14 the calculation unit 113 determines the movement path of the user U in the environment, the movement speed of the user U in each area in the environment, and the user in each area in the environment, based on the acquired environment shooting data. Calculate the residence time of U.
  • a value corresponding to the route R11 shown in FIG. 9 described above is calculated based on the position change of the user U.
  • a plurality of movement routes may be calculated and recorded.
  • the moving speed of the user U in each area in the environment is divided into blocks for each fixed area in the environment, the average value of the moving speed in each block is calculated, and the environment shooting is performed. Recorded as the moving speed of the user U at the time.
  • the moving speed of the user U is shown in a heat map format represented by a dot pattern attached in each block, and it is shown that the higher the density of the dot pattern, the faster the moving speed. ing.
  • the region near the trees T11 to T14 is a region having a faster moving speed than the other regions.
  • the moving speed may be recorded as a numerical value in association with each area.
  • the residence time of the user U in each region in the environment is divided into blocks for each fixed region in the environment, the average value of the residence time in each block is calculated, and the user U is calculated. Record as the residence time of.
  • the residence time of the user U is shown in a heat map format represented by a dot pattern attached in each block, and the region where the density of the dot pattern is higher is the retention time. It shows that the time is long. Specifically, the region between the building B12 and the building B13 is a region having a longer residence time than the other regions. As the actual data, the residence time may be recorded as a numerical value in association with each area.
  • step S15 the calculation unit 113 calculates the distribution of the visual field range of the user U in the environment based on the acquired environmental shooting data.
  • the visual field range is the range that the user U was looking at while shooting the environment (the direction in which the head or the line of sight was directed). Since the display angle of view that can display the content of AR HMD is limited due to the characteristics of the device, there is a high possibility that the user U will actually see it based on the change in the position of the user U and the change in the head posture during environment shooting.
  • the range of the field of view is estimated and used for the adjustment of the available area performed in the step described later.
  • FIG. 12 shows an example of the distribution of the user U's visual field range in the environment.
  • the environment is divided into blocks for each fixed area, and each block is divided into blocks having a density corresponding to the length of time included in the field of view of the user U. It is attached.
  • the region between the building B12 and the building B13 is a region that has been included in the visual field for a longer time than the other regions.
  • the blocks are also divided in the vertical direction and a dot pattern having a density corresponding to the distribution of each block is attached. Also in FIG. 12B, the higher the density of the dot pattern, the higher the distribution of the visual field range in the vertical direction. In this example, the closer the block is to the head or upper body of the user U, the higher the distribution of the visual field range is. Become. As the actual data, the time spent in the field of view for each block may be recorded as a numerical value.
  • step S16 the calculation unit 113 calculates the position of the dynamic object in the environment and the movement route of the dynamic object based on the acquired environmental shooting data.
  • the dynamic object can be estimated based on the environmental image taken by the environmental camera 121.
  • Techniques such as animal body detection by difference extraction from multiple continuous images, detection by human body pose estimation algorithms such as OpenPose, and object recognition using dictionary-based image recognition are used to detect dynamic objects. Then, using these methods, the types and positions of dynamic objects existing in the environment, their changes, etc. are recorded.
  • the dynamic objects targeted here include moving objects such as automobiles as well as persons who are third parties.
  • FIG. 13 shows an example of the distribution and movement path of dynamic objects in the environment.
  • the hatched areas A11 and A12 are areas where the distribution of dynamic objects is large, and the paths R21 to R23 represented by the broken lines are the movement paths of the dynamic objects.
  • an area with a lot of traffic in the environment, such as a passage or a door, is recorded as an area with a lot of dynamic objects.
  • the area and route of the dynamic object are shown in a conceptual diagram, but in reality, the environment is divided into blocks of a certain size, and the number of dynamic objects in the block is shown. And the residence time may be recorded.
  • steps S13 to S16 are divided into steps for each process for convenience of explanation, but these steps may be processed in parallel or the order of the processes may be changed.
  • steps S13 to S16 the processing proceeds to step S17.
  • step S17 the generation unit 112 generates a navigation mesh and a collision based on the generated environment mesh.
  • the navigation mesh is generally generated for the face selected manually by the developer of the AR application, but here, the navigation mesh is generated for the environment mesh generated by shooting an unknown environment. Generate. Therefore, here, the navigation mesh is generated for the surface presumed to be the floor or the ground in the shape of the environment mesh generated in the process of step S13.
  • the area is the largest and the floor or the ground is determined in relation to the head position of the user U. Select the estimated faces and set the navigation mesh.
  • FIG. 14 shows an example of a navigation mesh generated from the shape of the environment mesh.
  • the hatched region NA is a navigation mesh and is set on a surface presumed to be the ground in the environment mesh.
  • Collisions are generated based on the shape of the environmental mesh. Collision reduces the calculation cost of collision determination and simplifies the shape as appropriate according to the application in the AR application.
  • the shape of the environmental mesh is used as it is as the collision shape. At this time, depending on the capabilities of the device, the characteristics of the application, and the like, it may be replaced with a primitive shape such as a box or a capsule.
  • FIG. 15 shows an example of collisions generated from the shape of the environmental mesh.
  • the hatched region CA is a collision and is set as a bounding box shape that matches the shape of the environmental mesh.
  • FIG. 16 shows an example of the movement path of the virtual object on the navigation mesh before modification when the navigation mesh generated from the shape of the environment mesh is used as it is.
  • a virtual object is based only on the shape information of buildings such as buildings B11 to B13 and roadside trees such as trees T11 to T14.
  • Path R31 uses the entire floor surface in the environment.
  • FIG. 17 shows an example of the arrangement of virtual objects based on the collision setting before modification, that is, when the collision generated from the shape of the environment mesh is used as it is.
  • the virtual objects VO11 to VO16 are freely used in the entire space other than the buildings such as the buildings B11 to B13 in which the collision area CA is set and the places of the roadside trees such as the trees T11 to T14. Have been placed.
  • FIG. 17 As in the case of using the unmodified navigation mesh shown in FIG. 16, in an area where there is actually a lot of traffic, or in an area where the user U tends to overlook such as the sky or the feet. , There is a high possibility that virtual objects will be placed. Such a situation can be avoided by a predetermined rule-based mechanism or how to make a game AI, but it is difficult to preliminarily set universal rules for all unknown environments. ..
  • steps S18 to S27 the navigation mesh and collision generated in the process of step S17 are modified based on the information calculated in the processes of steps S14 to S16.
  • the processes of steps S18 to S27 will be described in order for convenience of explanation, but the order of the processes may be changed or some processes may be omitted.
  • step S18 the limiting unit 114 limits the range of the navigation mesh based on the movement route of the user U calculated in the process of step S14.
  • FIG. 18 shows an example of the modified navigation mesh.
  • the user U is a region in the environment that the user U is not walking at the time of shooting or a region that the user U is avoiding without walking at the time of shooting.
  • the area that is unlikely to move is restricted to be excluded from the area NA of the navigation mesh.
  • the area near the building B11 and the trees T11 to T14 is excluded from the area NA of the navigation mesh.
  • step S19 the limiting unit 114 additionally sets a collision region to a region having a small visual field distribution based on the distribution of the visual field range of the user U calculated in the process of step S15.
  • FIG. 19 shows an example of the modified collision.
  • an additional collision region CA is added to the region where the visual field distribution is small, such as the upper space in the horizontal direction with respect to the user U in each region in the environment. Is set.
  • a collision region CA is additionally set in the vicinity of the building B11 and the trees T11 to T14 as compared with the A of FIG.
  • a collision region CA is additionally set in the space above the user U as compared with B of FIG.
  • step S19 When the process of step S19 is completed, the process proceeds to step S20, and the limiting unit 114 performs a process of expanding or reducing the collision area CA based on the movement speed of the user U calculated in the process of step S14. Will be.
  • step S20 it is determined whether or not the moving speed of the user U in each area in the environment is N1 (km / h) or more.
  • N1 is a threshold value used for determining the moving speed, and is set by a developer or the like.
  • step S20 When it is determined in the determination process of step S20 that the moving speed of the user U is N1 (km / h) or more, the collision region CA at the upper and lower parts of the user U is expanded in the vertical direction (S21). .. On the other hand, when it is determined in the determination process of step S20 that the moving speed of the user U is less than N1 (km / h), the collision region CAs at the upper and lower parts of the user U are reduced in the vertical direction. (S22).
  • the region CA of the upper part corresponding to the outside of the field of view of the user U and the lower part close to the floor surface is expanded.
  • the region CA of the upper and lower collisions is reduced in order to widely use the portion corresponding to the field of view of the user U. This is due to the fact that the human visual field is narrower when moving than when stopped.
  • the area CA of the upper and lower collisions is not limited to be enlarged or reduced, and at least one of the upper and lower areas may be enlarged or reduced.
  • the human visual field range is halved at 40 km / h compared to when stationary. Areas where the moving speed is high according to the moving speed in each area in the environment are used so that the virtual object fits in the field of view of the user U as much as possible by setting a large amount of the area CA of the vertical collision. Limit possible space.
  • step S21 or S22 When the process of step S21 or S22 is completed, the process proceeds to step S23, and the process of expanding or reducing the collision area CA based on the residence time of the user U calculated in the process of step S14 by the limiting unit 114. Is done.
  • step S23 it is determined whether or not the residence time of the user U in each area in the environment is N2 (s) or more.
  • N2 is a threshold value used for determining the residence time, and is set by a developer or the like.
  • step S23 When it is determined in the determination process of step S23 that the residence time of the user U is N2 (s) or more, the collision region CAs at the upper and lower parts of the user U are reduced in the vertical direction (S24). On the other hand, when it is determined in the determination process of step S23 that the residence time of the user U is less than N2 (s), the area CA of the collision between the upper part and the lower part of the user U is expanded in the vertical direction (S25). ).
  • the region CA of the upper and lower collisions is reduced.
  • the region where the residence time is short there is a high possibility that the user U does not see the region other than the traveling direction so much, so that the region CA of the upper part corresponding to the outside of the visual field and the lower part close to the floor surface is expanded.
  • the area CA of the upper and lower collisions is not limited to be enlarged or reduced, and at least one of the upper and lower areas may be enlarged or reduced.
  • step S26 the limiting unit 114 determines whether or not a dynamic object exists in each region in the environment based on the position and movement path of the dynamic object (third party) calculated in the process of step S16. do.
  • step S26 If it is determined in the determination process of step S26 that a dynamic object exists in each area, the process proceeds to step S27.
  • the restriction unit 114 additionally sets the collision area CA to the path of the dynamic object based on the position and the movement path of the dynamic object calculated in the process of step S16, and updates the navigation mesh.
  • the collision area CA is additionally set for the area where the dynamic object is likely to exist or the area where the movement of the dynamic object is estimated to occur frequently, and the movable area NA of the navigation mesh is set. Excluded from.
  • the space that is the existence distribution and the path of the dynamic object shown in FIG. 13 is added as the collision region CA.
  • the shape of the collision area CA added here when the dynamic object is divided and managed for each block as described above, the block shape can be added as the shape of the area CA.
  • a bounding box that surrounds the entire space where the existence distribution of dynamic objects is large may be calculated and added as the shape of the collision region CA.
  • the area excluding the area with many dynamic objects shown in FIG. 13 from the navigation mesh generated from the environment mesh shown in FIG. 14 is defined as the area NA of the modified navigation mesh. This can be achieved simply by comparing the region shapes.
  • step S26 If it is determined in the determination process of step S26 that the dynamic object does not exist in each area, the process of step S27 is skipped.
  • the navigation mesh and collision generated in the process of step S17 are corrected by the process of steps S18 to S27.
  • the size (range) of the environment mesh in which the virtual object is placed is limited by updating to the modified navigation mesh and collision.
  • the position of a dynamic object moving range or field of view of a player or non-player, etc.
  • the position or moving path of a shooting object (non-player, etc.)
  • the dynamic object It can be restricted based on the area of the real environment (real space) estimated based on the position (the area extended to the area where the dynamic object is not detected).
  • the environment mesh is generated based on the image taken by the information processing device 10 such as AR HMD, and the range of the self-position of the information processing device 10 such as AR HMD is narrower than the range of the environment mesh. ..
  • the dynamic object includes the information processing device 10 (a player equipped with) such as AR HMD, and when limiting the size of the environment mesh, the environment mesh does not include the self-position of the information processing device 10 such as AR HMD. The range of is excluded.
  • FIG. 20 shows an example of the movement route of the virtual object using the modified navigation mesh.
  • the area NA of the navigation mesh is updated to exclude the area where there are many people (third parties) as dynamic objects as compared with the area NA of FIG.
  • the path R31 of the virtual object is updated so as to move on the region NA avoiding traffic, and the user U is running the AR application. It is possible to suppress problems such as collision with three parties and overlapping of a virtual object and a third party.
  • FIG. 21 shows an example of the arrangement of virtual objects using the modified collision.
  • a of FIG. 21 as in the navigation mesh shown in A of FIG. 20, the area where there are many people (third parties) as dynamic objects is excluded from the area of the virtual objects VO11 to VO16, which are candidates for placement. It is the area CA of collision.
  • B of FIG. 21 the region including the visual field range of the user U is excluded from the region of the placement candidates of the virtual objects VO11 to VO16.
  • the positions of the virtual objects VO12 to VO14 arranged in the area between the building B12 and the building B13 do not change as compared with the A of FIG.
  • the positions of the virtual objects VO11, VO15, and VO16 arranged in the area have moved to an area other than the place where the collision area CA is set.
  • the virtual objects VO11 to VO14 are arranged at a height considering the visual field range of the user U as compared with B of FIG.
  • the user U is supposed to play the AR application in various environments by using the information processing device 10 such as AR HMD, and dynamically grasps all the environments and completely of the game AI. It is difficult to control the behavior.
  • this technology it is possible to match the movements of users such as user U and third parties in the environment without incurring calculation costs and development costs based on the movements of user U when shooting the environment. You can dynamically set the optimal available area. As a result, virtual objects can be placed more optimally in various real environments.
  • FIG. 22 shows a configuration example of an information processing system to which the present technology is applied.
  • the information processing system is composed of information processing devices 10-1 to 10-N (integer of N: 1 or more) and a server 20.
  • the information processing devices 10-1 to 10-N and the server 20 are connected to each other via the network 30.
  • the network 30 includes a communication network such as the Internet, an intranet, or a mobile phone network.
  • the information processing device 10-1 is a mobile terminal having a display such as an HMD such as an AR HMD, a smartphone, and a wearable device. By executing the AR application, the information processing apparatus 10-1 can present a virtual object in the field of view of the user without separating the user's field of view from the real environment.
  • the information processing apparatus 10-1 has at least a control unit 100, a sensor unit 101, a display unit 103, a speaker 104, a communication unit 105, and an operation input unit 106 in the configuration shown in FIG.
  • the control unit 100 is different from the configuration shown in FIG. 5 in that it has only the acquisition unit 111 and the output control unit 115.
  • the information processing devices 10-2 to 10-N are configured as mobile terminals such as AR HMDs, like the information processing devices 10-1.
  • an AR application can be executed to present a virtual object in the view to each user without separating the view from the real environment.
  • the server 20 is composed of one or a plurality of servers and is installed in a data center or the like.
  • the server 20 has at least a control unit 100, a storage unit 102, and a communication unit 105 in the configuration shown in FIG.
  • the control unit 100 has a generation unit 112, a calculation unit 113, and a restriction unit 114.
  • the information processing device 10-1 transmits a processing request including environmental shooting data to the server 20 via the network 30.
  • the environmental shooting data includes the sensor data from the sensor unit 101.
  • the server 20 receives the processing request transmitted from the information processing apparatus 10-1 via the network 30.
  • the server 20 generates an environment mesh and the like based on the environment shooting data, and calculates a physical quantity related to the dynamic object.
  • the server 20 limits the size of the environment mesh based on the physical quantity of the dynamic object.
  • the server 20 transmits a processing response including data on the restricted environment mesh and data on the virtual object to the information processing apparatus 10-1 via the network.
  • the information processing device 10-1 receives the processing response transmitted from the server 20 via the network 30.
  • the information processing apparatus 10-1 controls the virtual object arranged in the restricted environment mesh so as to be displayed on the screen of the display unit 103.
  • the processing executed by the information processing apparatus 10-1 has been described as a representative, the processing executed by the information processing apparatus 10-2 to 10-N is also the same and is repeated, so the description thereof will be omitted. .. Further, the environment shooting data may be appropriately recorded in the storage unit 102 of the server 20 and read out as needed.
  • control unit 100 has the acquisition unit 111 and the output control unit 115, while in the server 20, the control unit 100 is the generation unit 112.
  • the configuration having the calculation unit 113 and the restriction unit 114 is illustrated, but these configurations are examples.
  • a part of the generation unit 112, the calculation unit 113, and the restriction unit 114 may be on the control unit 100 side of the information processing apparatus 10.
  • the AR application is executed by the information processing device 10 configured as the AR HMD is illustrated, but the AR application may be applied not only to the AR application but also to other contents such as a game. ..
  • the environment mesh is generated based on the environment shooting data obtained at the time of starting the AR application or before the start is exemplified, but the environment mesh prepared in advance may be used.
  • the data of the environment mesh may be recorded in the storage unit 102 of the information processing apparatus 10 or the server 20 and appropriately read out.
  • the series of processes described above can be executed by hardware or software.
  • the programs constituting the software are installed in the computer of each device.
  • FIG. 23 is a block diagram showing a configuration example of computer hardware that executes the above-mentioned series of processes programmatically.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • An input / output interface 1005 is further connected to the bus 1004.
  • An input unit 1006, an output unit 1007, a recording unit 1008, a communication unit 1009, and a drive 1010 are connected to the input / output interface 1005.
  • the input unit 1006 includes a microphone, a keyboard, a mouse, and the like.
  • the output unit 1007 includes a speaker, a display, and the like.
  • the recording unit 1008 includes a hard disk, a non-volatile memory, and the like.
  • the communication unit 1009 includes a network interface and the like.
  • the drive 1010 drives a removable recording medium 1011 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the CPU 1001 loads the program recorded in the ROM 1002 and the recording unit 1008 into the RAM 1003 via the input / output interface 1005 and the bus 1004 and executes the above-mentioned series. Is processed.
  • the program executed by the computer (CPU1001) can be recorded and provided on the removable recording medium 1011 as a package medium or the like, for example.
  • the program can also be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
  • the program can be installed in the recording unit 1008 via the input / output interface 1005 by mounting the removable recording medium 1011 in the drive 1010. Further, the program can be received by the communication unit 1009 via a wired or wireless transmission medium and installed in the recording unit 1008. In addition, the program can be pre-installed in the ROM 1002 or the recording unit 1008.
  • the processes performed by the computer according to the program do not necessarily have to be performed in chronological order in the order described as the flowchart. That is, the processing performed by the computer according to the program includes processing executed in parallel or individually (for example, processing by parallel processing or processing by an object). Further, the program may be processed by one computer (processor) or may be distributed processed by a plurality of computers.
  • each step of the process shown in FIGS. 6 and 7 can be executed by one device or shared by a plurality of devices. Further, when a plurality of processes are included in one step, the plurality of processes included in the one step can be executed by one device or shared by a plurality of devices.
  • An information processing device including a control unit that limits the size of environment map data in which virtual objects are arranged based on the detection result of a sensor in the real space to which the environment map data is associated.
  • the detection result includes the position of the dynamic object detected by the sensor.
  • the dynamic object includes a mobile terminal provided with the sensor.
  • the environment map data is generated based on an image taken by the mobile terminal.
  • the information processing device wherein the range of the self-position of the mobile terminal detected by the sensor is narrower than the range of the environment map data.
  • the dynamic object is a shooting object included in an image taken by a mobile terminal provided with the sensor.
  • the information processing device according to (5) above, wherein the control unit excludes the position of the photographing object and the movement path of the photographing object from the range of the environment map data.
  • the environment map data is data showing a three-dimensional structure, and is The dynamic object is a person object and The information processing device according to any one of (2) to (6), wherein the control unit limits the range of the environment map data in the vertical direction based on the visual field range at the position of the person object.
  • the dynamic object is a person object and The information processing device according to any one of (2) to (7), wherein the control unit limits the range of the environment map data based on the movement path according to the position of the person object.
  • the detection result includes the moving speed of the person object detected by the sensor.
  • the information processing device according to (7), wherein the control unit limits the range of the environment map data based on the moving speed of the person object.
  • the control unit It is determined whether or not the moving speed is equal to or higher than the first threshold value.
  • the information processing apparatus according to (10), wherein when it is determined that the moving speed is equal to or higher than the first threshold value, the range of the environment map data in the vertical direction at the position of the person object is limited.
  • the detection result includes the residence time of the person object detected by the sensor.
  • the information processing device according to (7) or (10), wherein the control unit limits the range of the environment map data based on the residence time of the person object.
  • the control unit It is determined whether or not the residence time is less than the second threshold value, and it is determined.
  • the application is an AR application and is an AR application.
  • the information processing device controls the virtual object arranged in the environment map data so as to be displayed on a transmissive display.
  • the information processing device according to any one of (1) to (16) above, which is configured as a mobile terminal provided with the sensor.
  • the mobile terminal is a head-mounted display capable of executing an AR application.
  • Information processing equipment An information processing method that limits the size of environment map data in which virtual objects are placed based on the detection results of sensors in the real space to which the environment map data is associated.
  • Computer A recording medium in which a program that functions as a control unit that limits the size of environment map data in which virtual objects are placed based on the detection result by a sensor in the real space to which the environment map data is associated is recorded.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Architecture (AREA)
  • Optics & Photonics (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本技術は、より適切に仮想オブジェクトを配置することができるようにする情報処理装置、情報処理方法、及び記録媒体に関する。 仮想オブジェクトが配置される環境マップデータの大きさを、環境マップデータが対応付けられた実空間のセンサによる検出結果に基づいて制限する制御部を備える情報処理装置が提供されることで、より適切に仮想オブジェクトを配置することができる。例えば、本技術は、AR HMDに適用することができる。

Description

情報処理装置、情報処理方法、及び記録媒体
 本技術は、情報処理装置、情報処理方法、及び記録媒体に関し、特に、より適切に仮想オブジェクトを配置することができるようにした情報処理装置、情報処理方法、及び記録媒体に関する。
 近年、拡張現実(AR:Augmented Reality)などの現実世界と仮想世界を融合させて新しい体験を提供するための研究開発が盛んに行われている。
 例えば、特許文献1には、複数の仮想オブジェクトが配置された仮想空間内でユーザがとった行動の履歴に基づいて、表示するコンテンツに配置される仮想オブジェクトに関する情報の優先度を調整する技術が開示されている。
特開2017-41019号公報
 ところで、仮想オブジェクトを配置する環境が、ユーザの周囲の現実環境となる場合に、様々な現実環境に対して仮想オブジェクトを配置する必要がある。そのため、様々な現実環境に対して、より適切に仮想オブジェクトを配置することが求められる。
 本技術はこのような状況に鑑みてなされたものであり、より適切に仮想オブジェクトを配置することができるようにするものである。
 本技術の一側面の情報処理装置は、仮想オブジェクトが配置される環境マップデータの大きさを、前記環境マップデータが対応付けられた実空間のセンサによる検出結果に基づいて制限する制御部を備える情報処理装置である。
 本技術の一側面の情報処理方法は、情報処理装置が、仮想オブジェクトが配置される環境マップデータの大きさを、前記環境マップデータが対応付けられた実空間のセンサによる検出結果に基づいて制限する情報処理方法である。
 本技術の一側面の記録媒体は、コンピュータを、仮想オブジェクトが配置される環境マップデータの大きさを、前記環境マップデータが対応付けられた実空間のセンサによる検出結果に基づいて制限する制御部として機能させるプログラムが記録された記録媒体である。
 本技術の一側面の情報処理装置、情報処理方法、及び記録媒体においては、仮想オブジェクトが配置される環境マップデータの大きさが、前記環境マップデータが対応付けられた実空間のセンサによる検出結果に基づいて制限される。
 本技術の一側面の情報処理装置は、独立した装置であってもよいし、1つの装置を構成している内部ブロックであってもよい。
ARアプリケーションの例を示す図である。 ナビゲーションメッシュの設定例を示す図である。 コリジョンの設定例を示す図である。 本技術を適用した情報処理装置の外観の構成例を示す図である。 本技術を適用した情報処理装置の内部の構成例を示す図である。 本技術を適用した処理の流れを説明するフローチャートである。 本技術を適用した処理の流れを説明するフローチャートである。 ARアプリケーションを実行する環境の例を示す図である。 環境の撮影経路の例を示す図である。 環境内の各領域でのユーザの移動速度の例を示す図である。 環境内の各領域でのユーザの滞留時間の例を示す図である。 環境内でのユーザの視野範囲の分布の例を示す図である。 環境内での動的オブジェクトの分布及び移動経路の例を示す図である。 環境メッシュから生成されたナビゲーションメッシュの例を示す図である。 環境メッシュから生成されたコリジョンの例を示す図である。 修正前のナビゲーションメッシュを用いた仮想オブジェクトの移動経路の例を示す図である。 修正前のコリジョンを用いた仮想オブジェクトの配置の例を示す図である。 修正後のナビゲーションメッシュの例を示す図である。 修正後のコリジョンの例を示す図である。 修正後のナビゲーションメッシュを用いた仮想オブジェクトの移動経路の例を示す図である。 修正後のコリジョンを用いた仮想オブジェクトの配置の例を示す図である。 本技術を適用した情報処理システムの構成例を示す図である。 コンピュータのハードウェアの構成例を示す図である。
<1.本技術の実施の形態>
 光学シースルー型のヘッドマウントディスプレイ(HMD:Head Mounted Display)などのデバイスでは、拡張現実(AR)に対応したアプリケーション(以下、ARアプリケーションともいう)によって、仮想と現実が融合したユーザ体験を提供することができる。以下の説明では、ARによるユーザ体験を提供可能な光学シースルー型のHDMをAR HMDと称し、AR HMD等のデバイスをARデバイスとも称する。
 このような拡張された現実環境を実現するためには、環境の形状情報、床や壁などの属性情報を用いて、仮想のアイテムやユーザインターフェース(UI:User Interface)を配置したり、仮想のキャラクタが環境内を自由に行動したりといったことが行われる。
 例えば、図1では、ARアプリケーションによって、AR HMDを装着したユーザの周囲の現実環境に、仮想のゴーストの映像が重畳されている。仮想のゴーストは、環境内の通路上でユーザから逃げるように移動したり、環境に合わせて建物と建物の間の隙間から出てきたりする。
 このような環境に合わせた仮想オブジェクトの配置や行動決定の実現には、ゲームAIの技術が応用されている。環境内での仮想オブジェクトの動きの生成には、ナビゲーションメッシュ(Navigation Mesh)を用いた経路探索が使用されている。
 例えば、図2に示すように、環境の形状情報に基づき、仮想オブジェクトの移動可能な範囲を、ナビゲーションメッシュの領域NAとして事前に登録しておき、その範囲内で仮想オブジェクトの移動経路が動的に計算される。ナビゲーションメッシュは、基本的に環境形状の床面を利用して自動生成されるが、実際に環境の中での自然な動きを実現するためには、環境の形状だけでなく、環境内の場所の特性に応じてナビゲーションメッシュの調整が必要となる。
 実際のゲーム開発においても、環境内にある通行不可な部分などに事前に属性情報を付加することで、ナビゲーションメッシュの範囲の対象外にしたり、自動生成されたナビゲーションメッシュの形状を各ゲームの専用ルール(通行可能な幅等)や開発者の手作業等により修正したりしている。
 同様に、図3に示すように、環境と仮想オブジェクトとの衝突判定のために、アプリケーション内では、環境のメッシュ形状に合わせたバウンディングボックスを利用したコリジョンの領域CAが設定される。コリジョン(Collision)は、衝突判定用オブジェクトである。仮想オブジェクトは、環境のコリジョンとオブジェクト自身の持つコリジョン情報に基づき、衝突判定を行うことにより、壁や床へのめり込みや、すり抜け、環境内にある物体との衝突を自動で計算している。
 このコリジョンも基本的には環境メッシュの形状に基づき自動生成されるが、ナビゲーションメッシュと同様に、自然な動きの実現のために形状の調整が行われたり、環境メッシュが存在しない場所にも行動を制限するために追加でコリジョンが設定されたりといった調整が行われる。
 AR HMD向けのARアプリケーションにおいてこれらのゲームAIの技術を応用する場合、ARでは、対象とする環境がユーザの周囲の現実環境となる。また、将来的にAR HMDが普及した際には、ユーザはあらゆる場所でARアプリケーションを実行する可能性があり、様々な現実環境に対して、ナビゲーションメッシュやコリジョンを動的に設定しなければならない。
 また、現実環境内では、環境の形状だけでなく、プレイヤとしてのユーザの動き方や視点位置の高さ、また街中などの公共の場でARアプリケーションを実行する場合には非プレイヤとなる第三者の移動経路や分布をも考慮してキャラクタの動きを決定する必要がある。
 しかしながら、現状では未知の環境におけるナビゲーションメッシュは基本的に環境メッシュの形状情報、床や壁などの静的な属性情報に沿ったものになり、プレイヤや非プレイヤ等の人間の動きなどの動的な情報を考慮することができていない。また、上述した特許文献1においても、プレイヤの行動履歴から、表示するコンテンツの優先度を調整する技術はあるが、現実環境におけるキャラクタの行動範囲に関する技術については開示されていない。
 そこで、本技術では、現実環境上に合わせて仮想オブジェクトの配置や動き方を動的に決定するARアプリケーションにおいて、環境の撮影時のユーザ(プレイヤ等)の移動経路や視野範囲分布、撮影時に観測された非プレイヤの移動経路や存在分布などの情報に基づき、仮想オブジェクトの配置や移動可能な領域を制限することで、より適切に仮想オブジェクトが配置されるようにする。以下、図面を参照しながら、本技術の実施の形態について説明する。
(装置の構成)
 図4は、本技術を適用した情報処理装置の外観の構成例を示している。
 情報処理装置10は、AR HMD等のARデバイスとして構成される。図4では、モバイル端末としての眼鏡型のAR HMD(ARグラス)を例示している。
 このAR HMDでは、通常の眼鏡においてフレームに取り付けられるレンズに対応した位置に、透過型のディスプレイが配置されている。AR HMDは、ユーザの目の周辺に装着されることで、当該ユーザの視界を現実環境(実空間)から切り離すことなく、AR技術を用いて仮想オブジェクトを視界内に描画することができる。
 仮想オブジェクトとは、ARデバイスによって表示されるオブジェクトであり、キャラクタオブジェクトと非キャラクタオブジェクトのいずれも含む。
 情報処理装置10では、内蔵されたカメラやセンサからのデータに基づき、周囲の環境情報の取得やユーザの自己位置推定などの処理が行われる。情報処理装置10では、その処理結果に基づき、ARアプリケーションが実行され、仮想オブジェクトが提示される。
 以下の説明では、情報処理装置10がAR HMDである場合を示すが、現実環境を用いたデバイスであれば、光学シースルーに限らず、ビデオシースルー等の透過型の方式であってもよく、また、拡張現実(AR)に限らず、仮想現実(VR:Virtual Reality)や複合現実(MR:Mixed Reality)等のxRに対応したデバイス全体に適用することが可能である。
 なお、情報処理装置10は、頭部装着型のHDMに限らず、スマートフォン等のハンドヘルド型のモバイル端末として構成されても構わない。モバイル端末として構成するに際しては、当該端末の位置をユーザの位置とし、当該端末のカメラ画角をユーザの視野角としてみなしてもよい。
 また、撮影環境としては、AR HMDに取り付けられたカメラを用いるほか、環境のメッシュ情報、及び環境内のプレイヤ又は非プレイヤに関する情報が撮影可能であれば、環境内に設置されたカメラや、無人航空機(ドローン)等の非ハンドヘルド端末又は非ウェアラブル端末を用いても構わない。
 図5は、本技術を適用した情報処理装置の内部の構成例を示している。
 図5において、情報処理装置10は、制御部100、センサ部101、記憶部102、表示部103、スピーカ104、通信部105、及び操作入力部106から構成される。
 制御部100は、CPU(Central Processing Unit)等のプロセッサから構成される。制御部100は、各部の動作の制御や各種の演算処理を行う中心的な制御装置(処理装置)であり、情報処理装置10の各部の動作を制御する。
 センサ部101は、各種のセンサデバイスから構成される。センサ部101は、ユーザやその周辺などのセンシングを行い、そのセンシングの結果得られるセンサデータを、制御部100に供給する。制御部100は、センサ部101から供給されるセンサデータに基づいて、各種の処理を行う。
 記憶部102は、不揮発性メモリ等の半導体メモリを含む補助記憶装置である。記憶部102は、内部ストレージとして構成されてもよいし、メモリカード等の外部ストレージであってもよい。記憶部102は、制御部100からの制御に従い、各種のデータを記録する。
 表示部103は、情報処理装置10がAR HMDである場合、表示部103は、左眼用又は右眼用の透過型のディスプレイとして構成される。表示部103は、制御部100からの制御に従い、表示データに応じた画像や、各種の情報を表示する。
 スピーカ104は、情報処理装置10に内蔵されるスピーカとして構成される。スピーカ104は、制御部100からの制御に従い、音データに応じた音を出力する。なお、内蔵スピーカの代わりに、イヤホンやヘッドホンを利用してもよく、例えば、情報処理装置10がAR HMDである場合、ユーザの左右の耳に近接した位置に配置される小型ヘッドホンとして構成されてもよい。
 通信部105は、無線LAN(Local Area Network)や、セルラー方式の通信(例えばLTE-Advancedや5G等)などの無線通信又は有線通信に対応した通信装置(通信モジュール)として構成される。通信部105は、制御部100からの制御に従い、ネットワークを介して他の機器と通信を行い、各種のデータをやり取りする。
 操作入力部106は、物理的なボタンやタッチセンサなどから構成される。操作入力部106は、ユーザによる所定の操作に応じた操作データを、制御部100に供給する。制御部100は、操作入力部106から供給される操作データに基づいて、各種の処理を行う。
 制御部100は、取得部111、生成部112、算出部113、制限部114、及び出力制御部115を有する。
 取得部111は、環境撮影時に得られる環境撮影データを取得し、生成部112及び算出部113に供給する。環境撮影データは、センサ部101から供給されるセンサデータを含む。環境撮影データは、記憶部102に適宜記録して、必要に応じて読み出すようにしても構わない。
 生成部112は、取得部111から供給される環境撮影データに基づいて、環境メッシュを生成する。環境メッシュは、現実環境(実空間)の3次元構造を示すデータを含む環境マップデータである。
 また、生成部112は、生成した環境メッシュに基づいて、ナビゲーションメッシュとコリジョンを生成する。ナビゲーションメッシュは、仮想オブジェクトの移動可能な範囲に設定される領域である。コリジョンは、現実環境と仮想オブジェクトとの衝突判定のために設定される領域である。
 生成された環境メッシュ、ナビゲーションメッシュ、及びコリジョンに関するデータは、制限部114に供給される。
 算出部113は、取得部111から供給される環境撮影データに基づいて、環境内での動的オブジェクトに関する物理量を算出し、そのデータを制限部114に供給する。動的オブジェクトに関する物理量のデータは、記憶部102に適宜記録して、必要に応じて読み出すようにしても構わない。
 動的オブジェクトは、ユーザ(プレイヤや非プレイヤ等)を含む人物オブジェクト、又は人物を除いた移動物体(自動車や自転車等)を含む移動オブジェクトである。動的オブジェクトに関する物理量としては、動的オブジェクトの位置、動的オブジェクトの移動経路、動的オブジェクトの移動速度、動的オブジェクトの滞留時間、又は動的オブジェクトの視野範囲の分布などを含む。
 換言すれば、これらの物理量は、センサデータから算出されるため、センサ部101の検出結果に相当するとも言える。また、動的オブジェクトは、センサ部101により撮影された画像に含まれる撮影オブジェクトであるとも言える。
 制限部114には、生成部112からの環境メッシュ、ナビゲーションメッシュ、及びコリジョンに関するデータと、算出部113からの動的オブジェクトに関する物理量のデータが供給される。制限部114は、環境メッシュの大きさ(ナビゲーションメッシュとコリジョンの領域)を、動的オブジェクトに関する物理量に基づいて制限する。この制限された環境メッシュに関するデータは、出力制御部115に供給される。
 出力制御部115は、レンダリング処理を行う。出力制御部115には、記憶部102から読み出した仮想オブジェクトに関するデータと、制限部114からの制限された環境メッシュに関するデータが供給される。出力制御部115は、制限された環境メッシュに配置された仮想オブジェクトが、表示部103の画面に表示されるように制御する。
 なお、これらの機能の一部又は全部は、制御部100が、記憶部102に記録されたARアプリケーションを実行することで実現される。
 センサ部101は、環境カメラ121、深度センサ122、ジャイロセンサ123、加速度センサ124、方位センサ125、及び位置センサ126を有する。
 環境カメラ121は、現実環境を撮影するためのカメラであって、イメージセンサや信号処理回路などから構成される。環境カメラ121は、現実環境を撮影することで得られる環境画像データを、制御部100に供給する。
 深度センサ122は、ToF(Time-of-Flight)方式を利用した距離画像センサなどから構成される。深度センサ122は、現実環境における3次元の物体をスキャンすることで得られる深度データを、制御部100に供給する。
 ジャイロセンサ123は、3次元の角速度を測定するセンサである。加速度センサ124は、加速度を測定するセンサである。ジャイロセンサ123と加速度センサ124により、情報処理装置10の3次元の角速度と加速度が測定され、その測定データが、制御部100に供給される。
 方位センサ125は、3軸の地磁気センサなどから構成される。方位センサ125により、情報処理装置10が向いている方向が測定され、その測定データが、制御部100に供給される。位置センサ126は、被測定物の動きや移動を測定するセンサである。位置センサ126は、被測定物を測定することで得られる測定データを、制御部100に供給する。
 なお、図5に示した構成は、情報処理装置10の構成の一例であって、他の構成要素を追加したり、あるいは上述の構成要素を取り除いたりしてもよい。特に、上述したセンサ部101の構成の一例であって、他のセンサを用いても構わない。例えば、9DoF(Degrees of Freedom)の慣性計測装置(IMU:Inertial Measurement Unit)を用いることができる。
 以上のように構成される情報処理装置10では、ARアプリケーションにおいて、環境(環境メッシュ)の撮影時に、環境内でのユーザ(プレイヤ等)の移動経路や視野範囲の分布、第三者(非プレイヤ等)の存在分布や移動経路が、環境メッシュとともに記録される。そして、記録された情報に基づき、環境内でユーザが実際に移動可能な範囲及び見る可能性が高い3次元空間の領域が推定される。それと同時に、記録された情報に基づき、環境内における第三者が存在又は移動する可能性の高い3次元空間の領域が推定される。
 続いて、情報処理装置10では、環境メッシュの形状により自動生成されたナビゲーションメッシュと、推定されたユーザの移動可能な範囲が比較され、ユーザが移動できない又は移動する可能性が低い領域がナビゲーションメッシュから除外される。さらに、第三者の存在又は移動する可能性が高い3次元空間の領域との比較が行われ、第三者との場所の競合が起きる可能性が高い領域がナビゲーションメッシュから除外される。
 さらに、情報処理装置10では、環境メッシュの形状により自動生成されたコリジョンの形状と、推定されたユーザの3次元的な視野範囲の分布が比較され、ユーザが見る可能性が低い3次元空間の領域、例えば視野外になり得る可能性が高い垂直上面などに、追加でコリジョンが設定される。同様に、第三者の存在又は移動する可能性の高い3次元空間の領域を、仮想オブジェクトの移動可能な領域から除外するために、当該領域にコリジョンが追加で設定される。
 このように、情報処理装置10では、環境の形状だけでなく、実際の環境内のユーザ(プレイヤ等)や第三者(非プレイヤ等)などの人物や移動物体を考慮して、ARアプリケーションが利用可能な領域の設定を動的に行うことができる。
(処理の流れ)
 次に、図6,図7のフローチャートを参照して、情報処理装置10により実行される情報処理の流れを説明する。
 以下の説明では、ユーザUの頭部に装着されたAR HMD等の情報処理装置10にてARアプリケーションを実行する際の現実環境(実空間)が、図8に示すような環境であるとして説明する。
 すなわち、図8のAは、環境を上方から表した鳥瞰視点での概念図(Top View)を示し、図8のBは、図8のAの鳥瞰図における左方から環境を見た場合の側面図(Side View)を示している。
 図8のA,Bに示すように、この環境では、建物B11乃至B13などの建造物や、樹木T11乃至T14などの街路樹が実オブジェクトとして存在している。ただし、図8のBの側面図では、説明をわかりやすくするために一部の実オブジェクトを省略して記載している。図8のA,Bにおいては、建物B12と建物B13の間の空間に、ユーザUが存在している。
 ステップS11において、出力制御部115は、ARアプリケーションの起動時又は起動前に、当該アプリケーションで利用する領域(利用エリア)の広さをユーザUに提示する。
 例えば、情報処理装置10では、起動するARアプリケーションとして必要な利用エリアの広さに関する情報が表示部103に表示されるため、これを確認したユーザUが、環境の撮影を行う。このような環境の撮影を行うユーザUとしては、ARアプリケーションを使用する状況に合わせて、イベント等の運営者が実施してもよいし、あるいは、実際にARアプリケーションを体験するプレイヤが本編の体験前に実施してもよい。
 ステップS12において、取得部111は、ユーザUによる環境撮影時に得られる環境撮影データを取得する。
 図9は、運営者又はプレイヤであるユーザUが環境内を歩いて現実環境を撮影したときの移動経路を、図中の破線で表した経路R11により示している。このような移動経路での撮影によって、情報処理装置10では、センサ部101によるセンシングの結果得られるセンサデータが、環境撮影データとして取得され、記憶部102に順次記録される。
 この環境撮影データには、環境メッシュを生成するための環境画像やデプス情報のデータが含まれる。環境メッシュを生成するに際しては、環境カメラ121により撮影された複数の環境画像(静止画像)からのSfM(Structure from Motion)等のアルゴリズムを用いた3次元形状の推定結果や、環境画像から推定又は深度センサ122により得られた環境の深さ方向のポイントクラウド情報に基づき、メッシュ化が行われる。
 環境画像は、環境内の動的オブジェクトの位置や移動経路の推定に用いられる。記憶部102は、環境内のプレイヤ以外の動的オブジェクト(主に第三者などの人間)の位置と移動経路を記録する。動的オブジェクトは、環境カメラ121により撮影された環境画像に基づいて推定される。
 動的オブジェクトの検出には、様々な手法を用いることが可能であるが、ここでは、代表的な手法をいくつか列挙する。すなわち、複数の連続画像からの差分抽出による動物体の検出、OpenPose等の人体ポーズの推定アルゴリズムによる検出、辞書ベースの画像認識を用いたオブジェクト認識による検出などの手法を用いることができる。これらの手法を用いて環境内に存在する動的オブジェクトの種類や位置、その変化などが記録される。
 ユーザUの位置変化は、撮影時の頭部位置の時系列データとして記録される。ユーザUの頭部位置は、AR HMDの位置姿勢に相当し、当該位置姿勢に含まれるデータは、撮影開始点からの想定的な位置変化とAR HMDの姿勢変化である。これらは、環境カメラ121により撮影された連続的な環境画像を用いて算出されたSLAM(Simultaneous Localization and Mapping)の結果を用いることができる。
 ここでのSLAMデータは、IMUによる慣性航法を用いた位置姿勢推定と組み合わせて補正されたデータを用いてもよい。また、位置変化と姿勢変化は、もとになった環境画像のタイムスタンプとともに記録され、各場所における移動速度や滞留時間なども確認可能な情報として記録される。また、AR HMDに装着者の視線検出が可能なセンサが組み込まれている場合には、上述した位置と姿勢に加えて、ユーザUの視線データを記録してもよい。
 ステップS13において、生成部112は、取得した環境撮影データに基づいて、環境メッシュを生成する。
 上述した通り、環境メッシュは、複数の環境画像からのSfM等のアルゴリズムを用いた3次元形状の推定結果や、環境画像から推定又は環境の深さ方向のポイントクラウド情報に基づいてメッシュ化される。
 環境メッシュは、環境の広さや使用するARアプリケーションでの使い方に応じて、環境全体を1つのメッシュとして記録してもよいし、一定の広さや場所等(部屋ごと等)の特性に応じて複数の環境メッシュに分けて記録してもよい。このとき、生成した環境メッシュに基づき、床や壁などの大まかな場所ごとの属性をセグメンテーションして同時に保存するようにする。
 ステップS14において、算出部113は、取得した環境撮影データに基づいて、環境内でのユーザUの移動経路、環境内の各領域でのユーザUの移動速度、及び環境内の各領域でのユーザUの滞留時間を算出する。
 環境内でのユーザUの移動経路としては、ユーザUの位置変化に基づき、上述した図9に示した経路R11に応じた値が算出される。環境撮影時に複数回の撮影を行った場合には、複数の移動経路を算出して記録してもよい。
 環境内の各領域でのユーザUの移動速度は、図10に示すように、環境内を一定の領域ごとのブロックに分割して各ブロック内での移動速度の平均値を算出し、環境撮影時のユーザUの移動速度として記録する。
 図10の例では、ユーザUの移動速度を、各ブロック内に付されたドットパターンで表したヒートマップ形式で示しており、ドットパターンの密度がより高い領域ほど、移動速度が速いことを示している。具体的には、樹木T11乃至T14の付近の領域は、他の領域と比べて、移動速度が速い領域となる。実際のデータとしては、移動速度を数値として各領域と対応付けて記録すればよい。
 環境内の各領域でのユーザUの滞留時間は、図11に示すように、環境内を一定の領域ごとのブロックに分割して各ブロック内での滞留時間の平均値を算出し、ユーザUの滞留時間として記録する。
 図11の例では、図10と同様に、ユーザUの滞留時間を、各ブロック内に付されたドットパターンで表したヒートマップ形式で示しており、ドットパターンの密度がより高い領域ほど、滞留時間が長いことを示している。具体的には、建物B12と建物B13の間の領域は、他の領域と比べて、滞留時間が長い領域となる。実際のデータとしては、滞留時間を数値として各領域と対応付けて記録すればよい。
 図6の説明に戻り、ステップS15において、算出部113は、取得した環境撮影データに基づいて、環境内でのユーザUの視野範囲の分布を算出する。
 ここで、視野範囲とは、ユーザUが環境の撮影中に見ていた範囲(頭部又は視線を向けていた方向)である。AR HMDは、デバイスの特性上、コンテンツを表示可能なディスプレイ画角が限定されるため、環境撮影時のユーザUの位置変化や頭部姿勢変化に基づき、実際にユーザUが見る可能性が高い視野の範囲を推定しておき、後述のステップで行われる利用可能な領域の調整に用いる。
 図12は、環境内でのユーザUの視野範囲の分布の例を示している。図12では、図10,図11と同様に、環境内を一定の領域ごとのブロックに分割して、各ブロックをユーザUの視野内に含まれる時間の長さに応じた密度のドットパターンを付している。
 図12のAでは、ドットパターンの密度がより高いほど、視野内に含まれる時間が長いことを示している。具体的には、建物B12と建物B13の間の領域は、他の領域と比べて、視野内に含まれていた時間が長い領域となる。
 図12のBでは、視野範囲は垂直方向での分布の差があるため、垂直方向にもブロックを分割して各ブロックの分布に応じた密度のドットパターンを付している。図12のBでも、ドットパターンの密度がより高いほど、垂直方向の視野範囲の分布が高いことを示し、この例では、ユーザUの頭部や上半身に近いブロックほど、視野範囲の分布が高くなる。実際のデータとしては、ブロックごとに視野内に入っていた時間を数値として記録すればよい。
 ステップS16において、算出部113は、取得した環境撮影データに基づいて、環境内での動的オブジェクトの位置、及び動的オブジェクトの移動経路を算出する。
 ステップS12の処理の説明で述べたように、動的オブジェクトは、環境カメラ121により撮影された環境画像に基づき、推定することができる。動的オブジェクトの検出には、複数の連続画像からの差分抽出による動物体の検出、OpenPose等の人体ポーズの推定アルゴリズムによる検出、辞書ベースの画像認識を用いたオブジェクト認識による検出などの手法が用いられ、これらの手法を用いて環境内に存在する動的オブジェクトの種類や位置、その変化などが記録される。ここで対象とする動的オブジェクトには、第三者となる人の他に、自動車などの移動物体も含まれる。
 図13は、環境内での動的オブジェクトの分布及び移動経路の例を示している。図13では、ハッチングが施された領域A11,A12が、動的オブジェクトの分布が多かった領域であり、破線で表した経路R21乃至R23が、動的オブジェクトの移動経路である。具体的には、通路やドア付近など、実際に環境内で人通りが多い領域が、動的オブジェクトの多い領域として記録される。
 なお、図13の例では、動的オブジェクトの領域と経路を概念図で示しているが、実際には環境を一定の広さごとのブロックに分割して、ブロック内での動的オブジェクトの数と滞留時間を記録しても構わない。
 ステップS13乃至S16の処理は、説明の都合上、処理ごとにステップを分けているが、これらのステップは処理の順番を変更したり、並列で処理されたりしても構わない。ステップS13乃至S16の処理が終了すると、処理は、ステップS17に進められる。
 ステップS17において、生成部112は、生成した環境メッシュに基づいて、ナビゲーションメッシュとコリジョンを生成する。
 ナビゲーションメッシュは一般的には、ARアプリケーションの開発者の手作業によって選択された面に対して生成が行われるが、ここでは、未知の環境を撮影して生成した環境メッシュに対してナビゲーションメッシュの生成を行う。そのため、ここでは、ステップS13の処理で生成した環境メッシュの形状における床又は地面であると推定される面に対し、ナビゲーションメッシュが生成されるようにする。
 具体的には、ステップS13の処理で生成された環境メッシュにおいて、重力方向下向きに存在する水平面のうち、最も面積が広く、かつ、ユーザUの頭部位置との関係から床又は地面であると推定される面を選択して、ナビゲーションメッシュを設定する。
 図14は、環境メッシュの形状から生成されたナビゲーションメッシュの例を示している。図14の例では、ハッチングが施された領域NAが、ナビゲーションメッシュであり、環境メッシュにおける地面であると推定される面に設定されている。
 コリジョンは、環境メッシュの形状に基づいて生成される。コリジョンは、衝突判定の計算コストの低減や、ARアプリケーション内での用途に応じて適宜形状を簡略化するが、ここではまず、環境メッシュの形状をそのままコリジョン形状として用いるとする。このとき、デバイスの能力やアプリケーションの特性などに応じて、ボックス(Box)やカプセル(Capsule)等のプリミティブ形状で置き換えて設定しても構わない。
 図15は、環境メッシュの形状から生成されたコリジョンの例を示している。図15の例では、ハッチングが施された領域CAが、コリジョンであり、環境メッシュの形状に合わせたバウンディングボックス形状として設定されている。
 ここで、実際の処理ステップではないが、本技術を適用した場合の効果を明確にするために、環境メッシュから生成されたナビゲーションメッシュとコリジョンをそのまま使用した場合における仮想オブジェクトの配置と移動経路の例を、図16,図17を参照しながら説明する。
 図16は、環境メッシュの形状から生成されたナビゲーションメッシュをそのまま使用した場合、すなわち、修正前のナビゲーションメッシュ上での仮想オブジェクトの移動経路の例を示している。図16の例では、ナビゲーションメッシュの領域NA全体を使って自由に移動可能であるため、建物B11乃至B13などの建造物や、樹木T11乃至T14などの街路樹の形状情報のみに基づき、仮想オブジェクトの経路R31が、環境内の床面全体を使用している。
 しかしながら、実際の環境においては、たとえ床面であっても、人通りの多い領域や場所的に危険な領域など、ARアプリケーションを使用するのに相応しくない場所も存在し得る。そのため、実際の環境においては、第三者の移動経路なども考慮して、ARアプリケーションを使用する領域をさらに制限する必要がある。
 図17は、環境メッシュの形状から生成されたコリジョンをそのまま使用した場合、すなわち、修正前のコリジョン設定に基づく仮想オブジェクトの配置の例を示している。図17の例では、コリジョンの領域CAが設定された建物B11乃至B13などの建造物や、樹木T11乃至T14などの街路樹の場所以外の空間全域を自由に使って、仮想オブジェクトVO11乃至VO16が配置されている。
 そのため、図17においても、図16に示した修正前のナビゲーションメッシュを使用した場合と同様に、実際には人通りが多い領域や、上空や足元などのユーザUが見逃してしまいがちな領域に、仮想オブジェクトが配置されてしまう可能性が高い。このような状況は、事前に決めたルールベースの仕組みや、ゲームAIの作り方でも回避することは可能であるが、未知のあらゆる環境に対して万能なルール付けを事前に行うことは困難である。
 本技術では、このような事情に鑑みて、環境の撮影時に得られる情報に基づき、現実的な実装コスト及び計算量で、より実用的なナビゲーションメッシュとコリジョンが設定されるようにする。
 すなわち、以下のステップS18乃至S27の処理によって、ステップS14乃至S16の処理で算出された情報に基づき、ステップS17の処理で生成されたナビゲーションメッシュとコリジョンを修正する。なお、ステップS18乃至S27の処理は、説明の都合上、順序立てて説明するが、処理の順番を変更したり、一部の処理を省略したりしても構わない。
 ステップS18において、制限部114は、ステップS14の処理で算出したユーザUの移動経路に基づいて、ナビゲーションメッシュの範囲を制限する。
 図18は、修正後のナビゲーションメッシュの例を示している。図18の例では、図9に示した経路R11に従って、環境内の各領域のうち、ユーザUが撮影時に歩行していない領域、又は撮影時の歩行せずに避けていた領域などのユーザUの移動する可能性が低い領域を、ナビゲーションメッシュの領域NAの対象外となるように制限している。具体的には、図18では、図16と比べて、建物B11や樹木T11乃至T14付近の領域が、ナビゲーションメッシュの領域NAから除外されている。
 ステップS19において、制限部114は、ステップS15の処理で算出したユーザUの視野範囲の分布に基づいて、視野分布の少ない領域に、コリジョンの領域を追加設定する。
 図19は、修正後のコリジョンの例を示している。図19の例では、図12に示した視野範囲の分布に従って、環境内の各領域でのユーザUに対して水平方向の上部の空間などの視野分布が少ない領域に、追加でコリジョンの領域CAを設定している。具体的には、図19のAでは、図15のAと比べて、建物B11や樹木T11乃至T14付近に、コリジョンの領域CAが追加で設定されている。また、図19のBでは、図15のBと比べて、ユーザUの上部の空間に、コリジョンの領域CAが追加で設定されている。
 ステップS19の処理が終了すると、処理は、ステップS20に進められ、制限部114によって、ステップS14の処理で算出したユーザUの移動速度に基づいて、コリジョンの領域CAを拡大又は縮小する処理が行われる。
 ステップS20では、環境内の各領域でのユーザUの移動速度がN1(km/h)以上であるかどうかが判定される。N1は、移動速度の判定に用いられる閾値であり、開発者等により設定される。
 ステップS20の判定処理で、ユーザUの移動速度がN1(km/h)以上であると判定された場合、ユーザUの上部と下部のコリジョンの領域CAが、垂直方向に拡大される(S21)。一方で、ステップS20の判定処理で、ユーザUの移動速度がN1(km/h)未満であると判定された場合、ユーザUの上部と下部のコリジョンの領域CAが、垂直方向に縮小される(S22)。
 すなわち、移動速度が速い領域では、ユーザUの視野外に相当する上部と床面に近い下部のコリジョンの領域CAを拡大する。逆に移動速度が遅い領域では、ユーザUの視野内に相当する部分を広く使うため、上部と下部のコリジョンの領域CAを縮小する。これは、人間の視野範囲が停止時に比較して移動時では狭まることに起因している。なお、上部と下部のコリジョンの領域CAの両方を拡大又は縮小するに限らず、上部と下部の領域のうち、少なくとも一方の領域が拡大又は縮小されるようにしてもよい。
 具体的には、静止時に比べて時速40kmでは人間の視野範囲は半減すると言われている。環境内の各領域内での移動速度に応じて移動速度が速い領域は、上下方向のコリジョンの領域CAを多めに設定することで、ユーザUの視野内に仮想オブジェクトができるだけ収まるように、利用可能な空間を制限する。
 なお、現実環境を用いたARの利用方法として、例えばテーマパークでの利用を想定すれば、ユーザの停止や歩行以外にも、自転車等の乗り物や、アトラクションに乗っての移動などにも対応することができる。
 ステップS21又はS22の処理が終了すると、処理は、ステップS23に進められ、制限部114によって、ステップS14の処理で算出したユーザUの滞留時間に基づいて、コリジョンの領域CAを拡大又は縮小する処理が行われる。
 ステップS23では、環境内の各領域でのユーザUの滞留時間がN2(s)以上であるかどうかが判定される。N2は、滞留時間の判定に用いられる閾値であり、開発者等により設定される。
 ステップS23の判定処理で、ユーザUの滞留時間がN2(s)以上であると判定された場合、ユーザUの上部と下部のコリジョンの領域CAが、垂直方向に縮小される(S24)。一方で、ステップS23の判定処理で、ユーザUの滞留時間がN2(s)未満であると判定された場合、ユーザUの上部と下部のコリジョンの領域CAが、垂直方向に拡大される(S25)。
 すなわち、滞留時間が長い領域では、ユーザUが広い領域に渡って見回す可能性が高くなるため、上部と下部のコリジョンの領域CAを縮小する。逆に滞留時間が短い領域では、ユーザUが進行方向以外の領域をあまり見ない可能性が高いため、視野外に相当する上部と床面に近い下部のコリジョンの領域CAを拡大する。なお、上部と下部のコリジョンの領域CAの両方を拡大又は縮小するに限らず、上部と下部の領域のうち、少なくとも一方の領域が拡大又は縮小されるようにしてもよい。
 ステップS24又はS25の処理が終了すると、処理は、ステップS26に進められる。ステップS26において、制限部114は、ステップS16の処理で算出された動的オブジェクト(第三者)の位置と移動経路に基づいて、環境内の各領域に動的オブジェクトが存在するかどうかを判定する。
 ステップS26の判定処理で、各領域内に動的オブジェクトが存在すると判定された場合、処理は、ステップS27に進められる。ステップS27において、制限部114は、ステップS16の処理で算出した動的オブジェクトの位置と移動経路に基づいて、動的オブジェクトの経路にコリジョンの領域CAを追加設定し、ナビゲーションメッシュを更新する。
 すなわち、動的オブジェクトの存在する可能性が高い領域、又は動的オブジェクトの移動が頻繁に発生すると推定される領域に対してコリジョンの領域CAが追加で設定され、ナビゲーションメッシュの移動可能な領域NAから除外される。
 具体的には、図15に示した環境メッシュにより生成されたコリジョンに対し、図13に示した動的オブジェクトの存在分布及び経路となっている空間をコリジョンの領域CAとして追加する。ここで追加されるコリジョンの領域CAの形状としては、上述したように動的オブジェクトをブロックごとに分割して管理する場合には、そのブロック形状を、領域CAの形状として追加することができる。あるいは、動的オブジェクトの存在分布が多い空間全体を囲むバウンディングボックスを算出して、それをコリジョンの領域CAの形状として追加しても構わない。
 また、ナビゲーションメッシュに関しては、図14に示した環境メッシュから生成されたナビゲーションメッシュから、図13に示した動的オブジェクトが多い領域を除外した領域を、修正後のナビゲーションメッシュの領域NAとする。これは、単純に領域形状の比較によって実現することができる。
 なお、ステップS26の判定処理で、各領域内に動的オブジェクトが存在しないと判定された場合、ステップS27の処理はスキップされる。
 以上のようにして、ステップS18乃至S27の処理によって、ステップS17の処理で生成されたナビゲーションメッシュとコリジョンが修正される。
 すなわち、ステップS18乃至S27の処理で、修正後のナビゲーションメッシュとコリジョンに更新されることで、仮想オブジェクトが配置される環境メッシュの大きさ(範囲)が制限される。
 環境メッシュの大きさを制限するに際しては、例えば、動的オブジェクトの位置(プレイヤや非プレイヤの移動範囲や視野範囲等)や、撮影オブジェクト(非プレイヤ等)の位置や移動経路、動的オブジェクトの位置に基づいて推定される現実環境(実空間)の領域(動的オブジェクトが検出されていない領域まで拡張された領域)に基づいて制限することができる。
 このとき、環境メッシュは、AR HMD等の情報処理装置10により撮影された画像に基づき生成され、AR HMD等の情報処理装置10の自己位置の範囲は、環境メッシュの範囲よりも狭くなっている。また、動的オブジェクトは、AR HMD等の情報処理装置10(を装着したプレイヤ)を含み、環境メッシュの大きさを制限するに際して、AR HMD等の情報処理装置10の自己位置を含まない環境メッシュの範囲が除外されている。
 図20は、修正後のナビゲーションメッシュを用いた仮想オブジェクトの移動経路の例を示している。図20では、ナビゲーションメッシュの領域NAが、図16の領域NAと比べて、動的オブジェクトとしての人(第三者)の通りが多い領域などを除外したものに更新されている。
 そのため、図20では、図16の経路R31と比べて、仮想オブジェクトの経路R31が、人通りを避けた領域NA上を移動するように更新されており、ユーザUがARアプリケーションを実行中に第三者と衝突したり、仮想オブジェクトと第三者が重なったりするなどの不具合を抑制することができる。
 図21は、修正後のコリジョンを用いた仮想オブジェクトの配置の例を示している。図21のAでは、図20のAに示したナビゲーションメッシュと同様に、動的オブジェクトとしての人(第三者)が多い領域などが、仮想オブジェクトVO11乃至VO16の配置候補の領域から除かれ、コリジョンの領域CAとなっている。図21のBでは、ユーザUの視野範囲を加味した領域が、仮想オブジェクトVO11乃至VO16の配置候補の領域から除かれている。
 そのため、図21のAでは、図17のAと比べて、建物B12と建物B13の間の領域に配置される仮想オブジェクトVO12乃至VO14の位置は変わらないが、建物B11や樹木T11乃至T14付近の領域に配置されていた仮想オブジェクトVO11,VO15,VO16の位置が、コリジョンの領域CAが設定された場所以外の領域に移動している。図21のBでは、図17のBと比べて、ユーザUの視野範囲を加味した高さに仮想オブジェクトVO11乃至VO14が配置されている。
 実際にユーザUは、AR HMD等の情報処理装置10を使用して、様々な環境においてARアプリケーションをプレイすることが想定され、それらのすべての環境を動的に把握して完全にゲームAIの挙動を制御することなどは困難である。それに対して、本技術を用いることで、環境の撮影時にユーザUの動きに基づき計算コストや開発コストをかけずに、環境内でのユーザUや第三者などの人の動きに合わせて、動的に最適な利用可能な領域を設定することができる。その結果として、様々な現実環境に対して、より最適に仮想オブジェクトを配置することができる。
<2.変形例>
(システム構成)
 図22は、本技術を適用した情報処理システムの構成例を示している。
 情報処理システムは、情報処理装置10-1乃至10-N(N:1以上の整数)、及びサーバ20から構成される。情報処理システムにおいて、情報処理装置10-1乃至10-Nと、サーバ20とは、ネットワーク30を介して相互に接続されている。ネットワーク30は、インターネット、イントラネット、又は携帯電話網などの通信網を含む。
 情報処理装置10-1は、AR HMD等のHMD、スマートフォン、ウェアラブルデバイスなどのディスプレイを有するモバイル端末である。情報処理装置10-1は、ARアプリケーションを実行することで、ユーザの視界を現実環境から切り離すことなく、仮想オブジェクトを視界内に提示することができる。
 情報処理装置10-1は、図5に示した構成のうち、制御部100、センサ部101、表示部103、スピーカ104、通信部105、及び操作入力部106を少なくとも有している。ただし、情報処理装置10-1において、制御部100は、取得部111、及び出力制御部115のみを有する点で、図5に示した構成と異なる。
 情報処理装置10-2乃至10-Nは、情報処理装置10-1と同様に、AR HMD等のモバイル端末として構成される。情報処理装置10-2乃至10-Nのそれぞれでは、ARアプリケーションを実行して、各ユーザに対して、視界を現実環境から切り離すことなく、仮想オブジェクトを視界内に提示することができる。
 サーバ20は、1又は複数のサーバから構成され、データセンタ等に設置される。サーバ20は、図5に示した構成のうち、制御部100、記憶部102、及び通信部105を少なくとも有している。ただし、サーバ20において、制御部100は、生成部112、算出部113、及び制限部114を有している。
 情報処理装置10-1は、環境撮影データを含む処理要求を、ネットワーク30を介してサーバ20に送信する。環境撮影データには、センサ部101からのセンサデータが含まれる。
 サーバ20は、情報処理装置10-1から送信されてくる処理要求を、ネットワーク30を介して受信する。サーバ20は、環境撮影データに基づいて、環境メッシュ等を生成するとともに、動的オブジェクトに関する物理量を算出する。サーバ20は、環境メッシュの大きさを、動的オブジェクトに関する物理量に基づいて制限する。サーバ20は、制限された環境メッシュに関するデータと、仮想オブジェクトに関するデータを含む処理応答を、ネットワークを介して情報処理装置10-1に送信する。
 情報処理装置10-1は、サーバ20から送信されてくる処理応答を、ネットワーク30を介して受信する。情報処理装置10-1は、制限された環境メッシュに配置された仮想オブジェクトが、表示部103の画面に表示されるように制御する。
 なお、情報処理装置10-1で実行される処理を代表して説明したが、情報処理装置10-2乃至10-Nで実行される処理も同様であり、繰り返しになるため、説明は省略する。また、環境撮影データは、サーバ20の記憶部102に適宜記録して、必要に応じて読み出されるようにしても構わない。
 また、上述した説明では、情報処理装置10-1乃至10-Nにおいて、制御部100が、取得部111、及び出力制御部115を有する一方で、サーバ20において、制御部100が、生成部112、算出部113、及び制限部114を有する構成を例示したが、それらの構成は一例である。例えば、生成部112、算出部113、及び制限部114の一部が、情報処理装置10の制御部100側にあってもよい。
 なお、上述した説明では、AR HMDとして構成される情報処理装置10によって、ARアプリケーションが実行される場合を例示したが、ARアプリケーションに限らず、ゲームなどの他のコンテンツに適用しても構わない。また、上述した説明では、環境メッシュは、ARアプリケーションの起動時又は起動前に得られる環境撮影データに基づき生成される場合を例示したが、あらかじめ用意された環境メッシュを用いても構わない。この場合において、環境メッシュのデータは、情報処理装置10又はサーバ20の記憶部102に記録され、適宜読み出されるようにすればよい。
<3.コンピュータの構成>
 上述した一連の処理(図6,図7に示した処理)は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、各装置のコンピュータにインストールされる。
 図23は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
 コンピュータにおいて、CPU(Central Processing Unit)1001、ROM(Read Only Memory)1002、RAM(Random Access Memory)1003は、バス1004により相互に接続されている。バス1004には、さらに、入出力インターフェース1005が接続されている。入出力インターフェース1005には、入力部1006、出力部1007、記録部1008、通信部1009、及び、ドライブ1010が接続されている。
 入力部1006は、マイクロフォン、キーボード、マウスなどよりなる。出力部1007は、スピーカ、ディスプレイなどよりなる。記録部1008は、ハードディスクや不揮発性のメモリなどよりなる。通信部1009は、ネットワークインターフェースなどよりなる。ドライブ1010は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブル記録媒体1011を駆動する。
 以上のように構成されるコンピュータでは、CPU1001が、ROM1002や記録部1008に記録されているプログラムを、入出力インターフェース1005及びバス1004を介して、RAM1003にロードして実行することにより、上述した一連の処理が行われる。
 コンピュータ(CPU1001)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体1011に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線又は無線の伝送媒体を介して提供することができる。
 コンピュータでは、プログラムは、リムーバブル記録媒体1011をドライブ1010に装着することにより、入出力インターフェース1005を介して、記録部1008にインストールすることができる。また、プログラムは、有線又は無線の伝送媒体を介して、通信部1009で受信し、記録部1008にインストールすることができる。その他、プログラムは、ROM1002や記録部1008に、あらかじめインストールしておくことができる。
 ここで、本明細書において、コンピュータがプログラムに従って行う処理は、必ずしもフローチャートとして記載された順序に沿って時系列に行われる必要はない。すなわち、コンピュータがプログラムに従って行う処理は、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含む。また、プログラムは、1のコンピュータ(プロセッサ)により処理されてもよいし、複数のコンピュータによって分散処理されてもよい。
 また、図6,図7に示した処理の各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
 なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 また、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
 なお、本技術は、以下のような構成をとることができる。
(1)
 仮想オブジェクトが配置される環境マップデータの大きさを、前記環境マップデータが対応付けられた実空間のセンサによる検出結果に基づいて制限する制御部を備える
 情報処理装置。
(2)
 前記検出結果は、前記センサにより検出された動的オブジェクトの位置を含み、
 前記制御部は、前記動的オブジェクトの位置に基づいて、前記環境マップデータの範囲を制限する
 前記(1)に記載の情報処理装置。
(3)
 前記動的オブジェクトは、前記センサが設けられたモバイル端末を含み、
 前記制御部は、前記モバイル端末の自己位置を含まない前記環境マップデータの範囲を除外する
 前記(2)に記載の情報処理装置。
(4)
 前記環境マップデータは、前記モバイル端末により撮影された画像に基づいて生成され、
 前記センサにより検出される前記モバイル端末の自己位置の範囲は、前記環境マップデータの範囲よりも狭くなる
 前記(3)に記載の情報処理装置。
(5)
 前記制御部は、前記動的オブジェクトの位置に基づいて推定される前記実空間の領域に基づいて、前記環境マップデータの範囲を制限する
 前記(2)乃至(4)のいずれかに記載の情報処理装置。
(6)
 前記動的オブジェクトは、前記センサが設けられたモバイル端末により撮影された画像に含まれる撮影オブジェクトであり、
 前記制御部は、前記撮影オブジェクトの位置及び前記撮影オブジェクトの移動経路を、前記環境マップデータの範囲から除外する
 前記(5)に記載の情報処理装置。
(7)
 前記環境マップデータは、3次元構造を示すデータであり、
 前記動的オブジェクトは、人物オブジェクトであり、
 前記制御部は、前記人物オブジェクトの位置における視野範囲に基づいて、垂直方向における前記環境マップデータの範囲を制限する
 前記(2)乃至(6)のいずれかに記載の情報処理装置。
(8)
 前記動的オブジェクトは、人物オブジェクトであり、
 前記制御部は、前記人物オブジェクトの位置に応じた移動経路に基づいて、前記環境マップデータの範囲を制限する
 前記(2)乃至(7)のいずれかに記載の情報処理装置。
(9)
 前記動的オブジェクトは、プレイヤ若しくは非プレイヤを含む人物オブジェクト、又は人物を除いた移動物体を含む移動オブジェクトである
 前記(2)乃至(8)のいずれかに記載の情報処理装置。
(10)
 前記検出結果は、前記センサにより検出された前記人物オブジェクトの移動速度を含み、
 前記制御部は、前記人物オブジェクトの移動速度に基づいて、前記環境マップデータの範囲を制限する
 前記(7)に記載の情報処理装置。
(11)
 前記制御部は、
  前記移動速度が第1の閾値以上であるか否かを判定し、
  前記移動速度が前記第1の閾値以上であると判定した場合、前記人物オブジェクトの位置での垂直方向における前記環境マップデータの範囲を制限する
 前記(10)に記載の情報処理装置。
(12)
 前記検出結果は、前記センサにより検出された前記人物オブジェクトの滞留時間を含み、
 前記制御部は、前記人物オブジェクトの滞留時間に基づいて、前記環境マップデータの範囲を制限する
 前記(7)又は(10)に記載の情報処理装置。
(13)
 前記制御部は、
  前記滞留時間が第2の閾値未満であるか否かを判定し、
  前記滞留時間が前記第2の閾値未満であると判定した場合、前記人物オブジェクトの位置での垂直方向における前記環境マップデータの範囲を制限する
 前記(12)に記載の情報処理装置。
(14)
 前記検出結果は、アプリケーションの起動時又は起動前に得られる
 前記(1)乃至(13)のいずれかに記載の情報処理装置。
(15)
 前記アプリケーションは、ARアプリケーションであり、
 前記制御部は、前記環境マップデータに配置される前記仮想オブジェクトが透過型のディスプレイに表示されるように制御する
 前記(14)に記載の情報処理装置。
(16)
 前記検出結果を記録する記憶部をさらに備える
 前記(14)又は(15)に記載の情報処理装置。
(17)
 前記センサが設けられたモバイル端末として構成される
 前記(1)乃至(16)のいずれかに記載の情報処理装置。
(18)
 前記モバイル端末は、ARアプリケーションを実行可能なヘッドマウントディスプレイである
 前記(17)に記載の情報処理装置。
(19)
 情報処理装置が、
 仮想オブジェクトが配置される環境マップデータの大きさを、前記環境マップデータが対応付けられた実空間のセンサによる検出結果に基づいて制限する
 情報処理方法。
(20)
 コンピュータを、
 仮想オブジェクトが配置される環境マップデータの大きさを、前記環境マップデータが対応付けられた実空間のセンサによる検出結果に基づいて制限する制御部として機能させるプログラムが記録された記録媒体。
 10,10-1乃至10-N 情報処理装置, 20 サーバ, 30 ネットワーク, 100 制御部, 101 センサ部, 102 記憶部, 103 表示部, 104 スピーカ, 105 通信部, 106 操作入力部, 111 取得部, 112 生成部, 113 算出部, 114 制限部, 115 出力制御部, 121 環境カメラ, 122 深度カメラ, 123 ジャイロセンサ, 124 加速度センサ, 125 方位センサ, 126 位置センサ, 1001 CPU

Claims (20)

  1.  仮想オブジェクトが配置される環境マップデータの大きさを、前記環境マップデータが対応付けられた実空間のセンサによる検出結果に基づいて制限する制御部を備える
     情報処理装置。
  2.  前記検出結果は、前記センサにより検出された動的オブジェクトの位置を含み、
     前記制御部は、前記動的オブジェクトの位置に基づいて、前記環境マップデータの範囲を制限する
     請求項1に記載の情報処理装置。
  3.  前記動的オブジェクトは、前記センサが設けられたモバイル端末を含み、
     前記制御部は、前記モバイル端末の自己位置を含まない前記環境マップデータの範囲を除外する
     請求項2に記載の情報処理装置。
  4.  前記環境マップデータは、前記モバイル端末により撮影された画像に基づいて生成され、
     前記センサにより検出される前記モバイル端末の自己位置の範囲は、前記環境マップデータの範囲よりも狭くなる
     請求項3に記載の情報処理装置。
  5.  前記制御部は、前記動的オブジェクトの位置に基づいて推定される前記実空間の領域に基づいて、前記環境マップデータの範囲を制限する
     請求項2に記載の情報処理装置。
  6.  前記動的オブジェクトは、前記センサが設けられたモバイル端末により撮影された画像に含まれる撮影オブジェクトであり、
     前記制御部は、前記撮影オブジェクトの位置及び前記撮影オブジェクトの移動経路を、前記環境マップデータの範囲から除外する
     請求項5に記載の情報処理装置。
  7.  前記環境マップデータは、3次元構造を示すデータであり、
     前記動的オブジェクトは、人物オブジェクトであり、
     前記制御部は、前記人物オブジェクトの位置における視野範囲に基づいて、垂直方向における前記環境マップデータの範囲を制限する
     請求項2に記載の情報処理装置。
  8.  前記動的オブジェクトは、人物オブジェクトであり、
     前記制御部は、前記人物オブジェクトの位置に応じた移動経路に基づいて、前記環境マップデータの範囲を制限する
     請求項2に記載の情報処理装置。
  9.  前記動的オブジェクトは、プレイヤ若しくは非プレイヤを含む人物オブジェクト、又は人物を除いた移動物体を含む移動オブジェクトである
     請求項2に記載の情報処理装置。
  10.  前記検出結果は、前記センサにより検出された前記人物オブジェクトの移動速度を含み、
     前記制御部は、前記人物オブジェクトの移動速度に基づいて、前記環境マップデータの範囲を制限する
     請求項7に記載の情報処理装置。
  11.  前記制御部は、
      前記移動速度が第1の閾値以上であるか否かを判定し、
      前記移動速度が前記第1の閾値以上であると判定した場合、前記人物オブジェクトの位置での垂直方向における前記環境マップデータの範囲を制限する
     請求項10に記載の情報処理装置。
  12.  前記検出結果は、前記センサにより検出された前記人物オブジェクトの滞留時間を含み、
     前記制御部は、前記人物オブジェクトの滞留時間に基づいて、前記環境マップデータの範囲を制限する
     請求項7に記載の情報処理装置。
  13.  前記制御部は、
      前記滞留時間が第2の閾値未満であるか否かを判定し、
      前記滞留時間が前記第2の閾値未満であると判定した場合、前記人物オブジェクトの位置での垂直方向における前記環境マップデータの範囲を制限する
     請求項12に記載の情報処理装置。
  14.  前記検出結果は、アプリケーションの起動時又は起動前に得られる
     請求項1に記載の情報処理装置。
  15.  前記アプリケーションは、ARアプリケーションであり、
     前記制御部は、前記環境マップデータに配置される前記仮想オブジェクトが透過型のディスプレイに表示されるように制御する
     請求項14に記載の情報処理装置。
  16.  前記検出結果を記録する記憶部をさらに備える
     請求項14に記載の情報処理装置。
  17.  前記センサが設けられたモバイル端末として構成される
     請求項1に記載の情報処理装置。
  18.  前記モバイル端末は、ARアプリケーションを実行可能なヘッドマウントディスプレイである
     請求項17に記載の情報処理装置。
  19.  情報処理装置が、
     仮想オブジェクトが配置される環境マップデータの大きさを、前記環境マップデータが対応付けられた実空間のセンサによる検出結果に基づいて制限する
     情報処理方法。
  20.  コンピュータを、
     仮想オブジェクトが配置される環境マップデータの大きさを、前記環境マップデータが対応付けられた実空間のセンサによる検出結果に基づいて制限する制御部として機能させるプログラムが記録された記録媒体。
PCT/JP2021/023153 2020-07-02 2021-06-18 情報処理装置、情報処理方法、及び記録媒体 WO2022004422A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/003,373 US20230148185A1 (en) 2020-07-02 2021-06-18 Information processing apparatus, information processing method, and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-114866 2020-07-02
JP2020114866 2020-07-02

Publications (1)

Publication Number Publication Date
WO2022004422A1 true WO2022004422A1 (ja) 2022-01-06

Family

ID=79316102

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/023153 WO2022004422A1 (ja) 2020-07-02 2021-06-18 情報処理装置、情報処理方法、及び記録媒体

Country Status (2)

Country Link
US (1) US20230148185A1 (ja)
WO (1) WO2022004422A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022196199A1 (ja) * 2021-03-16 2022-09-22 ソニーグループ株式会社 情報処理装置、情報処理方法、及びプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009060880A1 (ja) * 2007-11-08 2009-05-14 Nec Corporation コミュニケーションシステム、方法、及び、プログラム
WO2012090325A1 (ja) * 2010-12-28 2012-07-05 トヨタ自動車株式会社 ナビゲーション装置
JP5346115B1 (ja) * 2012-12-17 2013-11-20 治幸 岩田 携帯型移動支援装置
JP2017181666A (ja) * 2016-03-29 2017-10-05 ソニー株式会社 情報処理装置、情報処理方法およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009060880A1 (ja) * 2007-11-08 2009-05-14 Nec Corporation コミュニケーションシステム、方法、及び、プログラム
WO2012090325A1 (ja) * 2010-12-28 2012-07-05 トヨタ自動車株式会社 ナビゲーション装置
JP5346115B1 (ja) * 2012-12-17 2013-11-20 治幸 岩田 携帯型移動支援装置
JP2017181666A (ja) * 2016-03-29 2017-10-05 ソニー株式会社 情報処理装置、情報処理方法およびプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022196199A1 (ja) * 2021-03-16 2022-09-22 ソニーグループ株式会社 情報処理装置、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
US20230148185A1 (en) 2023-05-11

Similar Documents

Publication Publication Date Title
JP7002684B2 (ja) 拡張現実および仮想現実のためのシステムおよび方法
US11669152B2 (en) Massive simultaneous remote digital presence world
JP2021036449A (ja) 拡張現実および仮想現実のためのシステムおよび方法
JP7008730B2 (ja) 画像に挿入される画像コンテンツについての影生成
US20150070274A1 (en) Methods and systems for determining 6dof location and orientation of head-mounted display and associated user movements
JP6558839B2 (ja) 媒介現実
JP7405085B2 (ja) 情報処理装置、情報処理方法、及びプログラム
WO2022004422A1 (ja) 情報処理装置、情報処理方法、及び記録媒体
JP6530453B2 (ja) ゲームプログラム及びゲームシステム
US11295529B2 (en) Identity-based inclusion/exclusion in a computer-generated reality experience
JP7400810B2 (ja) 情報処理装置、情報処理方法、及び記録媒体
WO2021106671A1 (ja) 情報処理装置、情報処理方法、及びプログラム
JP2019057009A (ja) 情報処理装置及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21834472

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21834472

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP