WO2021256310A1 - 情報処理装置、端末装置、情報処理システム、情報処理方法およびプログラム - Google Patents

情報処理装置、端末装置、情報処理システム、情報処理方法およびプログラム Download PDF

Info

Publication number
WO2021256310A1
WO2021256310A1 PCT/JP2021/021498 JP2021021498W WO2021256310A1 WO 2021256310 A1 WO2021256310 A1 WO 2021256310A1 JP 2021021498 W JP2021021498 W JP 2021021498W WO 2021256310 A1 WO2021256310 A1 WO 2021256310A1
Authority
WO
WIPO (PCT)
Prior art keywords
information processing
terminal device
image
unit
display
Prior art date
Application number
PCT/JP2021/021498
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 ソニーグループ株式会社
Publication of WO2021256310A1 publication Critical patent/WO2021256310A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments

Definitions

  • This disclosure relates to information processing devices, terminal devices, information processing systems, information processing methods and programs.
  • the present invention has been made in view of the above, and an object of the present invention is to provide an information processing device, a terminal device, an information processing system, and an information processing method that enable a device to estimate its own position. ..
  • a control unit that controls an image display position based on information about an estimated self-position of a terminal device, and the display position controlled by the control unit.
  • an information processing apparatus including a display unit for displaying the image.
  • Terminal device 1A and 1B are diagrams showing an example of the appearance and hardware configuration diagram of the terminal device in the present embodiment, respectively.
  • the terminal device 100 in the present embodiment includes a CPU (Central Processing Unit) 102, a GPU (Graphics Processing Unit) 104, a RAM (Random Access Memory) 106, a VRAM (Video RAM) 108, a storage 110, a display 112, a camera 114, and an IMU. It is composed of (Inertial Memory Unit) 116, a touch sensor 118, a transmitter / receiver 122, and the like, and is mainly connected via a bus 120.
  • CPU Central Processing Unit
  • GPU Graphics Processing Unit
  • RAM Random Access Memory
  • VRAM Video RAM
  • the CPU 102 is an arithmetic unit that performs various arithmetic operations.
  • the CPU 102 for example, copies the program stored in the storage 110 to the RAM 106 and executes the program.
  • the CPU 102 may be a part of an integrated circuit constituting a SoC (System on a Chip) provided on the control board.
  • SoC System on a Chip
  • the CPU 102 also controls the image displayed on the display 112. For example, an instruction for displaying the image recorded in the VRAM 108 on the display 112 is issued to the GPU 104 to be displayed on the display 112.
  • the CPU 102 also controls various devices such as GPU 104, RAM 106, VRAM 108, storage 110, display 112, camera 114, IMU 116, transmitter / receiver 122, and processes inputs from various devices.
  • various devices such as GPU 104, RAM 106, VRAM 108, storage 110, display 112, camera 114, IMU 116, transmitter / receiver 122, and processes inputs from various devices.
  • the GPU 104 is an arithmetic unit whose main purpose is to execute an arithmetic for image processing, and executes an arithmetic by receiving a command from the CPU 102 as described above.
  • the GPU 104 may also be a part of an integrated circuit constituting a SoC (System on a Chip) provided on the control board.
  • SoC System on a Chip
  • the RAM 106 is a main storage device used as a work area when the CPU 102 executes a program. Like the CPU 102 and the GPU 104, the RAM 106 may also be a part of an integrated circuit constituting the SoC provided on the control board.
  • the VRAM 108 is a storage device mainly used as a work area when the above-mentioned GPU 104 performs an operation for image processing.
  • the VRAM 108 may be a UMA (Unified Memory Architecture), which is a configuration shared with the RAM 106 described above.
  • the storage 110 is composed of an auxiliary storage device such as an HDD (Hard Disk Drive) or a flash memory.
  • the display 112 in the present embodiment visually presents an image generated by the GPU 104 or the like to the user, and is realized by, for example, a liquid crystal display, an organic EL (Electro-Luminescence) display, or the like.
  • these displays 112 are made visible to the user by using an optical system such as a prism.
  • the camera 114 in this embodiment includes at least a lens, an image sensor (CMOS, CCD, etc.) and a color filter.
  • the camera 114 is arranged in front of the terminal device 100, and may capture the direction in which the terminal device 100 is facing, or may include, for example, a 360-degree camera or the like to capture omnidirectional images.
  • the IMU116 in the present embodiment is provided with a 3-axis gyro and a 3-direction accelerometer, which can be used to obtain the angular velocity and acceleration in a three-dimensional space, respectively. By integrating these obtained angular velocities and accelerations, it is possible to estimate the self-position including the self-posture.
  • the touch sensor 118 in this embodiment has a function of detecting contact by the user.
  • the touch sensor 118 may be, for example, a capacitance type or pressure sensitive type touch sensor.
  • the touch sensor 118 can detect a contact action such as touching, stroking, hitting, and pushing by the user, and can perform an operation according to the contact action.
  • the terminal device 100 exemplified in this description is merely an example, and various terminal devices including a display, a camera, and an IMU, such as a smartphone, a tablet terminal, and a portable game machine, can be used.
  • various terminal devices including a display, a camera, and an IMU, such as a smartphone, a tablet terminal, and a portable game machine, can be used.
  • FIG. 2 shows an example of a hardware configuration diagram of the information processing apparatus 200 according to the present embodiment.
  • the information processing device 200 in the present embodiment includes a CPU (Central Processing Unit) 202, a GPU (Graphics Processing Unit) 204, a RAM (Random Access Memory) 206, a VRAM (Video RAM) 208, a storage 210, a transmitter / receiver 212, and the like. It is connected mainly via the bus 214.
  • a CPU Central Processing Unit
  • GPU Graphics Processing Unit
  • RAM Random Access Memory
  • VRAM Video RAM
  • the CPU 202 is an arithmetic unit that performs various arithmetic operations.
  • the CPU 202 for example, copies the program stored in the storage 210 to the RAM 206 and executes the program.
  • the CPU 202 also controls the image displayed on the display device 300. For example, an instruction for displaying the image recorded in the VRAM 208 on the display device 300 is issued to the GPU 204 and displayed on the display device 300.
  • the CPU 202 also controls various devices such as GPU 204, RAM 206, VRAM 208, storage 210, transmitter / receiver 212, and processes inputs from various devices.
  • the GPU 204 is an arithmetic unit whose main purpose is to execute an arithmetic for image processing, and executes an arithmetic by receiving a command from the CPU 202 as described above.
  • the RAM 206 is a main storage device used as a work area when the CPU 202 executes a program.
  • the VRAM 208 is a storage device mainly used as a work area when the above-mentioned GPU 204 performs an operation for image processing.
  • the storage 210 is composed of an auxiliary storage device such as an HDD (Hard Disk Drive) or a flash memory. Programs and the like are stored in the storage 210.
  • Display device 3A and 3B show an example of the appearance of the display device 300 in the present embodiment.
  • the display device 300 in the present embodiment is a so-called moving projector including at least a projection unit 302, a screen 304, and a movable unit 306.
  • the projection unit 302 projects the image input to the display device 300 on the screen 304.
  • the image from the projection unit 302 is projected on the screen 304.
  • a screen 304 for the purpose of projecting an image may be used, or an indoor wall or the like may be used as the screen 304.
  • the movable portion 306 is a mechanism for moving the projection portion 302. Since the direction in which the image is projected can be changed by the movable portion 306, the image can be projected even in the area where the image cannot be projected without the movable portion 306.
  • Terminal device An example of the functional configuration of the terminal device 100 according to the present embodiment will be given.
  • FIG. 4 shows an example of the functional configuration of the terminal device 100 in this embodiment.
  • the function of the terminal device 100 in this embodiment is composed of a control unit 402, a storage unit 404, an image pickup unit 406, an acquisition unit 408, a display unit 410, a communication unit 412, and the like.
  • control unit 402 is realized by executing a system program stored in the storage unit 404 by the CPU 102 described above (hereinafter, simply by executing the program 4042 together.
  • the program 4042 stored in the storage unit 404 is a program 4042. It is copied to the main storage device such as the above-mentioned RAM 106, which is a work area, and then executed by the CPU 102.
  • the control unit 402 also controls the image displayed on the display unit 410. For example, an instruction for displaying the image recorded in the VRAM 108 on the display unit 410 is issued to the GPU 104, and the display unit 410 displays the command.
  • the control unit 402 also time-integrates the angular velocity and acceleration in the three-dimensional space output by the three-axis gyro and the three-direction accelerometer provided in the IMU116 of the terminal device 100, so that the self-position and the self-position accompany the passage of time. Estimate the change.
  • the control unit 402 also commands the image pickup unit 406 to take an image.
  • the control unit 402 instructs the image pickup unit 406 to capture an image including the mark image displayed on the screen 304 of the display device 300 at a given timing during the execution of the program 4042, and outputs the image pickup result to the RAM 106 or the like. Store in the main memory of.
  • the control unit 402 further analyzes the above-mentioned captured image to detect the position, size, inclination, etc. of the marker image included in the image on the image.
  • the storage unit 404 is configured by a storage 110 which is an auxiliary storage device such as an HDD (Hard Disk Drive) or a flash memory.
  • the storage unit 404 stores a program 4042 or the like that controls the terminal device 100.
  • the program 4042 stored in the storage unit 404 is copied to a work area such as RAM 106 and then executed by the CPU 102 or the like when a user gives an instruction to start program execution.
  • the display unit 410 in the present embodiment visually presents the image or the like generated by the control unit 402 to the user, and is realized by the display 112 of the terminal device 100. That is, the CPU 102 of the terminal device 100 issues an image generation command to the GPU 104, the GPU 104 generates an image according to the issued command, and the generated image is displayed on the display 112.
  • the display unit 410 may display the moving image information and the like stored in the storage unit under the control of the control unit 402. That is, the control unit 402 reads the moving image file stored in the storage unit as a file stream, sequentially transfers the moving image file to the VRAM 108, and is the moving image transferred onto the VRAM 108, which is the time axis of the original moving image file. A command for displaying a moving image of a part of the direction on the display unit 410 may be issued and displayed on the display unit 410.
  • the display unit 410 receives the moving image information generated by an external server (not shown) different from the information processing device 200 and the display device 300 by using the communication unit 412 provided in the information processing device 200, and is a control unit. It may be displayed by the control by 402.
  • the image pickup unit 406 in the present embodiment captures a marker image displayed on the screen 304 of the display device 300 by using the camera 114 provided in the terminal device 100.
  • the control unit 402 of the terminal device 100 detects the position, size, inclination, etc. of the mark image in the captured image, compares the detection result with the information of the known world coordinates of the mark image, and then compares the detection result with the information of the known world coordinates of the mark image. Correct the world coordinates estimated by yourself.
  • the acquisition unit 408 in this embodiment acquires information regarding the world coordinates of the above-mentioned marker image.
  • the information regarding the world coordinates of the marker image may be received from the information processing device via the communication unit 412 of the terminal device 100, or may be received from a device other than the information processing device. Further, even if the world coordinates of the known landmark image determined in advance by the control unit 402 of the terminal device 100 are stored in the storage unit 404 and the information on the world coordinates of the landmark image stored in the storage unit 404 is acquired. good.
  • FIG. 5 shows an example of the functional configuration of the information processing apparatus 200 in this embodiment.
  • the function of the information processing apparatus 200 in this embodiment is composed of a control unit 502, a storage unit 504, a display unit 506, a communication unit 508, and the like.
  • the control unit 502 controls the display position of the image based on the information regarding the self-position estimated by the terminal device 100. That is, when the self-position of the terminal device 100 is estimated by the IMU or the like of the terminal device 100, the marker image is displayed in the area that can be imaged by the image pickup unit of the terminal device 100 from the position and posture of the terminal device 100. Control the display position. Specifically, the display position for instructing the display device to display the mark image at the predetermined screen coordinates is calculated. In addition, the movable amount of the movable part of the display device is calculated as necessary.
  • the display unit 506 has a function of transmitting the display content to the display device 300.
  • the data related to the display contents is calculated using the GPU 204 or the like of the information processing device, written in the VRAM 208 of the information processing device 200, and transferred to the display unit of the display device 300.
  • the communication unit 508 communicates with the terminal device 100. Specifically, the information on the estimated self-position of the terminal device 100 is received via the communication unit of the terminal device 100.
  • the coordinates of the mark image on the screen for the terminal device 100 to capture may be calculated by the information processing device 200 as described above, or the terminal device 100 calculates the coordinate information via the communication unit. May be received by the information processing apparatus 200.
  • FIG. 6 shows an example of the functional configuration of the display device 300 in this embodiment.
  • the function of the display device 300 in this embodiment is composed of an input unit 602, a projection unit 604, a movable unit 606, and the like.
  • the input unit 602 accepts video input from another device. As described above, the data related to the display contents generated by the information processing apparatus is input from the input unit.
  • the projection unit 604 projects the image received by the input unit 602 on a screen or the like.
  • the projection may be performed on a dedicated screen, or may be performed on an indoor or outdoor wall surface or the like. Moreover, it does not necessarily have to be projected onto a plane.
  • the movable portion 606 changes the projection direction of the projection portion 604. That is, in a display device such as a normal projector, once the display device is installed, the object to be displayed is fixed to the screen, and for an object existing outside the screen or another screen. I could't project. In the present embodiment, since the projection direction of the projection unit can be changed by the movable portion, it is possible to project onto an object existing outside the screen or another screen.
  • the movable part makes it possible to project not only a specific wall surface but the entire wall surface as a projection target by moving the projection unit.
  • the movable command to the movable unit 606 is determined based on the calculation of the control unit of the information processing device, and the command is received from the communication unit of the information processing device connected by wire or wirelessly.
  • the user first installs the display device 300. After installation, the initial calibration is performed as shown in FIG.
  • FIG. 7 is a display projected onto the screen 304 of the display device 300, and is a display for recognizing the projection position of the projection unit.
  • the world coordinates and the screen coordinates are calibrated via the stereo camera for calibration.
  • FIG. 7 is an example of calculating the relative position between the world coordinate origin and the projector coordinate origin based on the coordinate values obtained by triangulation from the observation point of the stereo camera.
  • the origin of the world coordinates is W (0,0,0), and the origin of the screen coordinates is P (0,0).
  • the world coordinates of the screen coordinates can be calculated based on the coordinate values obtained by triangulation from the observation points on the image obtained by taking the origin of the world coordinates and the origin of the screen coordinates with a stereo camera. If the same calculation is performed for any point on the screen and the origin of the world coordinates, not only the origin of the screen coordinates but also the world coordinates of any point on the screen can be obtained by the calculation.
  • FIG. 8 shows the result of obtaining the world coordinates of the origin of the screen coordinates based on the origin of the world coordinates.
  • the origin of the screen coordinates is W (-100, 40, -15) when expressed in world coordinates.
  • This system program 4042 is a program for using various functions of the terminal device 100.
  • the user After starting the system program 4042, the user starts the application program 4044 and indirectly uses the function of the terminal device 100 from the application program 4044 via the system program 4042.
  • the user attaches the terminal device 100 in the state where the system program 4042 is operating to the head.
  • the attachment to the head may be performed before the system program 4042 is started.
  • the activated terminal device 100 estimates its own position under the control of the control unit. That is, the control unit time-integrates the data output from the IMU provided in the terminal device 100, so that the position and posture of the terminal device 100 that changes with time can be estimated.
  • the relative change in position and attitude from the start of estimation is estimated, and it is estimated as the actual world coordinates and attitude (hereinafter, absolute coordinates) of the terminal device 100.
  • the estimated coordinates There may be an error between the world coordinates and the attitude (hereinafter referred to as estimated coordinates).
  • the estimated coordinates are estimated by integrating the data output from the IMU over time, errors will accumulate over time.
  • the user stores the world coordinates of the terminal device 100 in the terminal device 100 before the terminal device 100 starts estimating the estimated coordinates. That is, the camera provided in the terminal device 100 captures a marker object whose world coordinates are known in the real world, and the control unit analyzes the captured image to store the absolute coordinates of the terminal device 100 in the terminal device 100. ..
  • the marker object include the origin marker W described above.
  • the mark object can be replaced with a mark image whose world coordinates displayed on the screen of the display device are known.
  • the positional relationship between the mark object whose world coordinates are known and the mark image displayed on the screen of the display device can be measured on the screen by measuring in advance with a stereo camera or the like in the initial calibration as described above.
  • the world coordinates of any of the above points are in a known state.
  • the user changes his / her posture or moves while wearing the terminal device 100 on his / her head.
  • the position and posture of the terminal device 100 change.
  • This change is estimated by the IMU as described above. Since errors are accumulated in this estimation as described above, the estimated coordinates estimated by the terminal device 100 deviate from the true absolute coordinates of the terminal device 100 with time.
  • the camera of the display device captures a marker image with known world coordinates displayed on the screen of the display device. Then, the world coordinates of the terminal device 100 itself are stored.
  • the world coordinates estimated by the terminal device 100 which has been displaced with the passage of time, can be corrected to the true world coordinates.
  • the terminal device 100 is attached to the user's head, and the position and posture are changed. Therefore, the mark image is displayed on the screen of the display device based on the information of which direction the camera of the terminal device 100 is facing and where the imageable area is.
  • the terminal device 100 communicates with the information processing device and transmits information on the current estimated self-position and posture. Based on the received information, the information processing apparatus displays the marker image at a position on the screen that can be captured by the camera provided in the terminal apparatus 100.
  • the terminal device 100 captures a marker image and derives and stores its own world coordinates from the captured image
  • the world coordinates of the marker image need to be known to the terminal device 100, and therefore, for example, an information processing apparatus.
  • the information processing apparatus obtains the world coordinates from the determined coordinates and transmits the world coordinates of the obtained marker image to the terminal device 100. do.
  • the terminal device 100 determines the coordinates on the screen of the display device, which are the coordinates within the range that can be imaged by itself, transmits information about the coordinates to the information processing device, and on the screen based on the information.
  • the information processing device may display and control the mark image on the display device at the coordinates of.
  • it is a method of displaying a mark image on a screen in the image pickup direction of the camera of the terminal device 100 at predetermined time intervals, capturing the mark image by the image pickup unit of the camera, and correcting the world coordinates estimated by the terminal device 100. ..
  • the calculation resources are reduced in frequency when the calculation resources of the terminal device 100 are excessively consumed due to the high frequency of corrections. It is possible to prevent excessive consumption. Further, when the error of the world coordinates estimated by the terminal device 100 becomes large with the passage of time because the correction is infrequent, the error can be suppressed to a low value by increasing the frequency.
  • the above-mentioned predetermined time interval may be changed based on the conditions. For example, when the world coordinates of the terminal device 100 are corrected, the larger the difference between the coordinates estimated before the correction and the true coordinates after the correction, the more likely it is that an error will occur. The time interval until the correction is shortened, and conversely, the smaller the difference between the coordinates estimated before the correction and the true coordinates after the correction, the less error is likely to occur, and the next correction The time interval may be lengthened.
  • the information processing device may control the marker image to be displayed on the screen of the display device based on the content displayed on the display unit of the terminal device 100. For example, when the image pickup unit can image the outside of the user's field of view area where the display unit of the terminal device 100 can display, the mark image is on the screen portion outside the view area and in the area where the image pickup unit can take an image. May be displayed.
  • a marker image may be displayed on the screen so as to be superimposed on the content displayed on the display unit.
  • FIG. 9 is a flowchart showing an example of a processing procedure executed by the terminal device 100 and the information processing device 200 according to the embodiment.
  • the processing procedure shown in FIG. 9 is realized by the terminal device 100 executing the system program 4042 or the application program 4044, and the information processing device 200 executing the program 5042, respectively.
  • step S10 the control unit 502 of the information processing apparatus 200 starts a timer until the self-position estimation of the terminal apparatus 100 is corrected. For example, the control unit 502 of the information processing apparatus 200 sets 1 second as the initial value of the timer and starts the timer processing. When the processing of step S10 is completed, the control unit 502 of the information processing apparatus 200 proceeds to step S12.
  • the control unit 502 of the information processing apparatus 200 determines whether or not the timer set in step S10 has become 0 (step S12). If the timer is not 0, the timer is decremented (No in step S12) and then step S12 is executed again. If the timer is 0, the timer is set to 0 (Yes in step S12) to step S14. Proceed with processing.
  • the timer processing in steps S10 and S12 may be executed by the control unit 402 of the terminal device 100.
  • the control unit 502 of the information processing device 200 acquires the position of the terminal device 100 and the direction in which the camera of the terminal device 100 is facing (step S14). For example, the control unit 502 of the information processing device 200 receives the information on the self-position estimated by the terminal device 100 and the information on the estimation of the self-posture estimated by the terminal device 100 via the communication unit. Further, the direction in which the camera of the terminal device 100 is facing is calculated based on the information regarding the self-posture estimated by the terminal device 100. When the process of step S14 is completed, the control unit 502 of the information processing apparatus 200 proceeds to step S16.
  • the control unit 502 of the information processing device 200 projects a marker image on the display device in the direction in which the camera of the terminal device 100 is facing (step S16). Since the subsequent processing is performed by the terminal device 100, the control unit 502 of the information processing device 200 proceeds to step S22 when the processing of step S16 is completed.
  • the control unit 402 of the terminal device 100 recognizes the position of the mark image on the terminal device 100 (step S18). When the process of step S18 is completed, the control unit 402 of the terminal device 100 proceeds to step S20.
  • the control unit 402 of the terminal device 100 corrects the self-position estimation of the terminal device 100 (step S20). When the process of step S20 is completed, the control unit 402 of the terminal device 100 proceeds to step S22.
  • the control unit 502 of the information processing device 200 and the control unit 402 of the terminal device 100 determine whether or not the program has ended (step S22). When the control unit 502 of the information processing device 200 and the control unit 402 of the terminal device 100 detect the end of the program, the program is terminated (Yes in step S22). If the control unit 502 of the information processing device 200 and the control unit 402 of the terminal device 100 have not detected the end of the program, the process returns to step S10 (No in step S22).
  • the present embodiment is not limited to such a mode.
  • This embodiment can be applied to various devices such as tablet-type devices, game machines, and computers such as PCs (Personal Computers).
  • the method of estimating the self-position of the terminal device 100 a method of time-integrating the output from the IMU has been introduced, but the method of estimating the self-position is not limited to this.
  • the SLAM (Simultaneus Localization and Mapping) method is well known as a method for estimating the position of a device equipped with a camera or the like (camera, laser range scanner, microphone array, encoder, etc.).
  • the SLAM method is a method of performing self-position estimation and mapping at the same time based on the information output from a device such as a camera, but this method also causes problems such as deviation when mapping circular terrain. It has been pointed out that In the present disclosure, even when the SLAM method is used, the correction by the world coordinates can be performed, so that the above-mentioned problem can be avoided.
  • the optical see-through is illustrated with a glasses-type device for displaying the content.
  • the display of the content of the present disclosure is not limited to this, and the same content can be displayed by using the video see-through even in a head-mounted display of a type that completely covers the user's eyes.
  • a method of displaying a mark image on a screen using a so-called moving projector is disclosed, but the display of the mark image is not limited to this.
  • a liquid crystal panel can be an alternative.
  • even when using a moving projector has a cost problem or a problem that installation is structurally difficult due to many obstacles, it is possible to achieve the same effect as the above disclosure by using a plurality of projectors. be.
  • a control unit that controls the display position of the image based on the information about the estimated self-position of the terminal device, A display unit that displays the image at the display position controlled by the control unit, and a display unit.
  • Information processing device equipped with (2) The information processing device according to (1), wherein the information processing device includes a communication unit that receives information about an estimated self-position of the terminal device from the terminal device. (3) The information processing device according to (1), wherein the control unit of the terminal device updates the estimation of the self-position at predetermined time intervals. (4) The information processing apparatus according to (3), wherein the predetermined time interval is determined based on the relationship between the estimation of the self-position before the update and the estimation of the self-position after the update.
  • the terminal device includes a display unit and has a display unit.
  • the information processing device according to (1), wherein the control unit controls the display position of the image based on the content displayed on the display unit of the terminal device.
  • the control unit controls the display position of the image based on the display area of the content displayed on the display unit of the terminal device and the image pickup area of the image pickup unit of the terminal device, according to (5).
  • Information processing equipment (7) The information processing according to (5), wherein the control unit controls the display position of the image based on the line-of-sight direction in which the user visually recognizes the content when the content is displayed on the display unit of the terminal device.
  • Device The information processing according to (1), wherein the control unit controls the display position of the image based on the line-of-sight direction in which the user visually recognizes the content when the content is displayed on the display unit of the terminal device.
  • the control unit uses a first timer for controlling the image pickup of the image pickup unit of the terminal device and a second timer for controlling the image display of the control unit to communicate between the communication unit of the terminal device and the information processing device.
  • the information processing apparatus according to (1), which is matched with a unit.
  • An image pickup unit that captures the image displayed by the information processing device, An acquisition unit that acquires information about the display position of the image, and A control unit that controls the estimation of the self-position based on the image captured by the image pickup unit and the information regarding the display position acquired by the acquisition unit.
  • a terminal device equipped with (10) The terminal device according to (9), wherein the control unit of the user terminal performs the update based on the history of estimation of the self-position.
  • An information processing system equipped with an information processing device and a terminal device is A control unit that controls an image display position based on information about the estimated self-position of the terminal device, and a control unit.
  • a display unit that displays the image at the display position controlled by the control unit, and a display unit.
  • Equipped with The terminal device is An image pickup unit that captures the displayed image by the information processing apparatus, and an image pickup unit.
  • An acquisition unit that acquires position information regarding the display position of the image
  • a self-position estimation update unit that updates the self-position estimation based on the image captured by the image pickup unit and the position information acquired by the acquisition unit, and Information processing system equipped with.
  • Control the display position of the image based on the information about the estimated self position of the terminal device An information processing method comprising displaying the image at the controlled display position.
  • Information processing device A control means that controls the display position of an image based on the information about the estimated self-position of the terminal device.
  • Terminal device 102 CPU 104 GPU 106 RAM 108 VRAM 110 Storage 112 Display 114 Camera 116 IMU 118 Touch sensor 120 Bus 122 Transmitter / receiver 200 Information processing device 202 CPU 204 GPU 206 RAM 208 VRAM 210 Storage 212 Transmitter / Receiver 214 Bus 300 Display device 302 Projection unit 304 Screen 306 Moving unit 402 Control unit 404 Storage unit 4042 System program 4044 Application program 406 Imaging unit 408 Acquisition unit 410 Display unit 412 Communication unit 502 Control unit 504 Storage unit 5042 Program 506 Display unit 508 Communication unit 602 Input unit 604 Projection unit 606 Movable unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

デバイスが自己の位置を推定することを可能にする。情報処理装置(200)と端末装置(100)とを備える情報処理システムであって、前記情報処理装置は、前記端末装置の推定した自己位置に関する情報に基づいて画像の表示位置を制御する制御部(502)と、前記制御部で制御された前記表示位置に前記画像を表示する表示部(506)と、を備え、前記端末装置は、前記情報処理装置により前記表示された前記画像を撮像する撮像部(406)と、前記画像の表示位置に関する位置情報を取得する取得部(408)と、前記撮像部で撮像された前記画像及び前記取得部で取得された前記位置情報に基づいて自己位置の推定を更新する自己位置推定更新部(402)と、を備える情報処理システムを提供する。

Description

情報処理装置、端末装置、情報処理システム、情報処理方法およびプログラム
 本開示は、情報処理装置、端末装置、情報処理システム、情報処理方法およびプログラムに関する。
 近年、ヘッドマウントディスプレイに代表される、ユーザの視界を覆う表示装置を備えた端末装置を頭部に装着することで、当該ユーザにコンテンツを視聴させることができる技術が開発されている。このような技術としては、例えば下記の特許文献1に記載の技術が挙げられる。
国際公開第2015/079610号
 しかしながら、従来技術では、ユーザが装着する端末装置が自己の位置を推定する際、適切な推定をすることができていなかった。
 本発明は、上記に鑑みてなされたものであって、デバイスが自己の位置を推定することを可能とする情報処理装置、端末装置、情報処理システム、情報処理方法を提供することを目的とする。
 上述した課題を解決し、目的を達成するために、本開示において、端末装置の推定した自己位置に関する情報に基づいて画像の表示位置を制御する制御部と、制御部で制御された前記表示位置に前記画像を表示する表示部と、を備える情報処理装置、を提供する。
実施形態に係る端末装置の一例を説明するための図である。 実施形態に係る端末装置の一例を説明するための図である。 実施形態に係る情報処理装置の一例を説明するための図である。 実施形態に係る表示装置の一例を説明するための図である。 実施形態に係る表示装置の一例を説明するための図である。 実施形態に係る端末装置の構成の一例を説明するための図である。 実施形態に係る情報処理装置の構成一例を説明するための図である。 実施形態に係る表示装置の構成一例を説明するための図である。 実施形態に係る初回キャリブレーションの一例を説明するための図である。 実施形態に係る初回キャリブレーションの一例を説明するための図である。 実施形態に係る端末装置及び情報処理装置が実行する処理手順の一例を示すフローチャートである。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 また、以下に示す項目順序に従って本開示を説明する。
  1.一実施形態
   1.1.ハードウェア構成
    1.1-1.端末装置
    1.1-2.情報処理装置
    1.1-3.表示装置
   1.2.機能構成
    1.2-1.端末装置
    1.2-2.情報処理装置
    1.2-3.表示装置
   1.3.使用方法の概要
   1.4.動作の説明(フローチャート)
  2.その他の実施形態
 [1.一実施形態]
 はじめに、一実施形態として、端末装置、情報処理装置及び表示装置を用いて端末装置が推定した自己位置を補正する例について述べる。
 [1.1.ハードウェア構成]
 先ず、本開示におけるハードウェアの構成について説明する。以下では、本実施形態に係る端末装置、情報処理装置及び表示装置夫々のハードウェアの構成例を挙げる。
 [1.1-1.端末装置]
 図1A及び図1Bは、それぞれ、本実施形態における端末装置の外観及びハードウェア構成図の一例を示す図である。本実施形態における端末装置100は、CPU(Central Processing Unit)102、GPU(Graphics Processing Unit)104、RAM(Random Access Memory)106、VRAM(Video RAM)108、ストレージ110、ディスプレイ112、カメラ114、IMU(Inertial Measurement Unit)116、タッチセンサ118、送受信器122等で構成されており、主にバス120を介して接続されている。
 本実施形態においてCPU102は、様々な演算を行う演算装置である。CPU102は、例えば、ストレージ110に記憶されたプログラムをRAM106にコピーしたうえで実行する。CPU102は、制御基板上に備わるSoC(System on a Chip)を構成する集積回路の一部であってもよい。
 CPU102はまた、ディスプレイ112に表示する画像を制御する。例えば、VRAM108に記録された画像をディスプレイ112に表示するための命令をGPU104に発行し、ディスプレイ112に表示させる。
 CPU102はまた、GPU104、RAM106、VRAM108、ストレージ110、ディスプレイ112、カメラ114、IMU116、送受信器122等の各種デバイスを制御し、各種デバイスからの入力を処理する。
 本実施形態において、GPU104は、画像処理のための演算を実行することを主目的とした演算装置であり、上述のようにCPU102からの命令を受けて演算を実行する。GPU104もまた、CPU102と同様、制御基板上に備わるSoC(System on a Chip)を構成する集積回路の一部であってもよい。
 本実施形態において、RAM106は、CPU102がプログラムを実行する際の作業領域として使用される主記憶装置である。RAM106もまた、CPU102やGPU104と同様、制御基板上に備わるSoCを構成する集積回路の一部であってもよい。
 本実施形態において、VRAM108は、主として上述のGPU104が画像処理のための演算をする際の作業領域として使用される記憶装置である。VRAM108は上述のRAM106と共用の構成であるUMA(Unified Memory Architecture)であってもよい。
 本実施形態において、ストレージ110は、例えばHDD(Hard Disc Drive)やフラッシュメモリ等の補助記憶装置によって構成される。
 本実施形態におけるディスプレイ112は、GPU104等で生成した画像をユーザに視認可能に提示するものであり、例えば液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ等によって実現される。これらのディスプレイ112は、眼鏡型デバイスの場合、プリズム等の光学系を用いてユーザが視認可能にする。
 本実施形態におけるカメラ114は、レンズ、イメージセンサ(CMOS、CCD等)及びカラーフィルタを少なくとも含むものである。カメラ114は端末装置100の前面に配置されており、端末装置100の向いている方向を撮影してもよいし、例えば360度カメラ等を備えて全方位を撮影してもよい。
 本実施形態におけるIMU116は、3軸ジャイロ及び3方向の加速度計が備わっており、これらによりそれぞれ3次元空間内の角速度及び加速度を求めることができる。これら求められた角速度及び加速度の積分により、自己姿勢を含む自己位置の推定をすることができる。
 本実施形態におけるタッチセンサ118は、ユーザによる接触を検知する機能を有する。タッチセンサ118は、例えば、静電容量式や感圧式のタッチセンサであってよい。タッチセンサ118は、ユーザによる触れる、撫でる、叩く、押すなどの接触行為を検知することができ、当該接触行為に応じた動作を行うことが可能となる。
 ただし、本説明において例示した端末装置100は、単なる一例であり、スマートフォン、タブレット端末、携帯ゲーム機など、ディスプレイとカメラとIMUとを備える種々の端末装置を用いることが可能である。
 [1.1-2.情報処理装置]
 図2は、本実施形態における情報処理装置200のハードウェア構成図の一例を示している。本実施形態における情報処理装置200は、CPU(Central Processing Unit)202、GPU(Graphics Processing Unit)204、RAM(Random Access Memory)206、VRAM(Video RAM)208、ストレージ210、送受信器212等で構成されており、主にバス214を介して接続されている。
 本実施形態においてCPU202は、様々な演算を行う演算装置である。CPU202は、例えば、ストレージ210に記憶されたプログラムをRAM206にコピーしたうえで実行する。
 CPU202はまた、表示装置300に表示する画像を制御する。例えば、VRAM208に記録された画像を表示装置300に表示するための命令をGPU204に発行し、表示装置300に表示させる。
 CPU202はまた、GPU204、RAM206、VRAM208、ストレージ210、送受信器212等の各種デバイスを制御し、各種デバイスからの入力を処理する。
 本実施形態において、GPU204は、画像処理のための演算を実行することを主目的とした演算装置であり、上述のようにCPU202からの命令を受けて演算を実行する。
 本実施形態において、RAM206は、CPU202がプログラムを実行する際の作業領域として使用される主記憶装置である。
 本実施形態において、VRAM208は、主として上述のGPU204が画像処理のための演算をする際の作業領域として使用される記憶装置である。
 本実施形態において、ストレージ210は、例えばHDD(Hard Disc Drive)やフラッシュメモリ等の補助記憶装置によって構成される。ストレージ210にはプログラム等が記憶されている。
 [1.1-3.表示装置]
 図3A及び図3Bは、本実施形態における表示装置300の外観の一例を示している。本実施形態における表示装置300は、投影部302、スクリーン304、可動部306を少なくとも含む、所謂ムービングプロジェクターである。
 本実施形態において、投影部302は、表示装置300に入力された映像をスクリーン304に投影する。
 本実施形態において、スクリーン304には、投影部302からの映像が投影される。映像の投影を目的とするものをスクリーン304として使用してもよいし、室内の壁等をスクリーン304として代用してもよい。
 本実施形態において、可動部306は、投影部302を可動させる機構である。可動部306により、映像を投影する方向を変更することができるため、可動部306が無い場合には映像の投影が不可能であった領域にも映像の投影が可能となる。
 [1.2.機能構成]
 続いて、本開示における機能の構成について説明する。以下では、本実施形態に係る端末装置100、情報処理装置200及び表示装置300夫々の機能構成例を挙げる。
 [1.2-1.端末装置]
 本実施形態に係る端末装置100の機能構成例を挙げる。
 図4は本実施形態における端末装置100の機能構成の一例を示している。本実施形態における端末装置100の機能は制御部402、記憶部404、撮像部406、取得部408、表示部410、通信部412等で構成される。
 本実施形態において制御部402は、上述のCPU102によって記憶部404に記憶されたシステムプログラム(以下、単にプログラムとも4042が実行されることにより実現される。記憶部404に記憶されたプログラム4042は、作業領域である上述のRAM106等の主記憶装置にコピーされた上でCPU102に実行される。
 制御部402はまた、表示部410に表示する画像を制御したりする。例えば、VRAM108に記録された画像を表示部410に表示するための命令をGPU104に発行し、表示部410に表示させる。
 制御部402はまた、端末装置100のIMU116に備わる3軸ジャイロ及び3方向の加速度計の出力する3次元空間内の角速度及び加速度を時間積分することで、自己姿勢及び自己位置の時間経過に伴う変化を推定する。
 制御部402はまた、撮像部406に撮像の命令をする。例えば、制御部402は、プログラム4042実行中の所与のタイミングで、表示装置300のスクリーン304に表示される目印画像を含む画像を撮像するよう撮像部406に命令をし、撮像結果をRAM106等の主記憶装置に保存する。
 制御部402は更に、上述の撮像された画像を解析して当該画像に含まれる目印画像の当該画像上の位置、大きさ、傾き等を検出する。
 本実施形態において記憶部404は、例えばHDD(Hard Disc Drive)やフラッシュメモリ等の補助記憶装置であるストレージ110によって構成される。記憶部404は、端末装置100の制御を行うプログラム4042等を記憶している。
 記憶部404に記憶されたプログラム4042は、ユーザからのプログラム実行開始指示があった場合に、RAM106等の作業領域にコピーされたうえでCPU102等に実行される。
 本実施形態における表示部410は、制御部402で生成した画像等をユーザに視認可能に提示するものであり、端末装置100のディスプレイ112によって実現される。すなわち、端末装置100のCPU102が画像の生成命令をGPU104に発行し、この発行された命令に従ってGPU104が画像を生成し、生成された画像がディスプレイ112に表示される。
 表示部410は、記憶部に記憶された動画像情報等を、制御部402による制御によって表示してもよい。すなわち、制御部402は、記憶部に記憶された動画像ファイルを、ファイルストリームとして読みだしてVRAM108に逐次転送し、VRAM108上に転送された動画像であって、元の動画像ファイルの時間軸方向の一部の動画像を表示部410に表示するための命令を発行し、表示部410に表示してもよい。
 また、表示部410は、情報処理装置200とも表示装置300とも異なる外部のサーバ(図示しない)によって生成された動画像情報を、情報処理装置200に備わる通信部412を用いて受信し、制御部402による制御によって表示してもよい。
 本実施形態における撮像部406は、端末装置100に備わるカメラ114を使用して表示装置300のスクリーン304に表示される目印画像を撮像する。上述のように、端末装置100の制御部402は、撮像画像中の目印画像の位置、大きさ、傾き等を検出し、この検出結果と目印画像の既知の世界座標の情報とを比較し、自己の推定した世界座標の補正を行う。
 本実施形態における取得部408は、前述の目印画像の世界座標に関する情報を取得する。目印画像の世界座標に関する情報は、端末装置100の通信部412を介して情報処理装置から受信してもよいし、情報処理装置以外の装置から受信してもよい。また、端末装置100の制御部402であらかじめ決定していた既知の目印画像の世界座標を記憶部404に記憶させ、この記憶部404に記憶させた目印画像の世界座標に関する情報を取得してもよい。
 [1.2-2.情報処理装置]
 次に、本実施形態に係る情報処理装置の機能構成例を挙げる。
 図5は本実施形態における情報処理装置200の機能構成の一例を示している。本実施形態における情報処理装置200の機能は制御部502、記憶部504、表示部506、通信部508、等で構成される。
 本実施形態において制御部502は、端末装置100が推定した自己位置に関する情報に基づいて、画像の表示位置を制御する。すなわち、端末装置100のIMU等によって端末装置100の自己位置が推定される場合に、端末装置100の位置や姿勢等から、端末装置100の撮像部で撮像可能な領域に目印画像を表示するため表示位置の制御を行う。具体的には、表示装置に目印画像を所定のスクリーン座標に表示するように指示を出すための表示位置の計算を行う。また、必要に応じて、表示装置の可動部の可動量の計算を行う。
 本実施形態において表示部506は、表示装置300に表示内容を伝達する機能を有する。表示内容に関するデータは、情報処理装置のGPU204等を使用して計算され、情報処理装置200のVRAM208に書き込まれ、表示装置300の表示部に転送される。
 本実施形態において、通信部508は、端末装置100と通信する。具体的には、端末装置100の推定した自己位置の情報を、端末装置100の通信部を介して受信する。なお、端末装置100が撮像するためのスクリーン上の目印画像の座標は、上述のように情報処理装置200が計算してもよいし、端末装置100が計算し、通信部を介して当該座標情報を情報処理装置200が受信してもよい。
 [1.2-3.表示装置]
 次に、本実施形態に係る表示装置300の機能構成例を挙げる。
 図6は本実施形態における表示装置300の機能構成の一例を示している。本実施形態における表示装置300の機能は入力部602、投影部604、可動部606等で構成される。
 本実施形態において、入力部602は他の装置からの映像の入力を受け付ける。上述のように、情報処理装置が生成した表示内容に関するデータは、入力部から入力される。
 本実施形態において、投影部604は入力部602で受け付けた映像をスクリーン等に投影する。上述のように、投影は専用のスクリーンに対して行ってもよいし、屋内又は屋外の壁面等に行ってもよい。さらに、必ずしも平面に対して投影しなければならないわけではない。
 本実施形態において、可動部606は、投影部604が投影する方向を変更する。すなわち、通常のプロジェクタのような表示装置においては、いったん表示装置を設置した後においては、表示する対象はスクリーンに固定されており、スクリーンの外側に存在する物体や、他のスクリーンに対しては投影することができなかった。本実施形態においては、可動部によって投影部の投影方向を変更することが可能なため、スクリーンの外側に存在する物体や、他のスクリーンに対しても投影が可能である。
 さらに、例えば室内の壁面がスクリーンとして映像を投影可能な場合に、可動部は、投影部を可動させることにより、特定の壁面に限らず、壁面全体を投影対象として投影可能にする。
 本実施形態においては、可動部606への可動の命令は、情報処理装置の制御部の演算に基づいて決定され、当該命令は有線又は無線で接続された情報処理装置の通信部から受信する。
 [使用方法の概要]
 本実施形態において、端末装置100、情報処理装置200及び表示装置300を組み合わせて端末装置100の自己位置の推定を制御する方法の概要を以下に示す。
 ユーザは初めに、表示装置300を設置する。設置後、図7で示すように初回キャリブレーションを行う。
 図7は表示装置300のスクリーン304に対して投影する表示であって、投影部の投影位置を認識するための表示である。図7に示す構成で、キャリブレーション用のステレオカメラを介して、世界座標とスクリーン座標のキャリブレーションをおこなう。図7はステレオカメラの観測点から三角測量で求めた座標値を元に、世界座標原点とプロジェクタ座標原点の相対位置を計算する例である。世界座標の原点はW(0,0,0)であり、スクリーン座標の原点はP(0,0)である。ステレオカメラで世界座標の原点及びスクリーン座標の原点を撮影した画像上の観測点から三角測量で求めた座標値を元に、スクリーン座標の世界座標を計算することができる。スクリーン上の任意の点と世界座標の原点とで同様の計算を行えば、スクリーン座標の原点だけでなく、スクリーン上の任意の点の世界座標が計算で求まる。
 例えば、図8では、世界座標の原点に基づいてスクリーン座標の原点の世界座標を求めた結果である。上述のステレオカメラで世界座標の原点とスクリーン座標の原点との位置関係を計算で求めた結果、例えばスクリーン座標の原点は世界座標で表すとW(-100、40、-15)となる。同様に、スクリーン座標の任意の点と世界座標とを対応付けることが可能である。
 ユーザは次に、ユーザの持つ端末装置100の電源を投入し、端末装置100のシステムプログラム4042を起動させる。このシステムプログラム4042は、端末装置100の各種機能を利用するためのプログラムである。当該システムプログラム4042を起動後、ユーザはアプリケーションプログラム4044を起動させ、当該アプリケーションプログラム4044からシステムプログラム4042経由で間接的に端末装置100の機能を利用する。
 次にユーザは、システムプログラム4042が動作している状態の端末装置100を頭部に装着する。なお、頭部への装着はシステムプログラム4042の起動前に行ってもよい。
 起動した端末装置100は、制御部の制御により、自己の位置を推定する。すなわち、端末装置100に備わるIMUから出力されるデータを制御部が時間積分することにより、時間とともに変化する端末装置100の位置及び姿勢を推定することができる。
 自己の位置を時間積分により推定する場合、推定開始時からの相対的な位置及び姿勢の変化を推定することとなり、端末装置100の実際の世界座標及び姿勢(以下、絶対座標)と、推定した世界座標及び姿勢(以下、推定座標)とは誤差が生じうる。さらに、IMUから出力されるデータを時間積分することで推定座標を推定するため、時間とともに誤差が蓄積してゆくこととなる。
 ユーザは、端末装置100が推定座標の推定を開始する前に、端末装置100の世界座標を端末装置100に記憶させる。すなわち、端末装置100に備わるカメラで現実世界に存在する世界座標が既知の目印オブジェクトを撮影し、当該撮影画像を制御部で解析することで、端末装置100の絶対座標を端末装置100に記憶させる。目印オブジェクトは、例えば前述の原点マーカーWが挙げられる。
 なお、目印オブジェクトは、表示装置のスクリーンに表示される世界座標が既知の目印画像で代替することができる。ここで、世界座標が既知の目印オブジェクトと、表示装置のスクリーン上に表示される目印画像との間の位置関係は、前述のように初回キャリブレーションであらかじめステレオカメラ等で測定することで、スクリーン上の任意の点の世界座標は既知の状態である。
 ユーザは頭部に端末装置100を装着したまま、姿勢を変えたり、移動したりをする。これによって端末装置100は位置や姿勢が変化する。この変化を上述のようにIMUで推定する。この推定は上述のように誤差が蓄積されていくため、端末装置100が推定する推定座標は、端末装置100の真の絶対座標から時間とともにずれてゆく。
 端末装置100が推定する推定座標と、端末装置100の真の絶対座標とのずれを補正するため、表示装置のスクリーン上に表示される世界座標が既知の目印画像を、表示装置のカメラが撮影し、端末装置100自体の世界座標を記憶する。
 このようにすれば、時間の経過に伴ってずれが生じていた端末装置100が推定する世界座標を、真の世界座標に補正することができる。
 なお、端末装置100はユーザの頭部に装着され、位置や姿勢が変化している。そのため、端末装置100のカメラがどの方向を向いており、撮影可能領域はどこなのか、という情報に基づいて表示装置のスクリーンに目印画像を表示する。
 これを実現するため、例えば、端末装置100は情報処理装置と通信接続し、現在の推定された自己の位置及び姿勢に関する情報を送信する。情報処理装置は、受信した情報に基づいて、端末装置100に備わるカメラで撮像可能なスクリーン上の位置に目印画像を表示する。
 ところで、端末装置100が目印画像を撮像し、当該撮像画像から自己の世界座標を導出して記憶する場合、目印画像の世界座標が端末装置100にとって既知である必要があるため、例えば情報処理装置が表示装置のスクリーン上の所定の座標に目印画像を表示することを決定した場合、情報処理装置は当該決定した座標から世界座標を求め、当該求めた目印画像の世界座標を端末装置100に送信する。
 また、端末装置100が、自己の撮像可能な範囲である座標であって、表示装置のスクリーン上の座標を決定し、当該座標に関する情報を情報処理装置に送信し、当該情報に基づいたスクリーン上の座標に情報処理装置が表示装置に目印画像を表示制御してもよい。
 以上、時間とともにずれてゆく端末装置100の推定する世界座標を、カメラによる撮像結果に基づいて補正する方法を説明した。
 なお、情報処理装置が表示装置のスクリーンに目印画像を表示する指示をするタイミングや目印画像の内容については、様々なバリエーションが考えられる。
 例えば、所定の時間間隔で端末装置100のカメラの撮像方向のスクリーンに目印画像を表示し、当該目印画像をカメラの撮像部で撮像し、端末装置100の推定する世界座標を補正する方法である。この方法によれば、所定の時間間隔で世界座標の補正をするため、補正が高頻度であるために端末装置100の計算資源を過剰に消費してしまうといった場合に頻度を落として計算資源を過剰に消費することを防ぐことができる。また、補正が低頻度であるために時間経過に伴って端末装置100の推定する世界座標の誤差が大きくなってしまう場合に頻度を高めることで誤差を低く抑えることができる。
 また、上述の所定の時間間隔を条件に基づいて変動させてもよい。例えば、端末装置100の世界座標の補正をした際に、補正前に推定していた座標と、補正後の真の座標との差が大きければ大きいほど、誤差が生じやすい状態にあるとして、次回の補正までの時間間隔を短くし、逆に、補正前に推定していた座標と、補正後の真の座標との差が小さければ小さいほど、誤差が生じにくい状態にあるとして、次回の補正までの時間間隔を長くしてもよい。
 他の条件として、端末装置100の表示部に表示するコンテンツに基づいて、情報処理装置は表示装置のスクリーンに表示させる目印画像を制御してもよい。例えば、端末装置100の表示部が表示可能なユーザの視界領域の外側を撮像部が撮像可能な場合、視界領域の外側であって撮像部が撮像可能な領域に存在するスクリーンの部分に目印画像を表示してもよい。
 また、端末装置100の表示部の表示形式がビデオ透過又は光学透過だった場合に、当該表示部に表示されるコンテンツと重畳するようにスクリーンに目印画像を表示してもよい。
 また、表示装置のスクリーンに目印画像を表示するのは非常に短い時間であってもよい。この場合、目印画像が表示される時間が非常に短いため、ユーザは目印画像が表示されていることに気づきにくいという利点がある。
 [動作の説明(フローチャート)]
 次に、本実施形態に係る端末装置100及び情報処理装置200の構成するシステム全体の処理手順の一例について説明する。図9は、実施形態に係る端末装置100及び情報処理装置200が実行する処理手順の一例を示すフローチャートである。なお、図9に示す処理手順は、端末装置100がシステムプログラム4042またはアプリケーションプログラム4044を実行することによって、情報処理装置200がプログラム5042を実行することによって夫々実現される。
 図9に示すように、情報処理装置200の制御部502は、端末装置100の自己位置推定の補正処理をするまでのタイマーを開始する(ステップS10)。例えば、情報処理装置200の制御部502は、タイマーの初期値として1秒を設定し、タイマー処理を開始する。情報処理装置200の制御部502は、ステップS10の処理が終了すると、ステップS12に処理を進める。
 情報処理装置200の制御部502は、ステップS10で設定したタイマーが0になったか否かを判定する(ステップS12)。タイマーが0になっていない場合、否として(ステップS12でNo)タイマーを減じたうえで再度ステップS12を実行し、タイマーが0になっている場合、是として(ステップS12でYes)ステップS14に処理を進める。なお、ステップS10及びステップS12のタイマーの処理は、端末装置100の制御部402で実行してもよい。
 情報処理装置200の制御部502は、端末装置100の位置と端末装置100のカメラが向いている方向を取得する(ステップS14)。例えば、情報処理装置200の制御部502は、端末装置100の推定している自己位置の情報及び端末装置100の推定している自己の姿勢の推定に関する情報を、通信部を介して受信する。さらに、端末装置100の推定している自己の姿勢に関する情報に基づいて、端末装置100のカメラが向いている方向を計算する。情報処理装置200の制御部502は、ステップS14の処理が終了すると、ステップS16に処理を進める。
 情報処理装置200の制御部502は、端末装置100のカメラが向いている方向に表示装置で目印画像を投影する(ステップS16)。以降の処理は端末装置100で行うため、情報処理装置200の制御部502は、ステップS16の処理が終了すると、ステップS22に処理を進める。
 端末装置100の制御部402は、端末装置100で目印画像の位置を認識する(ステップS18)。端末装置100の制御部402は、ステップS18の処理が終了すると、ステップS20に処理を進める。
 端末装置100の制御部402は、端末装置100の自己位置推定を補正する(ステップS20)。端末装置100の制御部402は、ステップS20の処理が終了すると、ステップS22に処理を進める。
 情報処理装置200の制御部502及び端末装置100の制御部402は、プログラムが終了したか否かを判定する(ステップS22)。情報処理装置200の制御部502及び端末装置100の制御部402は、プログラムの終了を検知した場合、是として、プログラムを終了する(ステップS22のYes)。情報処理装置200の制御部502及び端末装置100の制御部402は、プログラムの終了を検知していない場合、否として、ステップS10に処理を戻す(ステップS22のNo)。
 以上、本実施形態として、端末装置100を挙げて説明したが、本実施形態は、かかる形態に限られない。本実施形態は、例えば、タブレット型の装置や、ゲーム機、PC(Personal Computer)などのコンピュータなど、様々な機器に適用することができる。
 [2.その他の実施形態]
 以上、一実施形態を説明したが、次のような他の実施形態も考えられる。
 ところで、端末装置100が自己の位置を推定する方法として、IMUからの出力を時間積分する手法を紹介したが、自己の位置を推定する方法はこれに限られない。例えば、カメラ等(カメラ、レーザーレンジスキャナー、マイクロフォンアレイ、エンコーダー等)を搭載した機器が自己の位置を推定する方法として、SLAM(Simultaneous Localization and Mapping)法がよく知られている。
 SLAM法は、カメラ等の機器から出力される情報に基づき、自己位置推定とマッピングを同時に行う方法であるが、この手法においても、環状の地形のマッピングの際にずれを起こすなどの問題が発生することが指摘されている。本開示では、SLAM法を用いた場合においても、世界座標による補正を行うことが可能なため、上述のような問題を回避することが可能である。
 また、上述の実施形態では、コンテンツの表示について、メガネ型デバイスで光学シースルーの例示をした。本開示のコンテンツの表示はこれに限らず、ユーザの目を完全に覆うタイプのヘッドマウントディスプレイにおいても、ビデオシースルーを利用して同様のコンテンツ表示を行うことが可能である。
 また、上述の実施形態においては、いわゆるムービングプロジェクターを用いてスクリーンに目印画像を表示する方法を開示したが、目印画像の表示はこれに限られない。例えば、液晶パネルがその代替たりうる。また、ムービングプロジェクターを用いることがコスト上の問題や遮蔽物が多く設置が構造上困難な問題がある場合においても、複数のプロジェクタを用いることで、上記開示と同様の効果を奏することが可能である。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 上述した構成は、本実施形態の一例を示すものであり、当然に、本開示の技術的範囲に属するものである。
 また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
 なお、以下のような構成も本開示の技術的範囲に属する。
(1)
 端末装置の推定した自己位置に関する情報に基づいて画像の表示位置を制御する制御部と、
 前記制御部で制御された前記表示位置に前記画像を表示する表示部と、
 を備える情報処理装置。
(2)
 前記情報処理装置は、前記端末装置の推定した自己位置に関する情報を前記端末装置から受信する通信部を備える、(1)に記載の情報処理装置。
(3)
 前記端末装置の制御部は、所定の時間間隔で前記自己位置の推定を更新する、(1)に記載の情報処理装置。
(4)
 前記所定の時間間隔は、前記更新前の自己位置の推定と、前記更新後の自己位置の推定との関係に基づいて決定される、(3)に記載の情報処理装置。
(5)
 前記端末装置は表示部を備え、
 前記制御部は、前記端末装置の表示部に表示されるコンテンツに基づいて前記画像の表示位置を制御する、(1)に記載の情報処理装置。
(6)
 前記制御部は、前記端末装置の前記表示部に表示される前記コンテンツの表示領域と、前記端末装置の撮像部の撮像領域に基づいて、前記画像の表示位置を制御する、(5)に記載の情報処理装置。
(7)
 前記制御部は、前記端末装置の表示部に前記コンテンツが表示された場合に、ユーザが前記コンテンツを視認する視線方向に基づいて前記画像の表示位置を制御する、(5)に記載の情報処理装置。
(8)
 前記制御部は、前記端末装置の撮像部の撮像を制御する第一のタイマーと、前記制御部の画像表示を制御する第二のタイマーを、前記端末装置の通信部と前記情報処理装置の通信部とを介して一致させる、(1)に記載の情報処理装置。
(9)
 情報処理装置により表示された画像を撮像する撮像部と、
 前記画像の表示位置に関する情報を取得する取得部 と、
 前記撮像部で撮像された前記画像及び前記取得部で取得された前記表示位置に関する情報に基づいて自己位置の推定を制御する制御部と、
 を備える端末装置。
(10)
 前記ユーザ端末の制御部は、前記自己位置の推定の履歴に基づいて前記更新を行う、(9)に記載の端末装置。
(11)
 情報処理装置と端末装置とを備える情報処理システムであって、
 前記情報処理装置は、
  前記端末装置の推定した自己位置に関する情報に基づいて画像の表示位置を制御する制御部と、
  前記制御部で制御された前記表示位置に前記画像を表示する表示部と、
 を備え、
 前記端末装置は、
  前記情報処理装置により前記表示された前記画像を撮像する撮像部と、
  前記画像の表示位置に関する位置情報を取得する取得部と、
  前記撮像部で撮像された前記画像及び前記取得部で取得された前記位置情報に基づいて自己位置の推定を更新する自己位置推定更新部と、
 を備える
 情報処理システム。
(12)
 情報処理装置において実行される情報処理方法であって、
 端末装置の推定した自己位置に関する情報に基づいて画像の表示位置を制御し、
 前記制御された前記表示位置に前記画像を表示する
ことを含む情報処理方法。
(13)
 情報処理装置を、
 端末装置の推定した自己位置に関する情報に基づいて画像の表示位置を制御する制御手段、
 前記制御手段で制御された前記表示位置に前記画像を表示する表示手段、
として機能させるためのプログラム。
 100  端末装置
 102  CPU
 104  GPU
 106  RAM
 108  VRAM
 110  ストレージ
 112  ディスプレイ
 114  カメラ
 116  IMU
 118  タッチセンサ
 120  バス
 122  送受信器
 200  情報処理装置
 202  CPU
 204  GPU
 206  RAM
 208  VRAM
 210  ストレージ
 212  送受信器
 214  バス
 300  表示装置
 302  投影部
 304  スクリーン
 306  可動部
 402  制御部
 404  記憶部
 4042  システムプログラム
 4044  アプリケーションプログラム
 406  撮像部
 408  取得部
 410  表示部
 412  通信部
 502  制御部
 504  記憶部
 5042  プログラム
 506  表示部
 508  通信部
 602  入力部
 604  投影部
 606  可動部

Claims (13)

  1.  端末装置の推定した自己位置に関する情報に基づいて画像の表示位置を制御する制御部と、
     前記制御部で制御された前記表示位置に前記画像を表示する表示部と、
     を備える情報処理装置。
  2.  前記情報処理装置は、前記端末装置の推定した自己位置に関する情報を前記端末装置から受信する通信部を備える、請求項1に記載の情報処理装置。
  3.  前記端末装置の制御部は、所定の時間間隔で前記自己位置の推定を更新する、請求項1に記載の情報処理装置。
  4.  前記所定の時間間隔は、前記更新前の自己位置の推定と、前記更新後の自己位置の推定との関係に基づいて決定される、請求項3に記載の情報処理装置。
  5.  前記端末装置は表示部を備え、
     前記制御部は、前記端末装置の表示部に表示されるコンテンツに基づいて前記画像の表示位置を制御する、
     請求項1に記載の情報処理装置。
  6.  前記制御部は、前記端末装置の前記表示部に表示される前記コンテンツの表示領域と、前記端末装置の撮像部の撮像領域に基づいて、前記画像の表示位置を制御する、
     請求項5に記載の情報処理装置。
  7.  前記制御部は、前記端末装置の表示部に前記コンテンツが表示された場合に、ユーザが前記コンテンツを視認する視線方向に基づいて前記画像の表示位置を制御する、請求項5に記載の情報処理装置。
  8.  前記制御部は、前記端末装置の撮像部の撮像を制御する第一のタイマーと、前記制御部の画像表示を制御する第二のタイマーを、前記端末装置の通信部と前記情報処理装置の通信部とを介して一致させる、請求項1に記載の情報処理装置。
  9.  情報処理装置により表示された画像を撮像する撮像部と、
     前記画像の表示位置に関する情報を取得する取得部と、
     前記撮像部で撮像された前記画像及び前記取得部で取得された前記表示位置に関する情報に基づいて自己位置の推定を制御する制御部と、
     を備える端末装置。
  10.  前記端末装置の制御部は、前記自己位置の推定の履歴に基づいて前記制御を行う、請求項9に記載の端末装置。
  11.  情報処理装置と端末装置とを備える情報処理システムであって、
     前記情報処理装置は、
      前記端末装置の推定した自己位置に関する情報に基づいて画像の表示位置を制御する制御部と、
      前記制御部で制御された前記表示位置に前記画像を表示する表示部と、
     を備え、
     前記端末装置は、
      前記情報処理装置により前記表示された前記画像を撮像する撮像部と、
      前記画像の表示位置に関する位置情報を取得する取得部と、
      前記撮像部で撮像された前記画像及び前記取得部で取得された前記位置情報に基づいて自己位置の推定を更新する自己位置推定更新部と、
     を備える
     情報処理システム。
  12.  情報処理装置において実行される情報処理方法であって、
     端末装置の推定した自己位置に関する情報に基づいて画像の表示位置を制御し、
     前記制御された前記表示位置に前記画像を表示する
     ことを含む情報処理方法。
  13.  情報処理装置を、
     端末装置の推定した自己位置に関する情報に基づいて画像の表示位置を制御する制御手段、
     前記制御手段で制御された前記表示位置に前記画像を表示する表示手段、
     として機能させるためのプログラム。
PCT/JP2021/021498 2020-06-18 2021-06-07 情報処理装置、端末装置、情報処理システム、情報処理方法およびプログラム WO2021256310A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-105439 2020-06-18
JP2020105439 2020-06-18

Publications (1)

Publication Number Publication Date
WO2021256310A1 true WO2021256310A1 (ja) 2021-12-23

Family

ID=79267905

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/021498 WO2021256310A1 (ja) 2020-06-18 2021-06-07 情報処理装置、端末装置、情報処理システム、情報処理方法およびプログラム

Country Status (1)

Country Link
WO (1) WO2021256310A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006277085A (ja) * 2005-03-28 2006-10-12 Microsignal Kk 光学式ポインティング制御装置及び該装置を用いたポインティングシステム
JP2013206322A (ja) * 2012-03-29 2013-10-07 Sony Corp 情報処理装置、情報処理システム及び情報処理方法
JP2017215928A (ja) * 2016-05-31 2017-12-07 フォーブ インコーポレーテッド 視線検出システム
JP2019148682A (ja) * 2018-02-27 2019-09-05 セイコーエプソン株式会社 画像表示システム、画像表示装置及び画像表示システムの制御方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006277085A (ja) * 2005-03-28 2006-10-12 Microsignal Kk 光学式ポインティング制御装置及び該装置を用いたポインティングシステム
JP2013206322A (ja) * 2012-03-29 2013-10-07 Sony Corp 情報処理装置、情報処理システム及び情報処理方法
JP2017215928A (ja) * 2016-05-31 2017-12-07 フォーブ インコーポレーテッド 視線検出システム
JP2019148682A (ja) * 2018-02-27 2019-09-05 セイコーエプソン株式会社 画像表示システム、画像表示装置及び画像表示システムの制御方法

Similar Documents

Publication Publication Date Title
CN110310329B (zh) 操作显示设备的方法、信息处理系统及非暂时性存储介质
TWI722280B (zh) 用於多個自由度之控制器追蹤
CN109146965B (zh) 信息处理装置、计算机可读介质和头戴式显示装置
JP4532856B2 (ja) 位置姿勢計測方法及び装置
CN107408314B (zh) 混合现实系统
US9824497B2 (en) Information processing apparatus, information processing system, and information processing method
US11372249B2 (en) Information processing device and information processing method
JP2017503418A (ja) 仮想現実システムの較正
US11443540B2 (en) Information processing apparatus and information processing method
JP2003344018A (ja) 画像処理装置およびその方法並びにプログラム、記憶媒体
US11127156B2 (en) Method of device tracking, terminal device, and storage medium
CN110895676B (zh) 动态对象跟踪
US11960635B2 (en) Virtual object display device and virtual object display method
CN110688002B (zh) 虚拟内容的调整方法、装置、终端设备及存储介质
CN108604010B (zh) 用于校正设备中的漂移的方法和该设备
US20210124174A1 (en) Head mounted display, control method for head mounted display, information processor, display device, and program
US11656242B2 (en) Angular velocity detection device, image display apparatus, angular velocity detection method, and storage medium
WO2021256310A1 (ja) 情報処理装置、端末装置、情報処理システム、情報処理方法およびプログラム
US20140247214A1 (en) Handheld pointer device and tilt angle adjustment method thereof
KR20180060403A (ko) 영상 기반의 드론 제어장치
JP6641525B2 (ja) 光学機器制御装置、光学機器制御方法、及び光学機器制御プログラム
CN111489376A (zh) 跟踪交互设备的方法、装置、终端设备及存储介质
WO2021177132A1 (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム
TWI814624B (zh) 環景影像的地標識別標註系統及其方法
JP7434207B2 (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: 21825450

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: 21825450

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP