WO2016031105A1 - 情報処理装置、情報処理方法、及びプログラム - Google Patents
情報処理装置、情報処理方法、及びプログラム Download PDFInfo
- Publication number
- WO2016031105A1 WO2016031105A1 PCT/JP2015/002755 JP2015002755W WO2016031105A1 WO 2016031105 A1 WO2016031105 A1 WO 2016031105A1 JP 2015002755 W JP2015002755 W JP 2015002755W WO 2016031105 A1 WO2016031105 A1 WO 2016031105A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- unit
- estimation
- information processing
- feature points
- processing apparatus
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B11/00—Measuring arrangements characterised by the use of optical techniques
- G01B11/002—Measuring arrangements characterised by the use of optical techniques for measuring two or more coordinates
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/66—Tracking systems using electromagnetic waves other than radio waves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/23—Recognition of whole body movements, e.g. for sport training
Definitions
- the present technology relates to an information processing apparatus, an information processing method, and a program that perform self-position estimation of a moving object.
- head-mounted displays are expected to be applied to more and more fields such as manufacturing, medical care, games, and daily life.
- an AR Augmented Reality
- VR Virtual Reality
- the self-position estimation technique for estimating the position and posture of the user is used for the AR technique and the VR technique.
- SLAM Multiple Localization and Mapping
- SLAM is a technology that simultaneously performs self-position estimation and creation of an environmental map.
- Patent Documents 1 to 3 disclose techniques for performing self-position estimation using SLAM. According to SLAM, for example, by tracking feature points using an image captured in time series from a moving body, the self position of the moving body can be estimated.
- an object of the present technology is to provide an information processing apparatus, an information processing method, and a program capable of self-position estimation with high robustness.
- an information processing apparatus includes a tracking unit, a region estimation unit, and an estimation processing unit.
- the tracking unit acquires an image captured by an imaging unit provided in a moving body that moves with rotational movement, and the image captured before the movement and the image captured after the movement.
- the feature points included in the image are associated with each other.
- the region estimation unit acquires information related to the movement, and estimates a region where a change in the two-dimensional position of the feature point viewed from the moving body is small before and after the movement based on the information.
- the estimation processing unit performs self-position estimation of the moving body using the feature points associated with the tracking unit and within the region.
- the region estimation unit estimates a region where the change in the two-dimensional position of the feature point viewed from the moving body is small before and after the moving body moves.
- the region estimated by the region estimation unit there is a high possibility that the position of the feature point does not move suddenly even when the orientation of the imaging unit changes suddenly.
- the estimation processing unit can perform self-position estimation with high robustness by using feature points in the region estimated by the region estimation unit.
- the area estimation unit may calculate a rotation axis of the rotational motion and estimate the area using the rotation axis.
- the region estimation unit estimates that the region closer to the rotational axis of the rotational movement of the moving body has a smaller change in the two-dimensional position of the feature point viewed from the moving body before and after the movement of the moving body. To do.
- the region estimation unit can perform region estimation with high accuracy.
- the imaging unit may include a plurality of camera mechanisms having optical axes that are not parallel to each other.
- the region estimation unit may select a camera mechanism having the optical axis with a small angle between the plurality of camera mechanisms and the rotation axis.
- the estimation processing unit may perform self-position estimation of the moving body using the feature points included in the image picked up by the camera mechanism selected by the region estimation unit. In this configuration, an area imaged by a camera mechanism having an optical axis with a small angle formed with the rotation axis of the moving body among a plurality of camera mechanisms is viewed from the moving body before and after the movement of the moving body. It is estimated that the change in the two-dimensional position of the feature point is small.
- the estimation processing unit can perform self-position estimation with high robustness by using feature points included in an image captured by the camera mechanism selected by the region estimation unit.
- the information processing apparatus includes a data generation unit that extracts the feature points included in the image captured by the camera mechanism selected by the region estimation unit among the feature points associated by the tracking unit. Furthermore, you may comprise.
- the estimation processing unit may perform self-location estimation of the moving object using the feature points extracted by the data generation unit. In this configuration, the data generation unit extracts the feature points included in the image captured by the camera mechanism selected by the region estimation unit from the feature points associated by the tracking unit.
- the estimation processing unit can perform self-position estimation with high robustness by using the feature points extracted by the data generation unit.
- the tracking unit may associate the feature points included in the image captured by the camera mechanism selected by the region estimation unit.
- the tracking unit associates feature points included in the image captured by the camera mechanism selected by the region estimation unit.
- the estimation processing unit can perform self-position estimation with high robustness by using the feature points associated by the tracking unit.
- the region estimation unit may estimate the region so that the rotation axis passes through the region. In this configuration, it is estimated that the change in the two-dimensional position of the feature point viewed from the moving body is small before and after the moving body moves in the region through which the rotational axis of the rotational movement of the moving body passes. Thereby, the accuracy of region estimation by the region estimation unit is improved.
- the viewing angle of the imaging unit may be 90 ° or more.
- a wide viewing angle camera such as a wide-angle camera, a fish-eye camera, or a omnidirectional camera
- an area through which the rotation axis of the moving object passes through the image captured by the imaging unit It becomes easy to be included.
- the information processing apparatus may further include a data generation unit that limits a processing region of the image within the region.
- the estimation processing unit may perform self-location estimation of the moving object using the feature points included in the processing region.
- the data generation unit is assumed to have a small change in the two-dimensional position of the feature point viewed from the moving body before and after the movement of the moving body in the processing area of the image captured by the imaging unit. Limited to area.
- the estimation processing unit performs self-position estimation using feature points included in the processing region. Thereby, the estimation processing unit can perform self-position estimation more efficiently than using the feature points included in the entire image captured by the imaging unit.
- the data generation unit may extract the feature points included in the processing region from the feature points associated by the tracking unit.
- the estimation processing unit may perform self-location estimation of the moving object using the feature points extracted by the data generation unit.
- the data generation unit extracts feature points included in the processing region from the feature points associated by the tracking unit.
- the estimation processing unit can efficiently perform self-position estimation by using the feature points extracted by the data generation unit.
- the tracking unit may associate the feature points included in the processing region.
- the tracking unit associates feature points included in the processing region.
- the estimation processing unit can efficiently perform self-position estimation by using the feature points associated by the tracking unit.
- the region estimation unit may enlarge the processing region when the angular velocity of the rotational motion is large.
- the region estimation unit may enlarge the processing region when the movement involves a translational motion.
- the processing region is enlarged when it is predicted that the change in the two-dimensional position of the feature point viewed from the moving body is relatively large before and after the moving body is moved. Thereby, before and after the movement of the moving body, it is possible to suppress a feature point having a small change in a two-dimensional position viewed from the moving body from deviating from the processing region. Thereby, a sufficient number of feature points can be secured for self-position estimation.
- the tracking unit sets, for each of the associated feature points, a tracking score indicating a degree of coincidence of the feature points in the image captured before the movement and the image captured after the movement. May be.
- the estimation processing unit may perform self-position estimation of the moving object using the feature points having a high tracking score.
- the tracking unit sets a tracking score indicating the degree of coincidence of feature points in images captured before and after the movement of the moving object, for each associated feature point. That is, a feature point with a higher degree of matching of feature points has a higher tracking score, and a feature point with a lower degree of matching of feature points has a lower tracking score.
- the estimation processing unit can perform self-position estimation with high accuracy by using feature points having a high tracking score.
- the tracking unit may set the tracking score of the feature point in at least one central region of the image captured before the movement and the image captured after the movement high. Good.
- the feature point in the center area of one image is highly likely to be included in the other image, and is captured before and after the moving body moves. It is estimated that the degree of coincidence in the obtained image is high. For this reason, the tracking score of the feature point in the central region of at least one of the images captured before and after the moving body is increased.
- the estimation processing unit can perform self-position estimation with high accuracy by using feature points having a high tracking score.
- the information may be generated using at least one of a gyro sensor, a geomagnetic sensor, an acceleration sensor, a sound source direction estimation device, and Wi-Fi.
- a gyro sensor a geomagnetic sensor
- an acceleration sensor a sensor that uses the acceleration to calculate the acceleration of the moving object
- Wi-Fi Wireless Fidelity
- the information processing apparatus may further include a monitoring unit that monitors the moving object based on the information.
- the estimation processing unit may perform self-position estimation of the moving body based on the monitoring result by the monitoring unit, independently of the self-position estimation.
- self-position estimation using the result of monitoring by the monitoring unit is performed independently of self-position estimation using feature points included in the image captured by the imaging unit.
- the monitoring unit may estimate a motion model of the moving body.
- the estimation processing unit may perform self-position estimation of the moving body using the motion model estimated by the monitoring unit. In this configuration, by using the moving body motion model estimated by the monitoring unit, the estimation processing unit can perform efficient self-position estimation.
- the information processing apparatus further includes a head-mounted display provided with the imaging unit and a detection unit capable of generating the information, and configured to be attachable to a user's head as the moving body. Good. With this configuration, it is possible to provide a head mounted display device that can perform self-position estimation with high robustness.
- an image is captured by an imaging unit provided in a moving body that moves with rotational motion.
- the feature points included in the image captured before the movement and the image captured after the movement are associated with each other.
- Information about the movement is generated. Based on the information, a region where a change in the two-dimensional position of the feature point viewed from the moving body is small before and after the movement is estimated.
- the self-position estimation of the mobile body is performed using the feature points that are associated with each other and are within the region.
- a program acquires an image captured by an imaging unit provided in a moving body that moves with rotational motion in the information processing apparatus, and the image captured before the movement And a step of associating feature points included in the image picked up after the movement.
- the program acquires information related to the movement to the information processing apparatus, and based on the information, an area in which a change in the two-dimensional position of the feature point viewed from the moving body is small before and after the movement is small. Let the estimation step be performed.
- the program causes the information processing apparatus to perform a step of performing self-position estimation of the moving object using the feature points that are associated with each other and are within the region.
- FIG. 1 is a schematic configuration diagram of an information processing system according to a first embodiment of the present technology. It is a block diagram which shows the structure of each apparatus of the said information processing system. It is a block diagram which shows the structure of the self-position estimation part of the said information processing system. It is a figure which shows an example of a moving body. It is a figure for demonstrating operation
- FIG. 1 is a schematic configuration diagram of an information processing system 100 according to the first embodiment of the present technology.
- the information processing system 100 includes a mobile terminal 30, a head mounted display 70, and a control box 50.
- the information processing system 100 may include the cloud system 10.
- the portable terminal 30 is typically configured as a portable information processing device such as a smartphone.
- the portable terminal 30 may be configured as a tablet device or other PC (Personal Computer).
- the mobile terminal 30 is communicatively connected to the cloud system 10.
- the head mounted display 70 is configured as a mounting portion that can be mounted on the user's head, which is the moving body M.
- the head mounted display 70 has an imaging unit 72, and the imaging unit 72 captures an image around the user wearing the head mounted display 70.
- the control box 50 is configured as a control unit for controlling the head mounted display 70. A user wearing the head mounted display 70 can operate the head mounted display 70 via the control box 50.
- the control box 50 is communicatively connected to the mobile terminal 30.
- the cloud system 10 is a system based on a telecommunication network such as the Internet, for example.
- the cloud system 10 includes a server computer connected to a telecommunication network.
- FIG. 2 is a block diagram illustrating configurations of the mobile terminal 30, the control box 50, the head mounted display 70, and the server computer of the cloud system 10 in the information processing system 100.
- the mobile terminal 30 includes a CPU (Central Processing Unit) 31, a memory 32, a wide area communication unit 33, a local area communication unit 34, a touch panel 35, a GPS (Global Positioning System) reception unit 36, and a battery 39.
- a CPU Central Processing Unit
- memory 32 a main memory
- wide area communication unit 33 a wide area communication unit 33
- local area communication unit 34 a touch panel 35
- GPS Global Positioning System
- the CPU 31 controls each part in the mobile terminal 30 in an integrated manner.
- the memory 32 stores, for example, an OS (Operating System), programs such as various application software, various data, and the like.
- the memory 32 is configured so that it can be appropriately accessed by the CPU 31.
- the wide area communication unit 33 is configured to be able to communicate with the cloud system 10 through a communication system such as 3G (Third Generation) or LTE (Long Term Evolution).
- a communication system such as 3G (Third Generation) or LTE (Long Term Evolution).
- the local area communication unit 34 is configured to be communicable by, for example, a wireless LAN (Local Area Network) communication system such as Wi-Fi, a short-range wireless communication system such as Bluetooth (registered trademark), and infrared rays.
- the local communication unit 34 may be configured to be able to use a plurality of communication systems.
- the touch panel 35 is configured to have both a function as a display device that displays various information and a function as an operation unit that receives an operation by a user.
- the GPS receiving unit 36 is configured to be able to receive position information from GPS satellites.
- the portable terminal 30 may have various sensors 37 including a motion sensor and a camera.
- the head mounted display 70 includes a display unit 71, an imaging unit 72, and a detection unit 73. As shown in FIG. 1, the head mounted display 70 includes left and right rim portions 75, a bridge portion 74 disposed between the rim portions 75, and a temple portion 76 extending rearward from each rim portion 75. Includes the configuration of eyeglass frames. Thereby, the head mounted display 70 can be mounted on the user's head.
- the display unit 71 is configured as a small projector provided inside each of the left and right temple units 76.
- the head mounted display 70 is configured such that image light having the same or parallax emitted from the display unit 71 is guided by the light guide plate 77 and emitted from a predetermined region of the light guide plate 77 toward the user's eyeball. . Thereby, an image is provided to the user.
- the configuration of the display unit 71 in the head mounted display 70 is not limited to the above, and can be determined as appropriate.
- the display unit 71 may be provided only on one of the left and right sides.
- the head mounted display 70 is not limited to the projector type, and may include a display unit 71 that directly irradiates the eyeball with image light.
- the imaging unit 72 includes a first camera 72 a provided forward on the bridge unit 74 and a second camera 72 b provided rightward (outward) on the right temple unit 76.
- the first camera 72a and second camera 72b is the optical axis C b of the optical axis C a and the second camera 72b of the first camera 72a is provided so as not parallel.
- the optical axis C b of the optical axis C a and the second camera 72b of the first camera 72a may be orthogonal.
- the cameras 72a and 72b are typically configured by an image sensor such as a CMOS (Complementary Metal Oxide Semiconductor) sensor, a CCD (Charge Coupled Device) sensor, or the like.
- CMOS Complementary Metal Oxide Semiconductor
- CCD Charge Coupled Device
- the imaging part 72 should just be comprised by the several camera mechanism which has an optical axis which is not mutually parallel, and is not limited to said structure.
- the imaging unit 72 may have three or more camera mechanisms.
- the plurality of camera mechanisms may be configured as independent monocular cameras, and the plurality of camera mechanisms may be configured as a single stereo camera or a lens array as a whole.
- the camera of the imaging unit 72 only needs to be able to capture an image around the user, and can be provided at any position in the rim unit 75, the bridge unit 74, and the temple unit 76.
- the imaging unit 72 may have a camera provided for each temple unit 76.
- the imaging unit 72 may have a camera that can be worn by the user separately from the head mounted display 70.
- the imaging unit 72 may have a camera that can be mounted upward on the user's head.
- the detection unit 73 is configured to be able to detect information related to the movement of the user wearing the head mounted display 70. More specifically, the detection unit 73 is configured to be able to detect at least a rotational motion component of the user's movement. For example, the detection unit 73 is configured to be able to provide information that can separate the rotational motion component and the translational motion component of the user's movement.
- the detection unit 73 is typically configured by a sensor capable of detecting the orientation of the user, such as a gyro sensor, a geomagnetic sensor, or an acceleration sensor. Further, the detection unit 73 may be configured to be able to detect the orientation of the user by Wi-Fi. Furthermore, the detection unit 73 may be configured by a sound source direction estimation device that detects the direction of the user by transmitting and receiving an acoustic signal. The detection unit 73 may be a combination of a plurality of configurations.
- the control box 50 includes a CPU 51, a memory 52, a local communication unit 54, an input button 53, and a battery 59.
- the control box 50 may be configured as a part of the head mounted display 70 or may be configured independent of the head mounted display 70.
- the CPU 51 comprehensively controls each part in the control box 50 and each part in the head mounted display 70.
- the memory 52 stores, for example, an OS, programs such as various application software, various data, and the like.
- the memory 52 is configured so that it can be appropriately accessed by the CPU 51.
- the local communication unit 54 is configured to be able to communicate with the local communication unit 34 of the mobile terminal 30 through a communication system common to the local communication unit 34 of the mobile terminal 30.
- the input button 53 is arranged in front of the control box 50 and is configured as an operation unit for the control box 50 and the head mounted display 70.
- the input button 53 includes, for example, a power button, an ON / OFF button of the display unit 71, and the like.
- the server computer of the cloud system 10 includes a CPU 11, a memory 12, and a wide area communication unit 13.
- the CPU 11 comprehensively controls each part in the server computer.
- the memory 12 stores, for example, an OS, programs such as various application software, various data, and the like.
- the memory 12 is configured to be appropriately accessible by the CPU 11.
- the wide area communication unit 13 is configured to be able to communicate with the wide area communication unit 33 of the mobile terminal 30 through a communication system common to the wide area communication unit 33 of the mobile terminal 30.
- the information processing system 100 includes a self-position estimation unit 1.
- the self-position estimation unit 1 is configured as an information processing apparatus for estimating the position and orientation of the user wearing the head mounted display 70. More specifically, the self-position estimation unit 1 estimates the position and posture of the user at an arbitrary time (t) from the position and posture of the user at time (t ⁇ 1) immediately before time (t).
- the position of the user estimated by the self-position estimation unit 1 can be expressed by coordinates in a three-dimensional space, for example.
- the user's posture estimated by the self-position estimation unit 1 can be expressed by, for example, the direction in which the user is facing.
- the self-position estimation unit 1 may be configured to be able to estimate a specific posture of the user. For example, whether the user's posture is a standing posture, a sitting posture, or a sleeping posture. Can also be estimated.
- the self-position estimation unit 1 may be provided in any of the server computer, the mobile terminal 30, the control box 50, and the head mounted display 70 of the cloud system 10, as shown in FIG.
- the head-mounted display 70 is provided with a configuration necessary for controlling the self-position estimating unit 1, such as a CPU and a memory that stores a program.
- the self-position estimation unit 1 is controlled by a CPU stored in each device and a program stored in the memory of each device.
- Each device may include a control unit other than the CPU for the control of the self-position estimation unit 1.
- Examples of the control unit other than the CPU include a PLD (Programmable Logic Device) such as PGA (Field Programmable Gate Array).
- FIG. 3 is a block diagram showing a configuration of the self-position estimation unit 1.
- the self-position estimation unit 1 includes a tracking unit 2, a region estimation unit 3, a data generation unit 4, and an estimation processing unit 5.
- the tracking unit 2 acquires images captured by the imaging unit 72 in time series, and performs tracking of feature points using each image. That is, the tracking unit 2 associates feature points between the image captured at time (t ⁇ 1) and the image captured at time (t). For example, the tracking unit 2 can output the movement amount (dx, dy) of the feature point in the two images.
- the method of tracking feature points by the tracking unit 2 is not limited to a specific method, and a general method can be adopted.
- the tracking unit 2 can track feature points by using template matching based on a luminance pattern in an image.
- the tracking unit 2 can also track feature points by using matching based on feature amounts described in a higher level in an image.
- FIG. 4 is a diagram illustrating an example of the moving object M for explaining the operation of the tracking unit 2.
- the moving body M shown in FIG. 4 shows a user wearing the head mounted display 70 shown in FIG. 1 in a simplified manner. Accordingly, the first camera 72a is disposed on the front surface of the moving body M, and the second camera 72b is disposed on the right side surface of the moving body M.
- FIG. 5 is a diagram for explaining an example of the operation of the tracking unit 2.
- FIG. 5A shows the state at time (t ⁇ 1)
- FIG. 5B shows the state at time (t) immediately thereafter.
- the moving body M moves with a rotational motion. Therefore, the direction of the moving body M changes between the time (t ⁇ 1) shown in FIG. 5A and the time (t) shown in FIG. 5B, and the optical axis C a of the first camera 72a. and orientation of the optical axis C b of the second camera 72b is changing.
- the first camera 72a captures an image a 1 at time (t-1) shown in FIG. 5 (A), captures images a 2 at time (t) shown in FIG. 5 (B).
- Tracking unit 2 the first camera 72a obtains the image a 1 and image a 2 captured, detects the feature point P 1 from the image a 1, detects a feature point P 2 from the image a 2. Then, the tracking unit 2, to associate feature points P 12 are included in common in the image a 1 and image a 2.
- Tracking unit 2 in common to the image a 1 and image a 2 for each feature point P 12 that contains, to set the tracking score.
- Tracking score is a numeric indication of the matching degree of each feature point P 12 in the image a 1 and image a 2. That is, as the tracking score higher feature point P 12, and 0.00 correspond reliably in the image a 1 and image a 2, reliable. Conversely, tracking score feature point higher P 12 low, not take sufficiently correspond in the image a 1 and image a 2, unreliable.
- the tracking unit 2 when the feature quantity of surrounding feature points P 12 in the image a 1 and image a 2 corresponds well is set high tracking score of the feature point P 12. Conversely, the tracking unit 2, the image a 1 and image a 2 corresponding feature quantity around the feature point P 12 if insufficient, setting a low tracking score of the feature point P 12.
- Tracking unit 2 for all the feature points P 12, a label that identifies the camera capturing the feature point P 12, the coordinate of the feature point P 12 in each of the images a 1 and image a 2, tracking score of the characteristic points P 12 Output data is generated with information such as. Then, the tracking unit 2 outputs the generated output data to the data generation unit 4.
- the tracking unit 2 similarly performs tracking of feature points for the image captured by the second camera 72b.
- the tracking unit 2 can perform tracking of feature points in other images even when it is difficult to track feature points in a certain image among a plurality of images. Therefore, in the tracking unit 2 according to the present embodiment, the tracking result of the feature points can be obtained more reliably.
- the region estimation unit 3 acquires information related to the movement of the moving object M generated by the detection unit 73, and performs region estimation based on the information.
- the region estimation unit 3 is a region in which the two-dimensional position of the feature point viewed from the moving body M is less likely to change before and after the moving body M, in the surrounding region surrounding the moving body M. That is, the region where the direction of the feature point viewed from the moving body M is difficult to change is estimated.
- the feature points included in the image captured before the moving body M moves are images captured after the moving body M moves. Is also likely to be included. Therefore, in the image obtained by imaging the region estimated by the region estimation unit 3, it is possible to associate more feature points before and after the moving body M moves.
- FIGS. 6 and 7 are diagrams for explaining an example of the operation of the region estimation unit 3. 6 (A) and 7 (A) are perspective views, and FIG. 6 (B) and FIG. 7 (B) are plan views.
- FIG. 6 shows the state at time (t ⁇ 1)
- FIG. 7 shows the state at time (t) immediately thereafter.
- the moving body M moves with a rotational motion. Therefore, the direction of the moving body M changes between time (t ⁇ 1) shown in FIG. 6 and time (t) shown in FIG. 7, and the optical axis C a of the first camera 72a and the second camera 72b direction of the optical axis C b is changed.
- the first camera 72a is an image a 1 captured at time (t-1) shown in FIG. 6, captures the image a 2 at time (t) shown in FIG.
- the second camera 72b is an image b 1 captured at time (t-1) shown in FIG. 6, it captures the image b 2 at time (t) shown in FIG.
- the region estimation unit 3 performs processing that places more emphasis on the rotational motion of the moving body M than the translational motion of the moving body M.
- the region estimation unit 3 selects a camera in which the region to be imaged is less likely to change due to the rotational movement of the moving body M from among a plurality of cameras constituting the imaging unit 72. That is, among the plurality of cameras, a camera capable of associating more feature points in the images captured before and after the moving body M is selected is selected.
- the region estimation unit 3 calculates the rotation axis R of the rotational motion of the moving body M (spinning motion around the moving body M) based on the information generated by the detection unit 73. Then, the region estimation unit 3 calculates an angle formed by the rotation axis R and the optical axes C a and C b of the cameras 72a and 72b. That is, the region estimation unit 3, the rotation axis R and the angle theta a formed between the optical axis C a of the first camera 72a is a rotation axis R and the angle theta b formed by the optical axis C b of the second camera 72b calculate. In calculating the angle ⁇ a and the angle ⁇ b , the rotation axis R and the optical axes C a and C b may be appropriately translated.
- the angle theta a large first camera 72a, a time (t) images a 2 taken in has largely moved from the image a 1 captured at time (t-1) .
- the feature point P 1 included in the image a 1 captured at the time (t ⁇ 1) is greatly deviated from the image a 2 captured at the time (t).
- the image a 1 and image a 2 captured by the first camera 72a angle theta a large, there is a high possibility that the characteristic point P 12 included in common is not present.
- the feature point P 12 that is extracted from the image a 1 and image a 2 by the tracking unit 2 is likely is obtained by the tracking errors, unreliable.
- the second camera 72b angle theta b is small, the time (t) image b 2 which are captured at the time (t-1) too from image b 1 taken Not moving. Therefore, the feature point P 1 included in the image b 1 captured at time (t ⁇ 1) is also included in the image b 2 captured at time (t).
- the image b 1 and the image b 2 captured by the second camera 72b angle theta b is small, it is likely that there are feature points P 12 contained in common.
- the tracking unit 2 image b 1 and the feature point P 12 that is extracted from the image b 2 by the high, reliable possibility is obtained by correct tracking.
- the area estimation unit 3 selects a camera having an optical axis having the smallest angle with the rotation axis among the plurality of cameras constituting the imaging unit 72. That is, the region estimation unit 3 estimates that the region captured by the selected camera is a region in which the two-dimensional position of the feature point viewed from the moving body M is difficult to change before and after the movement of the moving body M. To do.
- the region estimation unit 3 selects a second camera 72b.
- the region estimation unit 3 generates output data that identifies the selected camera. Then, the region estimation unit 3 outputs the generated output data to the data generation unit 4.
- the region estimation unit 3 may calculate the rotation axis of the moving body M from the posture of the moving body M at time (t ⁇ 1) and time (t) predicted by the Kalman filter.
- the region estimation unit 3 does not necessarily have to calculate the rotation axis of the moving object M. That is, the region estimation unit 3 estimates a region in which the two-dimensional position of the feature point viewed from the moving body M is unlikely to change before and after the movement of the moving body M without using the rotation axis of the moving body M. May be. For example, the region estimation unit 3 may directly calculate a region where the direction of the feature point viewed from the moving body M is unlikely to change from the movement trajectory including the rotational motion and the translational motion of the moving body M. Good.
- Data generator 4 The data generation unit 4 acquires the output data of the tracking unit 2 and the output data of the region estimation unit 3. Then, the data generation unit 4 extracts the feature points included in the image captured by the camera selected by the region estimation unit 3 from the feature points associated by the tracking unit 2. Since the image captured by the camera selected by the region estimation unit 3 is likely to include a feature point in common, the data generation unit 4 can extract a feature point with higher reliability.
- the data generation unit 4, of the feature point P 12 that is associated by the tracking unit 2 extracts the second camera 72b feature point P 12, labeled selected by region estimating unit 3 To do.
- the data generation unit 4 re-extracts feature points whose tracking score satisfies a predetermined threshold from the feature points extracted as described above.
- the predetermined threshold can be arbitrarily set. As described above, since the feature point with the higher tracking score has higher reliability, the data generation unit 4 can narrow down the feature point with higher reliability.
- the data generation unit 4 attaches information such as a label that identifies the camera that has captured the feature point, the coordinates of the feature point in the images before and after the movement of the moving object M, and the tracking score of the feature point to the extracted feature point. Generate output data. Then, the tracking unit 2 outputs the generated data to the estimation processing unit 5.
- Estimatimation processor 5 The estimation processing unit 5 performs self-position estimation of the moving object M using the output data of the data generation unit 4. That is, the estimation processing unit 5 uses the feature points extracted by the data generation unit 4 to determine the position and orientation of the moving object M at time (t) from the position and orientation of the moving object M at time (t ⁇ 1). Is estimated.
- the estimation processing unit 5 can perform the self-position estimation of the moving object M from the feature points extracted by the data generation unit 4 using a Kalman filter algorithm.
- the feature points extracted by the data generation unit 4 are highly reliable in the image captured at time (t ⁇ 1) and the image captured at time (t). .
- the use of highly reliable feature points enables the estimation processing unit 5 to perform self-position estimation of the moving object M with high accuracy.
- the estimation processing unit 5 does not use the feature points included in the image captured by the camera not selected by the region estimation unit 3 for the self-position estimation of the moving object M. That is, since the self-position estimation unit 1 according to the present embodiment uses only highly reliable feature points without using low-reliability feature points, the self-position of the mobile object M can be efficiently performed by the estimation processing unit 5. Estimation is possible.
- FIG. 8 is a flowchart showing a flow of processing by the self-position estimation unit 1 according to the present embodiment. The information processing method by the self-position estimation unit 1 will be described with reference to FIG.
- Steps S1-01 to S1-04 Steps S1-01 to S1-04 are executed by the tracking unit 2.
- the tracking unit 2 acquires the image captured by the imaging unit 72 (step S1-01), associates the feature points included in the acquired image (step S1-02), and tracks the associated feature points.
- a score is set (step S1-03), output data is generated (step S1-04), and the generated data is output to the data generation unit 4.
- Steps S1-05 to S1-08 are executed by the region estimation unit 3.
- the region estimation unit 3 acquires information on the movement of the moving object M generated by the detection unit 73 (step S1-05), and calculates the rotation axis of the rotational motion of the moving object M from the acquired information (step S1- 06), an angle formed by the calculated rotation axis and the optical axis of each camera is calculated (step S1-07), a camera is selected based on the calculated angle (step S1-08), and the selected camera is specified. Data is output to the data generation unit 4.
- Steps S1-09 to S1-14 are executed by the data generation unit 4.
- the data generation unit 4 extracts the feature points included in the image captured by the camera input from the region estimation unit 3 from the feature points input from the tracking unit 2 (step S1-09).
- the data generation unit 4 acquires one extracted feature point (step S1-10), and determines whether the tracking score of the feature point satisfies a threshold (step S1-11).
- step S1-10 If the tracking score of the feature point acquired by the data generation unit 4 does not satisfy the threshold value, the process returns to step S1-10.
- the feature point is added to the output data (step S1-12), and it is determined whether the number of feature points in the output data is sufficient. (Step S1-13). If the number of feature points in the output data is not sufficient, the process returns to step S1-10. When the number of feature points in the output data is sufficient, the generated data is output to the estimation processing unit 5.
- Step S1-15 is executed by the estimation processing unit 5.
- the estimation processing unit 5 performs self-position estimation of the moving object M using the output data of the data generation unit 4.
- FIG. 9 is a flowchart showing a flow of processing by the self-position estimation unit 1 according to the modification of the present embodiment.
- the information processing method according to the present modification is shown in FIG. 8 in that steps S1-05 to S1-08 by the region estimation unit 3 are executed before steps S1-01 to S1-04 by the tracking unit 2. It is different from the information processing method.
- the information processing method according to this modification will be described with reference to FIG.
- the region estimation unit 3 selects a camera and outputs data specifying the selected camera to the tracking unit 2.
- the tracking unit 2 acquires an image captured by the camera selected by the region estimation unit 3 (step S1-01), associates feature points included in the acquired image (step S1-02), and A tracking score is set to the attached feature point (step S1-03), output data is generated (step S104), and the generated data is output to the data generation unit 4.
- the data input from the tracking unit 2 to the data generation unit 4 includes only the feature points included in the image picked up by the camera selected by the region estimation unit 3, the information processing according to this modification example is included. In the method, it is not necessary to execute the feature point extraction (step S1-09) according to FIG.
- Steps S1-10 to S1-15 in FIG. 9 are the same as steps S1-10 to S1-15 in FIG. 9
- the tracking unit 2 does not use the image captured by the camera that is not selected by the region estimation unit 3, but only the image captured by the camera selected by the region estimation unit 3. Since tracking is performed using this, efficient tracking is possible.
- FIG. 10 is a diagram illustrating the head mounted display 70 in the information processing system 100 according to the second embodiment of the present technology.
- the configuration of the imaging unit 72 and the information processing method by the self-position estimation unit 1 are different from those of the information processing system 100 according to the first embodiment.
- configurations corresponding to the information processing system 100 according to the first embodiment are denoted by the same reference numerals as those in the first embodiment, and description thereof is omitted as appropriate. To do.
- the imaging unit 72 is configured as a camera having a viewing angle of 180 °, and is provided facing the bridge unit 74 of the head mounted display 70.
- the imaging unit 72 has an optical axis D and can capture an image d centered on the optical axis D.
- the imaging unit 72 is preferably a wide viewing angle camera.
- the viewing angle of the imaging unit 72 is particularly preferably 90 ° or more.
- the camera which comprises the imaging part 72 is not limited to a specific kind, For example, any of a wide-angle camera, a fish-eye camera, an all-around camera, etc. may be sufficient.
- FIG. 11 is a diagram for explaining the operations of the tracking unit 2 and the region estimation unit 3 of the information processing system 100 according to the present embodiment.
- the moving body M is simplified, and only the imaging unit 72 is shown.
- FIG. 11 (A) shows the state at time (t ⁇ 1)
- FIG. 11 (B) shows the state at time (t) immediately after that.
- the moving body M moves with a rotational motion. Accordingly, the direction of the moving body M changes at the time (t ⁇ 1) shown in FIG. 11A and the time (t) shown in FIG. 11B, and the direction of the optical axis D of the imaging unit 72 is changed. Has changed.
- Imaging unit 72 captures an image d 1 at time (t-1) shown in FIG. 11 (A), for capturing an image d 2 at time (t) shown in FIG. 11 (B).
- Tracking unit 2 obtains the image d 1 and the image d 2 captured by the imaging unit 72 detects the feature point P 1 from the image d 1, detects a feature point P 2 from the image d 2. Then, the tracking unit 2, to associate feature points P 12 are included in common in the image d 1 and the image d 2.
- the tracking unit 2 uses an image captured by the imaging unit 72 having a wide viewing angle for tracking. Since the imaging unit 72 with a wide viewing angle can capture a wider range of feature points, it is possible to prevent the tracking of the feature points by the tracking unit 2 from being disabled.
- the region estimation unit 3 calculates the rotational axis R of the rotational motion (spinning motion around the mobile body M) of the mobile body M based on the information related to the movement of the mobile body M generated by the detection unit 73. Then, the region estimation unit 3 selects a region through which the rotation axis R passes. That is, the region estimation unit 3 estimates a region through which the rotation axis R passes as a region where the change in the two-dimensional position of the feature point viewed from the moving body M is small before and after the movement of the moving body M.
- the data generation unit 4 cuts out the region estimated by the region estimation unit 3 from the image d 1 captured at time (t ⁇ 1) and the image d 2 captured at time (t), and the data generation unit 4 Generates a trimmed image E as an image to be processed. That is, the region estimation unit 3 limits the processing region of the image d 1 and the image d 2 by the data generation unit 4 to the region estimated by the region estimation unit 3.
- the size of the trimmed image E (the size of the region estimated by the region estimation unit 3) can be determined as appropriate.
- the region estimation unit 3 increases the trimming image E when it is predicted that the change in the two-dimensional position of the feature point viewed from the moving body M before and after the moving body M is moved is relatively large. Can do.
- the region estimation unit 3 enlarges the trimmed image E when the angular velocity of the rotational motion of the moving body M is large. Thereby, a sufficiently large number of feature points included in the trimmed image E can be secured.
- the region estimation unit 3 reduces the trimming image E when the angular velocity of the rotational motion of the moving body M is small. Thereby, the efficiency of the treatment in the data generation unit 4 and the estimation processing unit 5 can be improved.
- the area estimation unit 3 enlarges the trimmed image E when the movement of the moving body M involves translational motion. Thereby, a sufficiently large number of feature points included in the trimmed image E can be secured.
- the shape of the trimmed image E (the shape of the region estimated by the region estimation unit 3) can be arbitrarily determined.
- the trimmed image E may have a shape other than the circular shape shown in FIG. 11, for example, a polygonal shape such as a rectangular shape, or an elliptical shape.
- FIG. 12 is a flowchart showing the flow of processing by the self-position estimation unit 1 according to this embodiment. The information processing method by the self-position estimation unit 1 will be described with reference to FIG.
- Steps S2-01 to S2-04 Steps S2-01 to S2-04 are executed by the tracking unit 2.
- the tracking unit 2 acquires the image captured by the imaging unit 72 (step S2-01), associates the feature points included in the acquired image (step S2-02), and tracks the associated feature points.
- a score is set (step S2-03), output data is generated (step S2-04), and the generated data is output to the data generation unit 4.
- Steps S2-05 to S2-08 are executed by the region estimation unit 3.
- the region estimation unit 3 acquires information regarding the movement of the moving object M generated by the detection unit 73 (step S2-05), and calculates the rotational axis of the rotational motion of the moving object M from the acquired information (step S2- 06), an area passing through the calculated rotation axis is selected (step S2-07), and data specifying the selected area is output to the data generation unit 4.
- Steps S2-08 to S2-15) Steps S2-08 to S2-14 are executed by the data generation unit 4, and step S2-15 is executed by the estimation processing unit 5.
- the data generation unit 4 cuts out the image picked up by the image pickup unit 72 by the region selected by the region estimation unit 3 and generates a trimmed image (S2-08).
- the data generation unit 4 extracts feature points included in the trimmed image from the feature points associated by the tracking unit 2 (step S2-09).
- Steps S2-10 to S2-15 are the same as steps S1-10 to S1-15 in FIG.
- FIG. 13 is a flowchart showing the flow of processing by the self-position estimation unit 1 according to a modification of the present embodiment.
- the information processing method according to the present modification is shown in FIG. 12 in that steps S2-05 to S2-07 by the region estimation unit 3 are executed before steps S2-01 to S2-04 by the tracking unit 2. It is different from the information processing method.
- the information processing method according to this modification will be described with reference to FIG.
- steps S2-05 to S2-07 data for specifying the region selected by the region estimation unit 3 is output to the tracking unit 2.
- the tracking unit 2 acquires the image captured by the imaging unit 72 (step S2-01), cuts out the region selected by the region estimation unit 3 from the acquired image, and generates a trimmed image (step S2-08). ).
- the tracking unit 2 functions as a data generation unit that generates a trimmed image.
- the tracking unit 2 associates feature points included in the trimmed image (step S2-02), sets a tracking score for the associated feature points (step S2-03), and generates output data (step S2). -04), and outputs the generated data to the data generator 4.
- the information processing method according to the present modification example uses FIG. It is not necessary to execute the feature point extraction (step S2-09).
- Steps S2-09 to S2-15 in FIG. 13 are the same as steps S2-09 to S2-15 in FIG. 13
- the tracking unit 2 performs tracking using only the trimmed image without using the region other than the trimmed image in the image captured by the image capturing unit 72, and thus efficient tracking. Is possible.
- FIG. 14 is a block diagram illustrating a configuration of the self-position estimation unit 1 in the information processing system 100 according to the third embodiment of the present technology.
- the configuration of the self-position estimation unit 1 and the information processing method by the self-position estimation unit 1 are different from those of the information processing system 100 according to the first embodiment.
- configurations corresponding to the information processing system 100 according to the first embodiment are denoted by the same reference numerals as those in the first embodiment, and description thereof is omitted as appropriate. To do.
- the self-position estimation unit 1 includes a monitoring unit 6.
- the estimation processing unit 5 performs monitoring independently of the first self-position estimation of the moving object M based on the output data of the data generation unit 4 similar to the first embodiment.
- the second self-position estimation of the moving body M is performed based on the output data of the unit 6. That is, the estimation processing unit 5 performs self-position estimation of the moving object M by two methods.
- the monitoring unit 6 monitors time-series changes in the position and posture of the moving body M by referring to the information generated by the detection unit 73 in a time continuous manner.
- the monitoring unit 6 generates output data according to the monitoring result of the moving object M, and outputs the generated data to the estimation processing unit 5.
- the estimation processing unit 5 estimates the position and orientation of the moving body M at time (t) based on the monitoring result of the moving body M by the monitoring unit 6.
- the output data of the monitoring unit 6 is obtained by referring to the information generated by the detection unit 73 continuously in time, the output data is not easily affected by temporally discontinuous data due to erroneous detection of the detection unit 73. Therefore, in the self-position estimation unit 1 according to the present embodiment, the second self-position estimation of the moving object M based on the output data of the monitoring unit 6 is performed as the first self-position estimation of the moving object M based on the output data of the data generation unit 4. By using them in a complementary manner, it is possible to estimate the position of the moving body M with high accuracy.
- the generation of output data by the monitoring unit 6 and the output data of the monitoring unit 6 are used by introducing a motion model that models the movement of the moving object M.
- the second self-position estimation by the estimation processing unit 5 can be performed efficiently.
- the motion model is a model of an operation that the mobile body M can easily perform, and a motion model corresponding to the mobile body M is set in advance.
- the monitoring unit 6 determines whether the moving body M is a constant velocity motion, a deceleration motion, an acceleration motion, or a speed change, and calculates a speed change ratio. Then, it is estimated which of the preset motion models the motion of the moving body M is, and output data is generated according to the estimation result, and the generated data is output to the estimation processing unit 5.
- the estimation processing unit 5 estimates the position and orientation of the moving body M at time (t) based on the motion model estimated by the monitoring unit 6.
- an exercise model that models an action that is easy for a human to perform is set.
- motion models include a static motion model, a walking motion model, and a running motion model. Note that the type and number of exercise models to be set can be arbitrarily determined.
- FIG. 15 is a flowchart showing an example of the flow of processing by the monitoring unit 6.
- the monitoring unit 6 determines whether the moving body M is in a stationary state (step S3-01). For example, when the movement of the moving body M is not detected, it is determined that the moving body M is in a stationary state.
- the monitoring unit 6 determines that the motion model of the moving body M is a stationary motion model when the moving body M is in a stationary state.
- the monitoring unit 6 determines whether the moving body M is in a walking state when the moving body M is not in a stationary state (step S3-02). For example, when a constant velocity motion within a predetermined first range (for example, a range of 3 to 6 km / h) of the moving body M is detected, it is determined that the moving body M is in a walking state. When the moving body M is in a walking state, the monitoring unit 6 determines the motion model of the moving body M as a walking motion model.
- a predetermined first range for example, a range of 3 to 6 km / h
- the monitoring unit 6 determines whether the moving body M is in a running state when the moving body M is not in a walking state (step S3-03). For example, when a constant velocity motion within a predetermined second range (for example, a range of 7 to 10 km / h) of the moving body M is detected, it is determined that the moving body M is a traveling model. When the moving body M is in the traveling state, the monitoring unit 6 determines the motion model of the moving body M as the traveling motion model.
- a predetermined second range for example, a range of 7 to 10 km / h
- the monitoring unit 6 determines the motion model of the moving body M as the default motion model when the moving body M is not in the running state.
- the monitoring unit 6 determines that the motion model of the moving body M is a static motion model
- the monitoring unit 6 generates output data for specifying the static motion model, and outputs the generated data to the estimation processing unit 5.
- the estimation processing unit 5 estimates from the output data of the monitoring unit 6 that the position of the moving object M at time (t) has not changed from the position of the moving object M at time (t ⁇ 1).
- the monitoring unit 6 determines the motion model of the moving body M as the walking motion model
- the monitoring unit 6 generates output data for specifying the walking motion model, and outputs the generated data to the estimation processing unit 5.
- the estimation processing unit 5 estimates the position of the moving object M at time (t) from the position of the moving object M at time (t ⁇ 1) based on the output data of the monitoring unit 6.
- the monitoring unit 6 determines that the motion model of the moving body M is the traveling motion model
- the monitoring unit 6 generates output data for specifying the traveling motion model, and outputs the generated data to the estimation processing unit 5.
- the estimation processing unit 5 estimates the position of the moving object M at time (t) from the position of the moving object M at time (t ⁇ 1) based on the output data of the monitoring unit 6.
- the monitoring unit 6 determines the motion model of the moving body M as the default motion model
- the monitoring unit 6 generates output data without specifying the motion model. That is, the monitoring unit 6 outputs the result of monitoring the time-series change in the position and posture of the moving body M to the estimation processing unit 5 as it is.
- the estimation processing unit 5 estimates the position and orientation of the moving body M at time (t) from the time-series changes in the position and orientation of the moving body M monitored by the monitoring unit 6.
- the detection unit 73 can detect the control content by the control system. It may be configured.
- the monitoring unit 6 can monitor time-series changes in the position and orientation of the moving body M by referring to the control contents of the control system in a time-continuous manner.
- the detection unit 73 can detect an operation amount of the steering device or the accelerator pedal. Configured. And the monitoring part 6 monitors the time-sequential change of the position and attitude
- the detection unit 73 is configured to be able to detect the control signal. And the monitoring part 6 monitors the time-sequential change of the position and attitude
- the moving body M is a user wearing a head mounted display
- the present technology is applicable to any moving body M.
- the moving body M to which the present technology can be applied include humans, vehicles, robots, animals, and the like.
- the moving body M by providing the moving body M with the imaging unit and the detection unit, it is possible to perform self-position estimation of the moving body M according to the present technology.
- this technique can also take the following structures.
- An image captured by an imaging unit provided in a moving body that moves with rotational motion is acquired, and included in the image captured before the movement and the image captured after the movement.
- a tracking unit that associates feature points
- An area estimation unit that obtains information related to the movement and estimates an area where a change in the two-dimensional position of the feature point viewed from the moving body is small before and after the movement based on the information;
- An information processing apparatus comprising: an estimation processing unit configured to perform self-location estimation of the moving object using the feature points that are associated with the tracking unit and are within the region.
- the area estimation unit calculates a rotation axis of the rotational motion, and estimates the area using the rotation axis.
- the imaging unit includes a plurality of camera mechanisms having optical axes that are not parallel to each other,
- the region estimation unit selects a camera mechanism having the optical axis having a small angle with the rotation axis from the plurality of camera mechanisms,
- the information processing apparatus wherein the estimation processing unit performs self-position estimation of the moving body using the feature points included in the image picked up by the camera mechanism selected by the region estimation unit.
- a data generation unit for extracting the feature points included in the image captured by the camera mechanism selected by the region estimation unit among the feature points associated by the tracking unit;
- the information processing apparatus, wherein the estimation processing unit performs self-position estimation of the moving object using the feature points extracted by the data generation unit.
- the information processing apparatus associates feature points included in the image captured by the camera mechanism selected by the region estimation unit.
- the information processing apparatus according to (2) above, The area estimation unit estimates the area so that the rotation axis passes through the area.
- the information processing apparatus according to (6) above An information processing apparatus in which a viewing angle of the imaging unit is 90 ° or more.
- the information processing apparatus according to (6) or (7) above, A data generator for limiting the image processing area to the area; The information processing apparatus, wherein the estimation processing unit performs self-position estimation of the moving object using the feature points included in the processing region.
- the data generation unit extracts the feature points included in the processing region from the feature points associated by the tracking unit, The information processing apparatus, wherein the estimation processing unit performs self-position estimation of the moving object using the feature points extracted by the data generation unit.
- the information processing apparatus according to (8) above The information processing apparatus, wherein the tracking unit associates feature points included in the processing region.
- the area estimation unit increases the processing area when the angular velocity of the rotational motion is large.
- the information processing apparatus according to any one of (8) to (11) above, The area estimation unit increases the processing area when the movement involves translational motion.
- the tracking unit sets, for each of the associated feature points, a tracking score indicating a degree of coincidence of the feature points in the image captured before the movement and the image captured after the movement. And The information processing apparatus, wherein the estimation processing unit performs self-position estimation of the moving object using the feature points having a high tracking score.
- the tracking unit sets a high tracking score of the feature point in at least one central region of the image captured before the movement and the image captured after the movement. apparatus.
- the information processing apparatus is generated using at least one of a gyro sensor, a geomagnetic sensor, an acceleration sensor, a sound source direction estimation device, and Wi-Fi.
- a monitoring unit for monitoring the moving object according to the information The information processing apparatus, wherein the estimation processing unit performs self-position estimation of the moving body based on a result of the monitoring performed by the monitoring unit independently of the self-position estimation.
- the monitoring unit estimates a motion model of the moving body, The information processing apparatus, wherein the estimation processing unit performs self-position estimation of the moving body using the motion model estimated by the monitoring unit.
- An information processing apparatus further comprising: a head-mounted display provided with the imaging unit and a detection unit capable of generating the information and configured to be mounted on a user's head as the moving body.
- An image is captured by an imaging unit provided in a moving body that moves with rotational movement, Corresponding feature points included in the image captured before the movement and the image captured after the movement, Generate information about the above movement, Based on the information, an area where the change in the two-dimensional position of the feature point viewed from the moving body is small before and after the movement is estimated, An information processing method for performing self-position estimation of the moving object using the feature points that are associated with each other and are within the region.
- An image captured by an imaging unit provided in a moving body that moves with rotational motion is acquired, and included in the image captured before the movement and the image captured after the movement.
- Associating feature points to be associated Obtaining information related to the movement, and estimating a region where a change in the two-dimensional position of the feature point viewed from the moving body is small before and after the movement;
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Image Analysis (AREA)
- Studio Devices (AREA)
Abstract
【課題】ロバスト性の高い自己位置推定が可能な情報処理装置を提供する。 【解決手段】情報処理装置は、トラッキング部と、領域推定部と、推定処理部とを具備する。上記トラッキング部は、回転運動を伴った移動を行う移動体に設けられた撮像部によって撮像された画像を取得し、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、に含まれる特徴点の対応付けを行う。上記領域推定部は、上記移動に関する情報を取得し、上記情報に基づいて、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域を推定する。上記推定処理部は、上記トラッキング部によって対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定を行う。
Description
本技術は、移動体の自己位置推定を行う情報処理装置、情報処理方法、及びプログラムに関する。
近年、ヘッドマウントディスプレイは、例えば、製造、医療、ゲーム、日常生活など、ますます多くの分野への応用が期待されてきている。ヘッドマウントディスプレイを利用した技術として、例えば、現実世界に仮想情報を重畳表示するAR(Augmented Reality(拡張現実))技術や、ユーザの動きに合わせて表示情報を変化させるVR(Virtual Reality(仮想現実))技術などが知られている。
上記のAR技術やVR技術には、ユーザの位置や姿勢を推定する自己位置推定技術が用いられる。自己位置推定技術として、例えば、SLAM(Simultaneous Localization and Mapping)が知られている。SLAMは、自己位置推定と環境地図の作成とを同時に行う技術である。SLAMにより自己位置推定を行う技術が特許文献1~3に開示されている。SLAMによれば、例えば、移動体から時系列で撮像された画像を用いて特徴点のトラッキングを行うことにより、移動体の自己位置を推定することができる。
上記のような自己位置推定では、ユーザが、例えば、振り向き動作や首振り動作などの、予測困難で、かつ、カメラの向きが急激に変化する動作を行う場合に、特徴点のトラッキングが困難になる。この場合、自己位置推定の精度が低下してしまう。したがって、カメラの向きが急激に変化する場合にも、特徴点のトラッキングを良好に行うことができる、ロバスト性の高い自己位置推定技術が求められる。
以上のような事情に鑑み、本技術の目的は、ロバスト性の高い自己位置推定が可能な情報処理装置、情報処理方法、及びプログラムを提供することにある。
上記目的を達成するため、本技術の一形態に係る情報処理装置は、トラッキング部と、領域推定部と、推定処理部とを具備する。
上記トラッキング部は、回転運動を伴った移動を行う移動体に設けられた撮像部によって撮像された画像を取得し、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、に含まれる特徴点の対応付けを行う。
上記領域推定部は、上記移動に関する情報を取得し、上記情報に基づいて、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域を推定する。
上記推定処理部は、上記トラッキング部によって対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定を行う。
上記トラッキング部は、回転運動を伴った移動を行う移動体に設けられた撮像部によって撮像された画像を取得し、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、に含まれる特徴点の対応付けを行う。
上記領域推定部は、上記移動に関する情報を取得し、上記情報に基づいて、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域を推定する。
上記推定処理部は、上記トラッキング部によって対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定を行う。
この構成では、領域推定部が、移動体の移動の前後で、移動体から見た特徴点の二次元的な位置の変化が小さい領域を推定する。領域推定部によって推定された領域では、撮像部の向きが急激に変化する場合にも、特徴点の位置が急激に移動しない可能性が高い。推定処理部は、領域推定部によって推定された領域内にある特徴点を用いることにより、ロバスト性の高い自己位置推定を行うことが可能となる。
上記領域推定部は、上記回転運動の回転軸を算出し、上記回転軸を用いて上記領域を推定してもよい。
この構成では、領域推定部は、移動体の回転運動の回転軸に近い領域ほど、移動体の移動の前後で、移動体から見た特徴点の二次元的な位置の変化が小さいものと推定する。領域推定部は、回転軸を用いることにより、高精度で領域の推定を行うことが可能となる。
この構成では、領域推定部は、移動体の回転運動の回転軸に近い領域ほど、移動体の移動の前後で、移動体から見た特徴点の二次元的な位置の変化が小さいものと推定する。領域推定部は、回転軸を用いることにより、高精度で領域の推定を行うことが可能となる。
上記撮像部は、相互に平行でない光軸を有する複数のカメラ機構を含んでもよい。
上記領域推定部は、上記複数のカメラ機構のうち、上記回転軸との間に成す角度が小さい上記光軸を有するカメラ機構を選択してもよい。
上記推定処理部は、上記領域推定部によって選択された上記カメラ機構によって撮像された上記画像に含まれる上記特徴点を用いて、上記移動体の自己位置推定を行ってもよい。
この構成では、複数のカメラ機構のうち、移動体の回転軸との間に成す角度が小さい光軸を有するカメラ機構によって撮像される領域が、移動体の移動の前後で、移動体から見た特徴点の二次元的な位置の変化が小さい領域と推定される。推定処理部は、領域推定部によって選択されたカメラ機構によって撮像された画像に含まれる特徴点を用いることにより、ロバスト性の高い自己位置推定を行うことが可能となる。
上記領域推定部は、上記複数のカメラ機構のうち、上記回転軸との間に成す角度が小さい上記光軸を有するカメラ機構を選択してもよい。
上記推定処理部は、上記領域推定部によって選択された上記カメラ機構によって撮像された上記画像に含まれる上記特徴点を用いて、上記移動体の自己位置推定を行ってもよい。
この構成では、複数のカメラ機構のうち、移動体の回転軸との間に成す角度が小さい光軸を有するカメラ機構によって撮像される領域が、移動体の移動の前後で、移動体から見た特徴点の二次元的な位置の変化が小さい領域と推定される。推定処理部は、領域推定部によって選択されたカメラ機構によって撮像された画像に含まれる特徴点を用いることにより、ロバスト性の高い自己位置推定を行うことが可能となる。
上記情報処理装置は、上記トラッキング部によって対応付けられた上記特徴点のうち、上記領域推定部によって選択された上記カメラ機構によって撮像された上記画像に含まれる上記特徴点を抽出するデータ生成部を更に具備してもよい。
上記推定処理部は、上記データ生成部によって抽出された上記特徴点を用いて、上記移動体の自己位置推定を行ってもよい。
この構成では、データ生成部が、トラッキング部によって対応付けられた特徴点から、領域推定部によって選択されたカメラ機構によって撮像された画像に含まれる特徴点を抽出する。推定処理部は、データ生成部によって抽出された特徴点を用いることにより、ロバスト性の高い自己位置推定を行うことが可能となる。
上記推定処理部は、上記データ生成部によって抽出された上記特徴点を用いて、上記移動体の自己位置推定を行ってもよい。
この構成では、データ生成部が、トラッキング部によって対応付けられた特徴点から、領域推定部によって選択されたカメラ機構によって撮像された画像に含まれる特徴点を抽出する。推定処理部は、データ生成部によって抽出された特徴点を用いることにより、ロバスト性の高い自己位置推定を行うことが可能となる。
上記トラッキング部は、上記領域推定部によって選択された上記カメラ機構によって撮像された上記画像に含まれる上記特徴点の対応付けを行ってもよい。
この構成では、トラッキング部が、領域推定部によって選択されたカメラ機構によって撮像された画像に含まれる特徴点の対応付けを行う。推定処理部は、トラッキング部によって対応付けられた特徴点を用いることにより、ロバスト性の高い自己位置推定を行うことが可能となる。
この構成では、トラッキング部が、領域推定部によって選択されたカメラ機構によって撮像された画像に含まれる特徴点の対応付けを行う。推定処理部は、トラッキング部によって対応付けられた特徴点を用いることにより、ロバスト性の高い自己位置推定を行うことが可能となる。
上記領域推定部は、上記回転軸が上記領域を通るように、上記領域を推定してもよい。
この構成では、移動体の回転運動の回転軸が通る領域を、移動体の移動の前後で、移動体から見た特徴点の二次元的な位置の変化が小さいものと推定する。これにより、領域推定部による領域の推定の精度が向上する。
この構成では、移動体の回転運動の回転軸が通る領域を、移動体の移動の前後で、移動体から見た特徴点の二次元的な位置の変化が小さいものと推定する。これにより、領域推定部による領域の推定の精度が向上する。
上記撮像部の視野角が90°以上であってもよい。
この構成では、撮像部として広視野角のカメラ(広角カメラ、魚眼カメラ、全天周カメラなど)を用いることにより、撮像部によってよって撮像される画像に、移動体の回転軸が通る領域が含まれやすくなる。
この構成では、撮像部として広視野角のカメラ(広角カメラ、魚眼カメラ、全天周カメラなど)を用いることにより、撮像部によってよって撮像される画像に、移動体の回転軸が通る領域が含まれやすくなる。
上記情報処理装置は、上記画像の処理領域を上記領域内に限定するデータ生成部を更に具備してもよい。
上記推定処理部は、上記処理領域に含まれる上記特徴点を用いて、上記移動体の自己位置推定を行ってもよい。
この構成では、データ生成部が、撮像部によって撮像された画像の処理領域を、移動体の移動の前後で、移動体から見た特徴点の二次元的な位置の変化が小さいと推測される領域内に限定する。推定処理部は、処理領域に含まれる特徴点を用いて自己位置推定を行う。これにより、推定処理部は、撮像部によって撮像された画像全体に含まれる特徴点を用いるよりも、効率的に自己位置推定を行うことができる。
上記推定処理部は、上記処理領域に含まれる上記特徴点を用いて、上記移動体の自己位置推定を行ってもよい。
この構成では、データ生成部が、撮像部によって撮像された画像の処理領域を、移動体の移動の前後で、移動体から見た特徴点の二次元的な位置の変化が小さいと推測される領域内に限定する。推定処理部は、処理領域に含まれる特徴点を用いて自己位置推定を行う。これにより、推定処理部は、撮像部によって撮像された画像全体に含まれる特徴点を用いるよりも、効率的に自己位置推定を行うことができる。
上記データ生成部は、上記トラッキング部によって対応付けられた上記特徴点のうち、上記処理領域に含まれる上記特徴点を抽出てもよい。
上記推定処理部は、上記データ生成部によって抽出された上記特徴点を用いて、上記移動体の自己位置推定を行ってもよい。
この構成では、データ生成部が、トラッキング部によって対応付けられた特徴点から、処理領域に含まれる特徴点を抽出する。推定処理部は、データ生成部によって抽出された特徴点を用いることにより、効率的に自己位置推定を行うことができる。
上記推定処理部は、上記データ生成部によって抽出された上記特徴点を用いて、上記移動体の自己位置推定を行ってもよい。
この構成では、データ生成部が、トラッキング部によって対応付けられた特徴点から、処理領域に含まれる特徴点を抽出する。推定処理部は、データ生成部によって抽出された特徴点を用いることにより、効率的に自己位置推定を行うことができる。
上記トラッキング部は、上記処理領域に含まれる上記特徴点の対応付けを行ってもよい。
この構成では、トラッキング部が、処理領域に含まれる特徴点の対応付けを行う。推定処理部は、トラッキング部によって対応付けられた特徴点を用いることにより、効率的に自己位置推定を行うことができる。
この構成では、トラッキング部が、処理領域に含まれる特徴点の対応付けを行う。推定処理部は、トラッキング部によって対応付けられた特徴点を用いることにより、効率的に自己位置推定を行うことができる。
上記領域推定部は、上記回転運動の角速度が大きい場合に、上記処理領域を大きくしてもよい。
上記領域推定部は、上記移動が並進運動を伴う場合に、上記処理領域を大きくしてもよい。
これらの構成では、移動体の移動前後で、移動体から見た特徴点の二次元的な位置の変化が比較的大きいと予想される場合に、処理領域を大きくする。これにより、移動体の移動の前後で、移動体から見た二次元的な位置の変化が小さい特徴点が処理領域から外れることを抑制することができる。これにより、自己位置推定のために十分な数の特徴点を確保することができる。
上記領域推定部は、上記移動が並進運動を伴う場合に、上記処理領域を大きくしてもよい。
これらの構成では、移動体の移動前後で、移動体から見た特徴点の二次元的な位置の変化が比較的大きいと予想される場合に、処理領域を大きくする。これにより、移動体の移動の前後で、移動体から見た二次元的な位置の変化が小さい特徴点が処理領域から外れることを抑制することができる。これにより、自己位置推定のために十分な数の特徴点を確保することができる。
上記トラッキング部は、対応付けた上記特徴点ごとに、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、における上記特徴点の一致度合いを示すトラッキングスコアを設定してもよい。
上記推定処理部は、上記トラッキングスコアが高い上記特徴点を用いて、上記移動体の自己位置推定を行ってもよい。
この構成では、トラッキング部が、対応付けた特徴点ごとに、移動体の移動前後に撮像された画像における特徴点の一致度合いを示すトラッキングスコアを設定する。つまり、特徴点の一致度合いが高い特徴点ほどトラッキングスコアが高く、特徴点の一致度合いが低い特徴点ほどトラッキングスコアが低い。推定処理部は、トラッキングスコアが高い特徴点を用いることにより、高精度な自己位置推定が可能となる。
上記推定処理部は、上記トラッキングスコアが高い上記特徴点を用いて、上記移動体の自己位置推定を行ってもよい。
この構成では、トラッキング部が、対応付けた特徴点ごとに、移動体の移動前後に撮像された画像における特徴点の一致度合いを示すトラッキングスコアを設定する。つまり、特徴点の一致度合いが高い特徴点ほどトラッキングスコアが高く、特徴点の一致度合いが低い特徴点ほどトラッキングスコアが低い。推定処理部は、トラッキングスコアが高い特徴点を用いることにより、高精度な自己位置推定が可能となる。
上記トラッキング部は、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、のうち少なくとも一方の中央領域にある上記特徴点の上記トラッキングスコアを高く設定してもよい。
この構成では、移動体の移動前後に撮像された画像のうち、一方の画像の中央領域にある特徴点が、他方の画像にも含まれている可能性が高く、移動体の移動前後に撮像された画像における一致度合いが高いものと推定される。このため、移動体の移動前後に撮像された画像のうち少なくとも一方の中央領域にある特徴点のトラッキングスコアを高くする。推定処理部は、トラッキングスコアが高い特徴点を用いることにより、高精度な自己位置推定が可能となる。
この構成では、移動体の移動前後に撮像された画像のうち、一方の画像の中央領域にある特徴点が、他方の画像にも含まれている可能性が高く、移動体の移動前後に撮像された画像における一致度合いが高いものと推定される。このため、移動体の移動前後に撮像された画像のうち少なくとも一方の中央領域にある特徴点のトラッキングスコアを高くする。推定処理部は、トラッキングスコアが高い特徴点を用いることにより、高精度な自己位置推定が可能となる。
上記情報は、ジャイロセンサ、地磁気センサ、加速度センサ、音源方向推定装置、及びWi-Fiのうちの少なくとも1つを用いて生成されてもよい。
この構成では、移動体の移動に関する情報を得るための具体的手段が提供される。
この構成では、移動体の移動に関する情報を得るための具体的手段が提供される。
上記情報処理装置は、上記情報により上記移動体のモニタリングを行うモニタリング部を更に具備してもよい。
上記推定処理部は、上記自己位置推定とは独立して、上記モニタリング部による上記モニタリングの結果に基づいて、上記移動体の自己位置推定を行ってもよい。
この構成では、撮像部によって撮像された画像に含まれる特徴点を用いた自己位置推定とは独立して、モニタリング部によるモニタリングの結果を用いた自己位置推定を行う。このように2通りの方法で自己位置推定を行うことにより、自己位置推定の精度の向上を図ることができる。更に、2通りの方法のうち、一方による自己位置推定が困難である場合にも、他方による自己位置推定が可能であるため、より確実に自己位置推定の結果が得られる。
上記推定処理部は、上記自己位置推定とは独立して、上記モニタリング部による上記モニタリングの結果に基づいて、上記移動体の自己位置推定を行ってもよい。
この構成では、撮像部によって撮像された画像に含まれる特徴点を用いた自己位置推定とは独立して、モニタリング部によるモニタリングの結果を用いた自己位置推定を行う。このように2通りの方法で自己位置推定を行うことにより、自己位置推定の精度の向上を図ることができる。更に、2通りの方法のうち、一方による自己位置推定が困難である場合にも、他方による自己位置推定が可能であるため、より確実に自己位置推定の結果が得られる。
上記モニタリング部は、上記移動体の運動モデルを推定してもよい。
上記推定処理部は、上記モニタリング部によって推定された上記運動モデルを用いて、上記移動体の自己位置推定を行ってもよい。
この構成では、モニタリング部によって推定された移動体の運動モデルを用いることにより、推定処理部による効率的な自己位置推定が可能となる。
上記推定処理部は、上記モニタリング部によって推定された上記運動モデルを用いて、上記移動体の自己位置推定を行ってもよい。
この構成では、モニタリング部によって推定された移動体の運動モデルを用いることにより、推定処理部による効率的な自己位置推定が可能となる。
上記情報処理装置は、上記撮像部と、上記情報を生成可能な検出部と、が設けられ、上記移動体としてのユーザの頭部に装着可能に構成されるヘッドマウントディスプレイを更に具備してもよい。
この構成により、ロバスト性の高い自己位置推定が可能なヘッドマウントディスプレイ装置を提供することができる。
この構成により、ロバスト性の高い自己位置推定が可能なヘッドマウントディスプレイ装置を提供することができる。
本技術の一形態に係る情報処理方法では、回転運動を伴った移動を行う移動体に設けられた撮像部によって画像が撮像される。
上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、に含まれる特徴点の対応付けが行われる。
上記移動に関する情報が生成される。
上記情報に基づいて、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域が推定される。
対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定が行われる。
上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、に含まれる特徴点の対応付けが行われる。
上記移動に関する情報が生成される。
上記情報に基づいて、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域が推定される。
対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定が行われる。
本技術の一形態に係るプログラムは、情報処理装置に、回転運動を伴った移動を行う移動体に設けられた撮像部によって撮像された画像を取得し、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、に含まれる特徴点の対応付けを行うステップを行わせる。
上記プログラムは、情報処理装置に、上記移動に関する情報を取得し、上記情報に基づいて、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域を推定するステップを行わせる。
上記プログラムは、情報処理装置に、対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定を行うステップを行わせる。
上記プログラムは、情報処理装置に、上記移動に関する情報を取得し、上記情報に基づいて、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域を推定するステップを行わせる。
上記プログラムは、情報処理装置に、対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定を行うステップを行わせる。
以上のように、本技術によれば、ロバスト性の高い自己位置推定が可能な情報処理装置、情報処理方法、及びプログラムを提供することができる。
以下、本技術に係る実施形態を、図面を参照しながら説明する。
図面には、適宜相互に直交するX軸、Y軸、及びZ軸が示されている。
図面には、適宜相互に直交するX軸、Y軸、及びZ軸が示されている。
<第1の実施形態>
[情報処理システム100の全体構成]
図1は、本技術の第1の実施形態に係る情報処理システム100の概略構成図である。
[情報処理システム100の全体構成]
図1は、本技術の第1の実施形態に係る情報処理システム100の概略構成図である。
情報処理システム100は、携帯端末30と、ヘッドマウントディスプレイ70と、コントロールボックス50とを具備する。情報処理システム100には、クラウドシステム10が含まれていてもよい。
携帯端末30は、典型的にはスマートフォンなどの携帯型情報処理装置として構成される。携帯端末30は、タブレット機器、その他PC(Personal Computer)として構成されてもよい。携帯端末30は、クラウドシステム10に通信接続されている。
ヘッドマウントディスプレイ70は、移動体Mであるユーザの頭部に装着可能な装着部として構成される。ヘッドマウントディスプレイ70は撮像部72を有し、撮像部72はヘッドマウントディスプレイ70を装着したユーザの周囲の画像を撮像する。
コントロールボックス50は、ヘッドマウントディスプレイ70を制御するための制御部として構成される。ヘッドマウントディスプレイ70を装着したユーザは、コントロールボックス50を介して、ヘッドマウントディスプレイ70を操作することができる。コントロールボックス50は、携帯端末30に通信接続されている。
クラウドシステム10は、例えば、インターネット等の電気通信回線網をベースとしたシステムである。クラウドシステム10には、電気通信回線網に接続されたサーバコンピュータなどが含まれる。
[情報処理システム100の各機器の構成]
図2は、情報処理システム100の、携帯端末30、コントロールボックス50、ヘッドマウントディスプレイ70、及びクラウドシステム10のサーバコンピュータの構成を示すブロック図である。
図2は、情報処理システム100の、携帯端末30、コントロールボックス50、ヘッドマウントディスプレイ70、及びクラウドシステム10のサーバコンピュータの構成を示すブロック図である。
(携帯端末30)
携帯端末30は、CPU(Central Processing Unit)31と、メモリ32と、広域通信部33と、局域通信部34と、タッチパネル35と、GPS(Global Positioning System)受信部36と、バッテリー39とを有する。
携帯端末30は、CPU(Central Processing Unit)31と、メモリ32と、広域通信部33と、局域通信部34と、タッチパネル35と、GPS(Global Positioning System)受信部36と、バッテリー39とを有する。
CPU31は、携帯端末30内の各部を統括的に制御する。メモリ32には、例えば、OS(Operating System)や、各種アプリケーションソフトウェア等のプログラムや、各種データなどが格納されている。メモリ32は、CPU31によって適宜アクセスされることが可能なように構成されている。
広域通信部33は、例えば、3G(Third Generation)やLTE(Long Term Evolution)などの通信システムにより、クラウドシステム10との通信が可能なように構成されている。
局域通信部34は、例えば、Wi-Fi等の無線LAN(Local Area Network)通信システムや、Bluetooth(登録商標)や、赤外線等の短距離無線通信システムなどにより通信可能に構成されている。局域通信部34は、複数の通信システムを利用可能に構成されていてもよい。
タッチパネル35は、各種情報を表示する表示装置としての機能と、ユーザによる操作を受ける操作部としての機能とを兼ね備えるように構成されている。GPS受信部36は、GPS衛星からの位置情報を受信可能に構成されている。携帯端末30は、その他、モーションセンサやカメラ等を含む各種センサ37を有していてもよい。
(ヘッドマウントディスプレイ70)
ヘッドマウントディスプレイ70は、表示部71と、撮像部72と、検出部73とを有する。図1に示すように、ヘッドマウントディスプレイ70は、左右のリム部75と、各リム部75の間に配置されたブリッジ部74と、各リム部75から後方に延びるテンプル部76と、からなる眼鏡フレームの構成を含む。これにより、ヘッドマウントディスプレイ70は、ユーザの頭部に装着可能となっている。
ヘッドマウントディスプレイ70は、表示部71と、撮像部72と、検出部73とを有する。図1に示すように、ヘッドマウントディスプレイ70は、左右のリム部75と、各リム部75の間に配置されたブリッジ部74と、各リム部75から後方に延びるテンプル部76と、からなる眼鏡フレームの構成を含む。これにより、ヘッドマウントディスプレイ70は、ユーザの頭部に装着可能となっている。
表示部71は、左右のテンプル部76の内側にそれぞれ設けられる小型のプロジェクタとして構成される。ヘッドマウントディスプレイ70は、表示部71から出射された同一又は視差を持つ画像光が導光板77でガイドされ、導光板77の所定領域からユーザの眼球に向けて出射されるように構成されている。これにより、ユーザに対して画像が提供される。
なお、ヘッドマウントディスプレイ70における表示部71の構成は、上記に限定されず、適宜決定可能である。例えば、ヘッドマウントディスプレイ70では、左右のうち一方にのみ表示部71が設けられていてもよい。また、ヘッドマウントディスプレイ70は、プロジェクタタイプのものに限られず、眼球に直接画像光を照射するタイプの表示部71を備えていてもよい。
撮像部72は、図1に示すように、ブリッジ部74に前向きに設けられた第1カメラ72aと、右側のテンプル部76に右向き(外向き)に設けられた第2カメラ72bとを有する。第1カメラ72a及び第2カメラ72bは、第1カメラ72aの光軸Caと第2カメラ72bの光軸Cbとが平行とならないように設けられる。例えば、第1カメラ72aの光軸Caと第2カメラ72bの光軸Cbとが直交していてもよい。
カメラ72a,72bは、典型的には、CMOS(Complementary Metal Oxide Semiconductor)センサ、CCD(Charge Coupled Device)センサ等の撮像素子によって構成される。
なお、撮像部72は、相互に平行でない光軸を有する複数のカメラ機構により構成されていればよく、上記の構成に限定されない。例えば、撮像部72は3つ以上のカメラ機構を有していてもよい。また、複数のカメラ機構がそれぞれ独立の単眼カメラとして構成していてもよく、複数のカメラ機構が全体として単一のステレオカメラやレンズアレイとして構成されていてもよい。
また、撮像部72のカメラは、ユーザの周囲の画像を撮像可能であればよく、リム部75、ブリッジ部74、及びテンプル部76における任意の位置に設けることができる。例えば、撮像部72は、各テンプル部76にそれぞれ1つずつ設けられたカメラを有していてもよい。
更に、撮像部72は、ヘッドマウントディスプレイ70とは別にユーザに装着可能なカメラを有していてもよい。例えば、撮像部72は、ユーザの頭頂部に上向きに装着可能なカメラを有していてもよい。
検出部73は、ヘッドマウントディスプレイ70を装着したユーザの移動に関する情報を検出可能に構成されている。より詳細には、検出部73は、ユーザの移動のうち、少なくとも回転運動成分を検出可能に構成されている。例えば、検出部73は、ユーザの移動の回転運動成分と並進運動成分とを分離可能な情報を提供可能に構成されている。
検出部73は、典型的には、ジャイロセンサ、地磁気センサ、加速度センサなどの、ユーザの向きを検出可能なセンサにより構成される。また、検出部73は、Wi-Fiによりユーザの向きを検出可能に構成されていてもよい。更に、検出部73は、音響信号の送受よりユーザの向きを検出する音源方向推定装置により構成されていてもよい。なお、検出部73は、複数の構成が組み合わされていてもよい。
(コントロールボックス50)
コントロールボックス50は、CPU51と、メモリ52と、局域通信部54と、入力ボタン53と、バッテリー59とを有する。コントロールボックス50は、ヘッドマウントディスプレイ70の一部として構成されていても、ヘッドマウントディスプレイ70とは独立した構成であってもよい。
コントロールボックス50は、CPU51と、メモリ52と、局域通信部54と、入力ボタン53と、バッテリー59とを有する。コントロールボックス50は、ヘッドマウントディスプレイ70の一部として構成されていても、ヘッドマウントディスプレイ70とは独立した構成であってもよい。
CPU51は、コントロールボックス50内の各部、及びヘッドマウントディスプレイ70内の各部を統括的に制御する。メモリ52には、例えば、OSや、各種アプリケーションソフトウェア等のプログラムや、各種データなどが格納されている。メモリ52は、CPU51によって適宜アクセスされることが可能なように構成されている。
局域通信部54は、携帯端末30の局域通信部34と共通の通信システムにより、携帯端末30の局域通信部34と通信可能に構成されている。
入力ボタン53は、コントロールボックス50の正面に配置され、コントロールボックス50及びヘッドマウントディスプレイ70の操作部として構成される。入力ボタン53には、例えば、電源ボタンや、表示部71のON/OFFボタンなどが含まれる。
(クラウドシステム10)
クラウドシステム10のサーバコンピュータは、CPU11と、メモリ12と、広域通信部13とを有する。
クラウドシステム10のサーバコンピュータは、CPU11と、メモリ12と、広域通信部13とを有する。
CPU11は、サーバコンピュータ内の各部を統括的に制御する。メモリ12には、例えば、OSや、各種アプリケーションソフトウェア等のプログラムや、各種データなどが格納されている。メモリ12は、CPU11によって適宜アクセスされることが可能なように構成されている。
広域通信部13は、携帯端末30の広域通信部33と共通の通信システムにより、携帯端末30の広域通信部33と通信可能に構成されている。
[自己位置推定部1の構成]
本実施形態に係る情報処理システム100は自己位置推定部1を具備する。自己位置推定部1は、ヘッドマウントディスプレイ70を装着したユーザの位置及び姿勢を推定するための情報処理装置として構成される。より詳細には、自己位置推定部1は、任意の時刻(t)におけるユーザの位置及び姿勢を、時刻(t)の直前の時刻(t-1)におけるユーザの位置及び姿勢から推定する。
本実施形態に係る情報処理システム100は自己位置推定部1を具備する。自己位置推定部1は、ヘッドマウントディスプレイ70を装着したユーザの位置及び姿勢を推定するための情報処理装置として構成される。より詳細には、自己位置推定部1は、任意の時刻(t)におけるユーザの位置及び姿勢を、時刻(t)の直前の時刻(t-1)におけるユーザの位置及び姿勢から推定する。
ここで、自己位置推定部1が推定するユーザの位置は、例えば、3次元空間における座標によって表現可能である。また、自己位置推定部1が推定するユーザの姿勢は、例えば、ユーザの向いている方向などにより表現可能である。更に、自己位置推定部1は、ユーザの具体的な姿勢を推定可能に構成されていてもよく、例えば、ユーザの姿勢が、立ち姿勢であるか、座り姿勢であるか、寝姿勢であるかの推定を行うこともできる。
自己位置推定部1は、図2に示すように、クラウドシステム10のサーバコンピュータ、携帯端末30、コントロールボックス50、及びヘッドマウントディスプレイ70のいずれに設けられていてもよい。自己位置推定部1がヘッドマウントディスプレイ70に設けられる場合、ヘッドマウントディスプレイ70には、例えば、CPUや、プログラムを格納するメモリなど、自己位置推定部1の制御に必要な構成が備えられる。
自己位置推定部1は、各機器のCPU、及び各機器のメモリに格納されたプログラムによって制御される。なお、各機器は、自己位置推定部1の制御のために、CPU以外の制御部を備えていてもよい。CPU以外の制御部としては、例えば、PGA(Field Programmable Gate Array)等のPLD(Programmable Logic Device)が挙げられる。
図3は、自己位置推定部1の構成を示すブロック図である。自己位置推定部1は、トラッキング部2と、領域推定部3と、データ生成部4と、推定処理部5とを具備する。
(トラッキング部2)
トラッキング部2は、撮像部72によって撮像された画像を時系列で取得し、各画像を用いて特徴点のトラッキングを行う。つまり、トラッキング部2は、時刻(t-1)に撮像された画像と、時刻(t)に撮像された画像と、の間で特徴点の対応付けを行う。トラッキング部2は、例えば、2つの画像における特徴点の移動量(dx,dy)を出力することができる。
トラッキング部2は、撮像部72によって撮像された画像を時系列で取得し、各画像を用いて特徴点のトラッキングを行う。つまり、トラッキング部2は、時刻(t-1)に撮像された画像と、時刻(t)に撮像された画像と、の間で特徴点の対応付けを行う。トラッキング部2は、例えば、2つの画像における特徴点の移動量(dx,dy)を出力することができる。
トラッキング部2による特徴点のトラッキングの方法としては、特定の方法に限定されず、一般的な方法を採用可能である。例えば、トラッキング部2は、画像における輝度のパターンによるテンプレートマッチングを利用して、特徴点のトラッキングを行うことができる。また、トラッキング部2は、画像における、より高度に記述された特徴量によるマッチングを利用して、特徴点のトラッキングを行うこともできる。
図4は、トラッキング部2の動作を説明するための移動体Mの一例を示す図である。図4に示す移動体Mは、図1に示すヘッドマウントディスプレイ70を装着したユーザを簡略化して示すものである。したがって、移動体Mの正面には第1カメラ72aが配置され、移動体Mの右側面には第2カメラ72bが配置されている。
図5はトラッキング部2の動作の一例を説明するための図である。図5(A)は時刻(t-1)の状態を示し、図5(B)はその直後の時刻(t)の状態を示している。時刻(t-1)と時刻(t)との間に移動体Mは回転運動を伴った移動を行っている。したがって、図5(A)に示す時刻(t-1)と図5(B)に示す時刻(t)とでは、移動体Mの向きが変化しており、第1カメラ72aの光軸Ca及び第2カメラ72bの光軸Cbの向きが変化している。
第1カメラ72aは、図5(A)に示す時刻(t-1)に画像a1を撮像し、図5(B)に示す時刻(t)に画像a2を撮像する。トラッキング部2は、第1カメラ72aが撮像した画像a1及び画像a2を取得し、画像a1から特徴点P1を検出し、画像a2から特徴点P2を検出する。そして、トラッキング部2は、画像a1及び画像a2に共通して含まれる特徴点P12の対応付けを行う。
トラッキング部2は、画像a1及び画像a2に共通して含まれる各特徴点P12ごとに、トラッキングスコアを設定する。トラッキングスコアは、画像a1及び画像a2における各特徴点P12の一致度合いを数値化したものである。つまり、トラッキングスコアが高い特徴点P12ほど、画像a1及び画像a2において高い信頼性で対応が取れており、信頼性が高い。反対に、トラッキングスコアが低い特徴点P12ほど、画像a1及び画像a2において十分に対応が取れておらず、信頼性が低い。
例えば、トラッキング部2は、画像a1及び画像a2において特徴点P12の周囲の特徴量が良好に対応している場合には、当該特徴点P12のトラッキングスコアを高く設定する。反対に、トラッキング部2は、画像a1及び画像a2において特徴点P12の周囲における特徴量の対応が不十分である場合には、当該特徴点P12のトラッキングスコアを低く設定する。
また、画像a1及び画像a2のうち少なくとも一方の中央領域にある特徴点P12は、移動体Mの移動前後における画像a1及び画像a2のいずれにも含まれている可能性が高い。このため、トラッキング部2は、画像a1及び画像a2のうち少なくとも一方の中央領域にある特徴点P12のトラッキングスコアを高く設定することができる。
トラッキング部2は、すべての特徴点P12について、特徴点P12を撮像したカメラを特定するラベル、画像a1及び画像a2のそれぞれにおける特徴点P12の座標、特徴点P12のトラッキングスコア、などの情報を付して出力データを生成する。そして、トラッキング部2は、生成した出力データを、データ生成部4に出力する。
なお、以上では、トラッキング部2における、第1カメラ72aによって撮像された画像を用いて特徴点のトラッキングを行う動作について説明した。しかし、トラッキング部2は、第2カメラ72bによって撮像された画像についても、同様に特徴点のトラッキングを行う。
上記のように、本実施形態に係るトラッキング部2による特徴点のトラッキングには、移動体Mから異なる方向を撮像した複数の画像が用いられる。このため、トラッキング部2は、複数の画像のうち、ある画像において特徴点のトラッキングが困難である場合にも、他の画像において特徴点のトラッキングを行うことができる。したがって、本実施形態に係るトラッキング部2では、特徴点のトラッキング結果がより確実に得られる。
(領域推定部3)
領域推定部3は、検出部73によって生成された移動体Mの移動に関する情報を取得し、当該情報に基づいて領域の推定を行う。具体的には、領域推定部3は、移動体Mを取り囲む周囲の領域のうち、移動体Mの移動の前後で、移動体Mから見た特徴点の二次元的な位置が変化しにくい領域、つまり移動体Mから見た特徴点の向きが変化しにくい領域の推定を行う。
領域推定部3は、検出部73によって生成された移動体Mの移動に関する情報を取得し、当該情報に基づいて領域の推定を行う。具体的には、領域推定部3は、移動体Mを取り囲む周囲の領域のうち、移動体Mの移動の前後で、移動体Mから見た特徴点の二次元的な位置が変化しにくい領域、つまり移動体Mから見た特徴点の向きが変化しにくい領域の推定を行う。
領域推定部3によって推定された領域が撮像部72によって撮像されている場合、移動体Mの移動前に撮像された画像に含まれている特徴点は、移動体Mの移動後に撮像された画像にも含まれている可能性が高い。したがって、領域推定部3によって推定された領域を撮像した画像では、移動体Mの移動の前後で、より多くの特徴点の対応付けを行うことが可能である。
図6,7は領域推定部3の動作の一例を説明するための図である。図6(A)及び図7(A)は斜視図であり、図6(B)及び図7(B)は平面図である。
図6は時刻(t-1)の状態を示し、図7はその直後の時刻(t)の状態を示している。時刻(t-1)と時刻(t)との間に移動体Mは回転運動を伴った移動を行っている。したがって、図6に示す時刻(t-1)と図7に示す時刻(t)とでは、移動体Mの向きが変化しており、第1カメラ72aの光軸Ca及び第2カメラ72bの光軸Cbの向きが変化している。
第1カメラ72aは、図6に示す時刻(t-1)に画像a1を撮像し、図7に示す時刻(t)に画像a2を撮像する。また、第2カメラ72bは、図6に示す時刻(t-1)に画像b1を撮像し、図7に示す時刻(t)に画像b2を撮像する。
時刻(t-1)と時刻(t)との間における移動体Mの移動が回転運動と並進運動とを伴う場合、撮像部72によって撮像される領域は、並進運動よりも回転運動によって大きく変化しやすい。このため、本実施形態に係る領域推定部3は、移動体Mの並進運動よりも、移動体Mの回転運動に重点を置いた処理を行う。
より詳細には、領域推定部3は、撮像部72を構成する複数のカメラのうち、移動体Mの回転運動によって撮像する領域が変化しにくいカメラを選択する。つまり、複数のカメラのうち、移動体Mの移動の前後に撮像された画像おいて、より多くの特徴点の対応付けを行うことが可能なカメラを選択する。
具体的には、領域推定部3は、検出部73によって生成された情報に基づいて、移動体Mの回転運動(移動体Mを中心とする自転運動)の回転軸Rを算出する。そして、領域推定部3は、回転軸Rと、各カメラ72a,72bの光軸Ca,Cbとが成す角度を算出する。つまり、領域推定部3は、回転軸Rと第1カメラ72aの光軸Caとが成す角度θaと、回転軸Rと第2カメラ72bの光軸Cbとが成す角度θbとを算出する。なお、角度θa及び角度θb計算の際に、回転軸R及び光軸Ca,Cbは適宜平行移動させてもよい。
図7に示すように、角度θaが大きい第1カメラ72aでは、時刻(t)に撮像された画像a2が、時刻(t-1)に撮像された画像a1から大きく移動している。このため、時刻(t-1)に撮像された画像a1に含まれる特徴点P1が、時刻(t)に撮像された画像a2から大きく外れてしまっている。
このように、角度θaが大きい第1カメラ72aによって撮像された画像a1及び画像a2には、共通して含まれる特徴点P12が存在しない可能性が高い。換言すると、トラッキング部2によって画像a1及び画像a2から抽出された特徴点P12は、トラッキングミスにより得られたものである可能性が高く、信頼性が低い。
この一方で、図7に示すように、角度θbが小さい第2カメラ72bでは、時刻(t)に撮像された画像b2が、時刻(t-1)に撮像された画像b1からあまり移動していない。このため、時刻(t-1)に撮像された画像b1に含まれる特徴点P1は、時刻(t)に撮像された画像b2にも含まれている。
このように、角度θbが小さい第2カメラ72bによって撮像された画像b1及び画像b2には、共通して含まれる特徴点P12が存在する可能性が高い。換言すると、トラッキング部2によって画像b1及び画像b2から抽出された特徴点P12は、正しいトラッキングにより得られたものである可能性が高く、信頼性が高い。
したがって、領域推定部3は、撮像部72を構成する複数のカメラのうち、回転軸との間に成す角度が最も小さい光軸を有するカメラを選択する。つまり、領域推定部3は、選択したカメラが撮像する領域が、移動体Mの移動の前後で、移動体Mから見た特徴点の二次元的な位置が変化しにくい領域であるものと推定する。
図6,7に示す例では、第2カメラ72bに係る角度θbが、第1カメラ72aに係る角度θaよりも小さいため、領域推定部3は第2カメラ72bを選択する。
領域推定部3は、選択したカメラを特定する出力データを生成する。そして、領域推定部3は、生成した出力データを、データ生成部4に出力する。
なお、領域推定部3による移動体Mの回転軸の算出には、検出部73によって生成される情報に併せて、又は、検出部73によって生成される情報に代えて、他の情報を利用してもよい。他の情報としては、例えば、カルマンフィルタによって得られる情報が挙げられる。つまり、領域推定部3は、カルマンフィルタによって予測される、時刻(t-1)及び時刻(t)における移動体Mの姿勢から、移動体Mの回転軸を算出してもよい。
また、領域推定部3は、必ずしも移動体Mの回転軸を算出しなくてもよい。つまり、領域推定部3は、移動体Mの回転軸を用いずに、移動体Mの移動の前後で、移動体Mから見た特徴点の二次元的な位置が変化しにくい領域を推定してもよい。例えば、領域推定部3は、移動体Mの回転運動と並進運動とを含む移動の軌跡から、移動体Mから見た特徴点の向きが変化しにくいと予測される領域を直接算出してもよい。
(データ生成部4)
データ生成部4は、トラッキング部2の出力データと、領域推定部3の出力データと、を取得する。そして、データ生成部4は、トラッキング部2によって対応付けられた特徴点から、領域推定部3によって選択されたカメラによって撮像された画像に含まれる特徴点を抽出する。領域推定部3によって選択されたカメラによって撮像された画像には特徴点が共通して含まれる可能性が高いため、データ生成部4がより信頼性の高い特徴点を抽出することができる。
データ生成部4は、トラッキング部2の出力データと、領域推定部3の出力データと、を取得する。そして、データ生成部4は、トラッキング部2によって対応付けられた特徴点から、領域推定部3によって選択されたカメラによって撮像された画像に含まれる特徴点を抽出する。領域推定部3によって選択されたカメラによって撮像された画像には特徴点が共通して含まれる可能性が高いため、データ生成部4がより信頼性の高い特徴点を抽出することができる。
具体的には、データ生成部4は、トラッキング部2によって対応付けられた特徴点P12のうち、領域推定部3によって選択された第2カメラ72bのラベルが付された特徴点P12を抽出する。
データ生成部4は、上記のように抽出した特徴点から、更に、トラッキングスコアが所定の閾値を満たす特徴点を再抽出する。所定の閾値は、任意に設定されることが可能である。上述のとおり、トラッキングスコアが高い特徴点ほど信頼性が高いため、データ生成部4は、更に信頼性の高い特徴点を絞り込むことができる。
データ生成部4は、抽出した特徴点について、特徴点を撮像したカメラを特定するラベル、移動体Mの移動前後の画像における特徴点の座標、特徴点のトラッキングスコア、などの情報を付して出力データを生成する。そして、トラッキング部2は、生成したデータを推定処理部5に出力する。
(推定処理部5)
推定処理部5は、データ生成部4の出力データを用いて、移動体Mの自己位置推定を行う。つまり、推定処理部5は、データ生成部4によって抽出された特徴点を用いて、時刻(t-1)における移動体Mの位置及び姿勢から、時刻(t)における移動体Mの位置及び姿勢を推定する。
推定処理部5は、データ生成部4の出力データを用いて、移動体Mの自己位置推定を行う。つまり、推定処理部5は、データ生成部4によって抽出された特徴点を用いて、時刻(t-1)における移動体Mの位置及び姿勢から、時刻(t)における移動体Mの位置及び姿勢を推定する。
推定処理部5による移動体Mの自己位置推定には、任意の方法を利用可能である。推定処理部5は、例えば、データ生成部4によって抽出された特徴点から、カルマンフィルタのアルゴリズムを用いて、移動体Mの自己位置推定を行うことができる。
上述のように、データ生成部4が抽出した特徴点は、時刻(t-1)に撮像された画像と、時刻(t)に撮像された画像とにおいて、高い信頼性で対応が取れている。このように、本実施形態に係る自己位置推定部1では、信頼性の高い特徴点を用いることにより、推定処理部5による高精度な移動体Mの自己位置推定が可能となる。
また、上述のように、推定処理部5では、移動体Mの自己位置推定に、領域推定部3によって選択されなかったカメラによって撮像された画像に含まれる特徴点を用いない。つまり、本実施形態に係る自己位置推定部1では、信頼性の低い特徴点を用いずに、信頼性の高い特徴点のみを用いるため、推定処理部5による効率的な移動体Mの自己位置推定が可能となる。
[自己位置推定部1による情報処理方法]
図8は、本実施形態に係る自己位置推定部1による処理の流れを示すフローチャートである。図8に沿って、自己位置推定部1による情報処理方法について説明する。
図8は、本実施形態に係る自己位置推定部1による処理の流れを示すフローチャートである。図8に沿って、自己位置推定部1による情報処理方法について説明する。
(ステップS1-01~S1-04)
ステップS1-01~S1-04は、トラッキング部2によって実行される。トラッキング部2は、撮像部72よって撮像された画像を取得し(ステップS1-01)、取得した画像に含まれる特徴点の対応付けを行い(ステップS1-02)、対応付けた特徴点にトラッキングスコアを設定し(ステップS1-03)、出力データを生成し(ステップS1-04)、生成したデータをデータ生成部4に出力する。
ステップS1-01~S1-04は、トラッキング部2によって実行される。トラッキング部2は、撮像部72よって撮像された画像を取得し(ステップS1-01)、取得した画像に含まれる特徴点の対応付けを行い(ステップS1-02)、対応付けた特徴点にトラッキングスコアを設定し(ステップS1-03)、出力データを生成し(ステップS1-04)、生成したデータをデータ生成部4に出力する。
(ステップS1-05~S1-08)
ステップS1-05~S1-08は、領域推定部3によって実行される。領域推定部3は、検出部73によって生成された移動体Mの移動に関する情報を取得し(ステップS1-05)、取得した情報から移動体Mの回転運動の回転軸を算出し(ステップS1-06)、算出した回転軸と各カメラの光軸との成す角度を算出し(ステップS1-07)、算出した角度に基づいてカメラを選択し(ステップS1-08)、選択したカメラを特定するデータをデータ生成部4に出力する。
ステップS1-05~S1-08は、領域推定部3によって実行される。領域推定部3は、検出部73によって生成された移動体Mの移動に関する情報を取得し(ステップS1-05)、取得した情報から移動体Mの回転運動の回転軸を算出し(ステップS1-06)、算出した回転軸と各カメラの光軸との成す角度を算出し(ステップS1-07)、算出した角度に基づいてカメラを選択し(ステップS1-08)、選択したカメラを特定するデータをデータ生成部4に出力する。
(ステップS1-09~S1-14)
ステップS1-09~S1-14は、データ生成部4によって実行される。データ生成部4は、トラッキング部2から入力された特徴点から、領域推定部3から入力されたカメラによって撮像された画像に含まれる特徴点を抽出する(ステップS1-09)。データ生成部4は、抽出した特徴点をひとつ取得し(ステップS1-10)、当該特徴点のトラッキングスコアが閾値を満たすか判定する(ステップS1-11)。
ステップS1-09~S1-14は、データ生成部4によって実行される。データ生成部4は、トラッキング部2から入力された特徴点から、領域推定部3から入力されたカメラによって撮像された画像に含まれる特徴点を抽出する(ステップS1-09)。データ生成部4は、抽出した特徴点をひとつ取得し(ステップS1-10)、当該特徴点のトラッキングスコアが閾値を満たすか判定する(ステップS1-11)。
データ生成部4が取得した特徴点のトラッキングスコアが閾値を満たさない場合には、ステップS1-10に戻る。データ生成部4が取得した特徴点のトラッキングスコアが閾値を満たす場合には、当該特徴点を出力データに追加し(ステップS1-12)、出力データにおける特徴点の数が十分であるか判定する(ステップS1-13)。出力データにおける特徴点の数が十分でない場合には、ステップS1-10に戻る。出力データにおける特徴点の数が十分である場合には、生成したデータを推定処理部5に出力する。
(ステップS1-15)
ステップS1-15は、推定処理部5によって実行される。推定処理部5は、データ生成部4の出力データを用いて、移動体Mの自己位置推定を行う。
ステップS1-15は、推定処理部5によって実行される。推定処理部5は、データ生成部4の出力データを用いて、移動体Mの自己位置推定を行う。
[変形例]
図9は、本実施形態の変形例に係る自己位置推定部1による処理の流れを示すフローチャートである。本変形例に係る情報処理方法は、領域推定部3によるステップS1-05~S1-08が、トラッキング部2によるステップS1-01~S1-04より前に実行される点で、図8に示す情報処理方法と異なる。図9に沿って、本変形例に係る情報処理方法について説明する。
図9は、本実施形態の変形例に係る自己位置推定部1による処理の流れを示すフローチャートである。本変形例に係る情報処理方法は、領域推定部3によるステップS1-05~S1-08が、トラッキング部2によるステップS1-01~S1-04より前に実行される点で、図8に示す情報処理方法と異なる。図9に沿って、本変形例に係る情報処理方法について説明する。
まず、ステップS1-05~S1-08によって、領域推定部3が、カメラを選択し、選択したカメラを特定するデータをトラッキング部2に出力する。トラッキング部2は、領域推定部3により選択されたカメラによって撮像された画像を取得し(ステップS1-01)、取得した画像に含まれる特徴点の対応付けを行い(ステップS1-02)、対応付けた特徴点にトラッキングスコアを設定し(ステップS1-03)、出力データを生成し(ステップS1-04)、生成したデータをデータ生成部4に出力する。
トラッキング部2からデータ生成部4に入力されたデータには、領域推定部3により選択されたカメラによって撮像された画像に含まれる特徴点のみしか含まれていないため、本変形例に係る情報処理方法では、図8に係る特徴点の抽出(ステップS1-09)を実行する必要がない。
図9のステップS1-10~S1-15は、図8のステップS1-10~S1-15と同様である。
本変形例に係る情報処理方法では、トラッキング部2が、領域推定部3によって選択されなかったカメラによって撮像された画像を用いず、領域推定部3によって選択されたカメラによって撮像された画像のみを用いてトラッキングを行うため、効率的なトラッキングが可能である。
<第2の実施形態>
図10は、本技術の第2の実施形態に係る情報処理システム100におけるヘッドマウントディスプレイ70を示す図である。本実施形態に係る情報処理システム100では、撮像部72の構成、及び自己位置推定部1による情報処理方法が、第1の実施形態に係る情報処理システム100と異なる。以下、本実施形態に係る情報処理システム100のうち、第1の実施形態に係る情報処理システム100に対応する構成には、第1の実施形態と同様の符号を付し、適宜その説明を省略する。
図10は、本技術の第2の実施形態に係る情報処理システム100におけるヘッドマウントディスプレイ70を示す図である。本実施形態に係る情報処理システム100では、撮像部72の構成、及び自己位置推定部1による情報処理方法が、第1の実施形態に係る情報処理システム100と異なる。以下、本実施形態に係る情報処理システム100のうち、第1の実施形態に係る情報処理システム100に対応する構成には、第1の実施形態と同様の符号を付し、適宜その説明を省略する。
本実施形態に係る情報処理システム100では、撮像部72が、180°の視野角を有するカメラとして構成され、ヘッドマウントディスプレイ70のブリッジ部74に前方を向けて設けられている。また、撮像部72は、光軸Dと有し、光軸Dを中心とする画像dを撮像可能である。
撮像部72は広視野角のカメラであることが好ましい。撮像部72の視野角は90°以上であることが特に好ましい。なお、撮像部72を構成するカメラは、特定の種類に限定されず、例えば、広角カメラ、魚眼カメラ、全天周カメラなどのいずれであってもよい。
図11は、本実施形態に係る情報処理システム100のトラッキング部2及び領域推定部3の動作を説明するための図である。図11では、移動体Mを簡略化し、撮像部72のみを示している。
図11(A)は時刻(t-1)の状態を示し、図11(B)はその直後の時刻(t)の状態を示している。時刻(t-1)と時刻(t)との間に移動体Mは回転運動を伴った移動を行っている。したがって、図11(A)に示す時刻(t-1)と図11(B)に示す時刻(t)とでは、移動体Mの向きが変化しており、撮像部72の光軸Dの向きが変化している。
撮像部72は、図11(A)に示す時刻(t-1)に画像d1を撮像し、図11(B)に示す時刻(t)に画像d2を撮像する。
トラッキング部2は、撮像部72によって撮像された画像d1及び画像d2を取得し、画像d1から特徴点P1を検出し、画像d2から特徴点P2を検出する。そして、トラッキング部2は、画像d1及び画像d2に共通して含まれる特徴点P12の対応付けを行う。
上記のように、本実施形態に係るトラッキング部2は、広視野角の撮像部72によって撮像された画像をトラッキングに用いる。広視野角の撮像部72では、より広範囲の特徴点を撮像することが可能であるため、トラッキング部2による特徴点のトラッキングが不能になることを防止することができる。
領域推定部3は、検出部73によって生成された移動体Mの移動に関する情報に基づいて、移動体Mの回転運動(移動体Mを中心とする自転運動)の回転軸Rを算出する。そして、領域推定部3は、回転軸Rが通る領域を選択する。つまり、領域推定部3は、回転軸Rが通る領域を、移動体Mの移動の前後で、移動体Mから見た特徴点の二次元的な位置の変化が小さい領域と推定する。
データ生成部4は、時刻(t-1)に撮像された画像d1、及び時刻(t)に撮像された画像d2から、領域推定部3によって推定された領域を切り取り、データ生成部4が処理する画像としてトリミング画像Eを生成する。つまり、領域推定部3は、データ生成部4による画像d1及び画像d2の処理領域を、領域推定部3によって推定された領域に限定する。
トリミング画像Eの大きさ(領域推定部3によって推定される領域の大きさ)は、適宜決定可能である。例えば、領域推定部3は、移動体Mの移動前後での移動体Mから見た特徴点の二次元的な位置の変化が比較的大きいと予想される場合に、トリミング画像Eを大きくすることができる。
この一例として、移動体Mの回転運動の角速度が大きい場合に、移動体Mから見た特徴点の二次元的な位置の変化が大きくなりやすい。このため、領域推定部3は、移動体Mの回転運動の角速度が大きい場合に、トリミング画像Eを大きくする。これにより、トリミング画像Eに含まれる特徴点の数を十分に多く確保することができる。
反対に、領域推定部3は、移動体Mの回転運動の角速度が小さい場合に、トリミング画像Eを小さくする。これにより、データ生成部4及び推定処理部5における処置の効率化を図ることができる。
また、移動体Mの移動が回転運動に加えて並進運動も伴う場合に、移動体Mから見た特徴点の二次元的な位置にズレが発生しやすい。このため、領域推定部3は、移動体Mの移動が並進運動を伴う場合に、トリミング画像Eを大きくする。これにより、トリミング画像Eに含まれる特徴点の数を十分に多く確保することができる。
更に、トリミング画像Eの形状(領域推定部3によって推定される領域の形状)は、任意に決定可能である。トリミング画像Eの形状としては、図11に示す円形状の他、例えば、矩形状などの多角形状や、楕円状などであってもよい。
図12は、本実施形態に係る自己位置推定部1による処理の流れを示すフローチャートである。図12に沿って、自己位置推定部1による情報処理方法について説明する。
(ステップS2-01~S2-04)
ステップS2-01~S2-04は、トラッキング部2によって実行される。トラッキング部2は、撮像部72よって撮像された画像を取得し(ステップS2-01)、取得した画像に含まれる特徴点の対応付けを行い(ステップS2-02)、対応付けた特徴点にトラッキングスコアを設定し(ステップS2-03)、出力データを生成し(ステップS2-04)、生成したデータをデータ生成部4に出力する。
ステップS2-01~S2-04は、トラッキング部2によって実行される。トラッキング部2は、撮像部72よって撮像された画像を取得し(ステップS2-01)、取得した画像に含まれる特徴点の対応付けを行い(ステップS2-02)、対応付けた特徴点にトラッキングスコアを設定し(ステップS2-03)、出力データを生成し(ステップS2-04)、生成したデータをデータ生成部4に出力する。
(ステップS2-05~S2-08)
ステップS2-05~S2-08は、領域推定部3によって実行される。領域推定部3は、検出部73によって生成された移動体Mの移動に関する情報を取得し(ステップS2-05)、取得した情報から移動体Mの回転運動の回転軸を算出し(ステップS2-06)、算出した回転軸を通る領域を選択し(ステップS2-07)、選択した領域を特定するデータをデータ生成部4に出力する。
ステップS2-05~S2-08は、領域推定部3によって実行される。領域推定部3は、検出部73によって生成された移動体Mの移動に関する情報を取得し(ステップS2-05)、取得した情報から移動体Mの回転運動の回転軸を算出し(ステップS2-06)、算出した回転軸を通る領域を選択し(ステップS2-07)、選択した領域を特定するデータをデータ生成部4に出力する。
(ステップS2-08~S2-15)
ステップS2-08~S2-14は、データ生成部4によって実行され、ステップS2-15は推定処理部5によって実行される。データ生成部4は、撮像部72よって撮像された画像を、領域推定部3によって選択された領域によって切り取り、トリミング画像を生成する(S2-08)。データ生成部4は、トラッキング部2によって対応付けられた特徴点から、トリミング画像に含まれる特徴点を抽出する(ステップS2-09)。
ステップS2-08~S2-14は、データ生成部4によって実行され、ステップS2-15は推定処理部5によって実行される。データ生成部4は、撮像部72よって撮像された画像を、領域推定部3によって選択された領域によって切り取り、トリミング画像を生成する(S2-08)。データ生成部4は、トラッキング部2によって対応付けられた特徴点から、トリミング画像に含まれる特徴点を抽出する(ステップS2-09)。
ステップS2-10~S2-15は、図8のステップS1-10~S1-15と同様である。
[変形例]
図13は、本実施形態の変形例に係る自己位置推定部1による処理の流れを示すフローチャートである。本変形例に係る情報処理方法は、領域推定部3によるステップS2-05~S2-07が、トラッキング部2によるステップS2-01~S2-04より前に実行される点で、図12に示す情報処理方法と異なる。図13に沿って、本変形例に係る情報処理方法について説明する。
図13は、本実施形態の変形例に係る自己位置推定部1による処理の流れを示すフローチャートである。本変形例に係る情報処理方法は、領域推定部3によるステップS2-05~S2-07が、トラッキング部2によるステップS2-01~S2-04より前に実行される点で、図12に示す情報処理方法と異なる。図13に沿って、本変形例に係る情報処理方法について説明する。
まず、ステップS2-05~S2-07によって、領域推定部3が選択した領域を特定するデータをトラッキング部2に出力する。トラッキング部2は、撮像部72によって撮像された画像を取得し(ステップS2-01)、取得した画像から、領域推定部3によって選択された領域を切り取り、トリミング画像を生成する(ステップS2-08)。本変形例では、トラッキング部2が、トリミング画像を生成するデータ生成部として機能する。
トラッキング部2は、トリミング画像に含まれる特徴点の対応付けを行い(ステップS2-02)、対応付けた特徴点にトラッキングスコアを設定し(ステップS2-03)、出力データを生成し(ステップS2-04)、生成したデータをデータ生成部4に出力する。
トラッキング部2からデータ生成部4に入力されたデータには、領域推定部3によって選択された領域に含まれる特徴点のみしか含まれていないため、本変形例に係る情報処理方法では、図12に係る特徴点の抽出(ステップS2-09)を実行する必要がない。
図13のステップS2-09~S2-15は、図12のステップS2-09~S2-15と同様である。
本変形例に係る情報処理方法では、トラッキング部2が、撮像部72によって撮像された画像のうち、トリミング画像以外の領域を用いず、トリミング画像のみを用いてトラッキングを行うため、効率的なトラッキングが可能である。
<第3の実施形態>
図14は、本技術の第3の実施形態に係る情報処理システム100における自己位置推定部1の構成を示すブロック図である。本実施形態に係る情報処理システム100では、自己位置推定部1の構成、及び自己位置推定部1による情報処理方法が、第1の実施形態に係る情報処理システム100と異なる。以下、本実施形態に係る情報処理システム100のうち、第1の実施形態に係る情報処理システム100に対応する構成には、第1の実施形態と同様の符号を付し、適宜その説明を省略する。
図14は、本技術の第3の実施形態に係る情報処理システム100における自己位置推定部1の構成を示すブロック図である。本実施形態に係る情報処理システム100では、自己位置推定部1の構成、及び自己位置推定部1による情報処理方法が、第1の実施形態に係る情報処理システム100と異なる。以下、本実施形態に係る情報処理システム100のうち、第1の実施形態に係る情報処理システム100に対応する構成には、第1の実施形態と同様の符号を付し、適宜その説明を省略する。
本実施形態に係る自己位置推定部1は、モニタリング部6を具備する。本実施形態に係る自己位置推定部1では、推定処理部5が、第1の実施形態と同様のデータ生成部4の出力データによる移動体Mの第1自己位置推定とは独立して、モニタリング部6の出力データによる移動体Mの第2自己位置推定を行う。つまり、推定処理部5は、2通りの方法で移動体Mの自己位置推定を行う。
モニタリング部6は、検出部73により生成される情報を時間的連続に参照することにより、移動体Mの位置及び姿勢の時系列的な変化のモニタリングを行う。モニタリング部6は、移動体Mのモニタリングの結果によって出力データを生成し、生成したデータを推定処理部5に出力する。推定処理部5は、モニタリング部6による移動体Mのモニタリングの結果に基づいて、時刻(t)における移動体Mの位置及び姿勢を推定する。
モニタリング部6の出力データは、検出部73により生成される情報を時間的連続に参照することにより得られるため、検出部73の誤検知による時間的に不連続なデータの影響を受けにくい。したがって、本実施形態に係る自己位置推定部1では、モニタリング部6の出力データによる移動体Mの第2自己位置推定を、データ生成部4の出力データによる移動体Mの第1自己位置推定と相補的に利用することにより、高精度な移動体Mの自己位置推定が可能となる。
また、本実施形態に係る自己位置推定部1では、移動体Mの動作をモデル化した運動モデルを導入することにより、モニタリング部6による出力データの生成や、モニタリング部6の出力データを用いた推定処理部5による第2自己位置推定を効率的に行うことができる。運動モデルとは移動体Mが行いやすい動作をモデル化したものであり、移動体Mに応じた運動モデルが予め設定される。
つまり、モニタリング部6は、移動体Mについて、等速度運動であるか、減速運動であるか、加速運動であるか、速度の変化があるか、といった判定や、速度変化の比率の算出などによって、移動体Mの動作が、予め設定される運動モデルうち、いずれの運動モデルであるかを推定し、推定結果によって出力データを生成し、生成したデータを推定処理部5に出力する。推定処理部5は、モニタリング部6によって推定された運動モデルに基づいて、時刻(t)における移動体Mの位置及び姿勢を推定する。
例えば、移動体Mが、ヘッドマウントディスプレイ70を装着したユーザである場合には、人間が行いやすい動作をモデル化した運動モデルが設定される。このような運動モデルとしては、一例として、静止運動モデルや、歩行運動モデルや、走行運動モデルが挙げられる。なお、設定される運動モデルの種類や数は、任意に決定可能である。
図15は、モニタリング部6による処理の流れの一例を示すフローチャートである。まず、モニタリング部6は、移動体Mが静止状態であるか判定する(ステップS3-01)。例えば、移動体Mの運動が検出されなかった場合に、移動体Mが静止状態であると判定される。モニタリング部6は、移動体Mが静止状態である場合に、移動体Mの運動モデルを静止運動モデルと決定する。
モニタリング部6は、移動体Mが静止状態でない場合に、移動体Mが歩行状態であるか判定する(ステップS3-02)。例えば、移動体Mの所定の第1範囲(例えば、時速3~6kmの範囲)内の等速度運動が検出された場合に、移動体Mが歩行状態であると判定される。モニタリング部6は、移動体Mが歩行状態である場合に、移動体Mの運動モデルを歩行運動モデルと決定する。
モニタリング部6は、移動体Mが歩行状態でない場合に、移動体Mが走行状態であるか判定する(ステップS3-03)。例えば、移動体Mの所定の第2範囲(例えば、時速7~10kmの範囲)内の等速度運動が検出された場合に、移動体Mが走行モデルである判定される。モニタリング部6は、移動体Mが走行状態である場合に、移動体Mの運動モデルを走行運動モデルと決定する。
モニタリング部6は、移動体Mが走行状態でもない場合に、移動体Mの運動モデルをデフォルト運動モデルと決定する。
モニタリング部6は、移動体Mの運動モデルを静止運動モデルと決定すると、静止運動モデルを特定する出力データを生成し、生成したデータを推定処理部5に出力する。推定処理部5は、モニタリング部6の出力データから、時刻(t)における移動体Mの位置が、時刻(t-1)における移動体Mの位置から変化していないものと推定する。
モニタリング部6は、移動体Mの運動モデルを歩行運動モデルと決定すると、歩行運動モデルを特定する出力データを生成し、生成したデータを推定処理部5に出力する。推定処理部5は、モニタリング部6の出力データに基づいて、時刻(t-1)における移動体Mの位置から時刻(t)における移動体Mの位置を推定する。
モニタリング部6は、移動体Mの運動モデルを走行運動モデルと決定すると、走行運動モデルを特定する出力データを生成し、生成したデータを推定処理部5に出力する。推定処理部5は、モニタリング部6の出力データに基づいて、時刻(t-1)における移動体Mの位置から時刻(t)における移動体Mの位置を推定する。
モニタリング部6は、移動体Mの運動モデルをデフォルト運動モデルと決定すると、運動モデルを特定せずに出力データを生成する。つまり、モニタリング部6は、移動体Mの位置及び姿勢の時系列的な変化のモニタリングの結果をそのまま推定処理部5に出力する。推定処理部5は、モニタリング部6によってモニタリングされた移動体Mの位置及び姿勢の時系列的な変化から、時刻(t)における移動体Mの位置及び姿勢を推定する。
なお、本実施形態に係る自己位置推定部1では、電気的、機械的、或いは光学的な制御系によって移動が制御される移動体Mにおいて、検出部73が制御系による制御内容を検出可能に構成されていてもよい。この場合、モニタリング部6は、制御系の制御内容を時間的連続に参照することにより、移動体Mの位置及び姿勢の時系列的な変化をモニタリングすることができる。
この一例として、移動体Mが、例えば乗用車のような、ステアリング装置やアクセルペダルなどによって移動が制御される搭乗型装置である場合、検出部73がステアリング装置やアクセルペダルなどの操作量を検出可能に構成される。そして、モニタリング部6は、検出部73によって検出されたステアリング装置やアクセルペダルなどの操作量を時間的連続に参照することにより、移動体Mの位置及び姿勢の時系列的な変化をモニタリングする。
また、移動体Mが自律行動機能を有するロボットである場合には、検出部73が制御信号を検出可能に構成される。そして、モニタリング部6は、検出部73によって検出された制御信号を時間的連続に参照することにより、移動体Mの位置及び姿勢の時系列的な変化をモニタリングする。
<その他の実施形態>
以上、本技術の実施形態について説明したが、本技術は上述の実施形態にのみ限定されるものではなく、本技術の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
以上、本技術の実施形態について説明したが、本技術は上述の実施形態にのみ限定されるものではなく、本技術の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
例えば、上記実施形態では、移動体Mがヘッドマウントディスプレイを装着したユーザである場合を中心に説明したが、本技術は任意の移動体Mに対して適用可能である。本技術を適用可能な移動体Mとしては、例えば、人間、車両、ロボット、動物などが挙げられる。いずれの場合にも、移動体Mに撮像部及び検出部を設けることにより、本技術に係る移動体Mの自己位置推定を行うことが可能である。
なお、本技術は以下のような構成も採ることができる。
(1)
回転運動を伴った移動を行う移動体に設けられた撮像部によって撮像された画像を取得し、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、に含まれる特徴点の対応付けを行うトラッキング部と、
上記移動に関する情報を取得し、上記情報に基づいて、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域を推定する領域推定部と、
上記トラッキング部によって対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定を行う推定処理部と
を具備する情報処理装置。
(2)
上記(1)に記載の情報処理装置であって、
上記領域推定部は、上記回転運動の回転軸を算出し、上記回転軸を用いて上記領域を推定する
情報処理装置。
(3)
上記(2)に記載の情報処理装置であって、
上記撮像部は、相互に平行でない光軸を有する複数のカメラ機構を含み、
上記領域推定部は、上記複数のカメラ機構のうち、上記回転軸との間に成す角度が小さい上記光軸を有するカメラ機構を選択し、
上記推定処理部は、上記領域推定部によって選択された上記カメラ機構によって撮像された上記画像に含まれる上記特徴点を用いて、上記移動体の自己位置推定を行う
情報処理装置。
(4)
上記(3)に記載の情報処理装置であって、
上記トラッキング部によって対応付けられた上記特徴点のうち、上記領域推定部によって選択された上記カメラ機構によって撮像された上記画像に含まれる上記特徴点を抽出するデータ生成部を更に具備し、
上記推定処理部は、上記データ生成部によって抽出された上記特徴点を用いて、上記移動体の自己位置推定を行う
情報処理装置。
(5)
上記(3)に記載の情報処理装置であって、
上記トラッキング部は、上記領域推定部によって選択された上記カメラ機構によって撮像された上記画像に含まれる特徴点の対応付けを行う
情報処理装置。
(6)
上記(2)に記載の情報処理装置であって、
上記領域推定部は、上記回転軸が上記領域を通るように、上記領域を推定する
情報処理装置。
(7)
上記(6)に記載の情報処理装置であって、
上記撮像部の視野角が90°以上である
情報処理装置。
(8)
上記(6)又は(7)に記載の情報処理装置であって、
上記画像の処理領域を上記領域内に限定するデータ生成部を更に具備し、
上記推定処理部は、上記処理領域に含まれる上記特徴点を用いて、上記移動体の自己位置推定を行う
情報処理装置。
(9)
上記(8)に記載の情報処理装置であって、
上記データ生成部は、上記トラッキング部によって対応付けられた上記特徴点のうち、上記処理領域に含まれる上記特徴点を抽出し、
上記推定処理部は、上記データ生成部によって抽出された上記特徴点を用いて、上記移動体の自己位置推定を行う
情報処理装置。
(10)
上記(8)に記載の情報処理装置であって、
上記トラッキング部は、上記処理領域に含まれる特徴点の対応付けを行う
情報処理装置。
(11)
上記(8)から(10)のいずれか1つに記載の情報処理装置であって、
上記領域推定部は、上記回転運動の角速度が大きい場合に、上記処理領域を大きくする
情報処理装置。
(12)
上記(8)から(11)のいずれか1つに記載の情報処理装置であって、
上記領域推定部は、上記移動が並進運動を伴う場合に、上記処理領域を大きくする
情報処理装置。
(13)
上記(1)から(12)のいずれか1つに記載の情報処理装置であって、
上記トラッキング部は、対応付けた上記特徴点ごとに、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、における上記特徴点の一致度合いを示すトラッキングスコアを設定し、
上記推定処理部は、上記トラッキングスコアが高い上記特徴点を用いて、上記移動体の自己位置推定を行う
情報処理装置。
(14)
上記(13)に記載の情報処理装置であって、
上記トラッキング部は、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、のうち少なくとも一方の中央領域にある上記特徴点の上記トラッキングスコアを高く設定する
情報処理装置。
(15)
上記(1)から(14)のいずれか1つに記載の情報処理装置であって、
上記情報は、ジャイロセンサ、地磁気センサ、加速度センサ、音源方向推定装置、及びWi-Fiのうちの少なくとも1つを用いて生成される
情報処理装置。
(16)
上記(1)から(15)のいずれか1つに記載の情報処理装置であって、
上記情報により上記移動体のモニタリングを行うモニタリング部を更に具備し、
上記推定処理部は、上記自己位置推定とは独立して、上記モニタリング部による上記モニタリングの結果に基づいて、上記移動体の自己位置推定を行う
情報処理装置。
(17)
上記(16)に記載の情報処理装置であって、
上記モニタリング部は、上記移動体の運動モデルを推定し、
上記推定処理部は、上記モニタリング部によって推定された上記運動モデルを用いて、上記移動体の自己位置推定を行う
情報処理装置。
(18)
上記(1)から(17)に記載の情報処理装置であって、
上記撮像部と、上記情報を生成可能な検出部と、が設けられ、上記移動体としてのユーザの頭部に装着可能に構成されるヘッドマウントディスプレイを更に具備する
情報処理装置。
(19)
回転運動を伴った移動を行う移動体に設けられた撮像部によって画像を撮像し、
上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、に含まれる特徴点の対応付けを行い、
上記移動に関する情報を生成し、
上記情報に基づいて、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域を推定し、
対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定を行う
情報処理方法。
(20)
情報処理装置に、
回転運動を伴った移動を行う移動体に設けられた撮像部によって撮像された画像を取得し、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、に含まれる特徴点の対応付けを行うステップと、
上記移動に関する情報を取得し、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域を推定するステップと、
対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定を行うステップと
を実行させるプログラム。
(1)
回転運動を伴った移動を行う移動体に設けられた撮像部によって撮像された画像を取得し、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、に含まれる特徴点の対応付けを行うトラッキング部と、
上記移動に関する情報を取得し、上記情報に基づいて、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域を推定する領域推定部と、
上記トラッキング部によって対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定を行う推定処理部と
を具備する情報処理装置。
(2)
上記(1)に記載の情報処理装置であって、
上記領域推定部は、上記回転運動の回転軸を算出し、上記回転軸を用いて上記領域を推定する
情報処理装置。
(3)
上記(2)に記載の情報処理装置であって、
上記撮像部は、相互に平行でない光軸を有する複数のカメラ機構を含み、
上記領域推定部は、上記複数のカメラ機構のうち、上記回転軸との間に成す角度が小さい上記光軸を有するカメラ機構を選択し、
上記推定処理部は、上記領域推定部によって選択された上記カメラ機構によって撮像された上記画像に含まれる上記特徴点を用いて、上記移動体の自己位置推定を行う
情報処理装置。
(4)
上記(3)に記載の情報処理装置であって、
上記トラッキング部によって対応付けられた上記特徴点のうち、上記領域推定部によって選択された上記カメラ機構によって撮像された上記画像に含まれる上記特徴点を抽出するデータ生成部を更に具備し、
上記推定処理部は、上記データ生成部によって抽出された上記特徴点を用いて、上記移動体の自己位置推定を行う
情報処理装置。
(5)
上記(3)に記載の情報処理装置であって、
上記トラッキング部は、上記領域推定部によって選択された上記カメラ機構によって撮像された上記画像に含まれる特徴点の対応付けを行う
情報処理装置。
(6)
上記(2)に記載の情報処理装置であって、
上記領域推定部は、上記回転軸が上記領域を通るように、上記領域を推定する
情報処理装置。
(7)
上記(6)に記載の情報処理装置であって、
上記撮像部の視野角が90°以上である
情報処理装置。
(8)
上記(6)又は(7)に記載の情報処理装置であって、
上記画像の処理領域を上記領域内に限定するデータ生成部を更に具備し、
上記推定処理部は、上記処理領域に含まれる上記特徴点を用いて、上記移動体の自己位置推定を行う
情報処理装置。
(9)
上記(8)に記載の情報処理装置であって、
上記データ生成部は、上記トラッキング部によって対応付けられた上記特徴点のうち、上記処理領域に含まれる上記特徴点を抽出し、
上記推定処理部は、上記データ生成部によって抽出された上記特徴点を用いて、上記移動体の自己位置推定を行う
情報処理装置。
(10)
上記(8)に記載の情報処理装置であって、
上記トラッキング部は、上記処理領域に含まれる特徴点の対応付けを行う
情報処理装置。
(11)
上記(8)から(10)のいずれか1つに記載の情報処理装置であって、
上記領域推定部は、上記回転運動の角速度が大きい場合に、上記処理領域を大きくする
情報処理装置。
(12)
上記(8)から(11)のいずれか1つに記載の情報処理装置であって、
上記領域推定部は、上記移動が並進運動を伴う場合に、上記処理領域を大きくする
情報処理装置。
(13)
上記(1)から(12)のいずれか1つに記載の情報処理装置であって、
上記トラッキング部は、対応付けた上記特徴点ごとに、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、における上記特徴点の一致度合いを示すトラッキングスコアを設定し、
上記推定処理部は、上記トラッキングスコアが高い上記特徴点を用いて、上記移動体の自己位置推定を行う
情報処理装置。
(14)
上記(13)に記載の情報処理装置であって、
上記トラッキング部は、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、のうち少なくとも一方の中央領域にある上記特徴点の上記トラッキングスコアを高く設定する
情報処理装置。
(15)
上記(1)から(14)のいずれか1つに記載の情報処理装置であって、
上記情報は、ジャイロセンサ、地磁気センサ、加速度センサ、音源方向推定装置、及びWi-Fiのうちの少なくとも1つを用いて生成される
情報処理装置。
(16)
上記(1)から(15)のいずれか1つに記載の情報処理装置であって、
上記情報により上記移動体のモニタリングを行うモニタリング部を更に具備し、
上記推定処理部は、上記自己位置推定とは独立して、上記モニタリング部による上記モニタリングの結果に基づいて、上記移動体の自己位置推定を行う
情報処理装置。
(17)
上記(16)に記載の情報処理装置であって、
上記モニタリング部は、上記移動体の運動モデルを推定し、
上記推定処理部は、上記モニタリング部によって推定された上記運動モデルを用いて、上記移動体の自己位置推定を行う
情報処理装置。
(18)
上記(1)から(17)に記載の情報処理装置であって、
上記撮像部と、上記情報を生成可能な検出部と、が設けられ、上記移動体としてのユーザの頭部に装着可能に構成されるヘッドマウントディスプレイを更に具備する
情報処理装置。
(19)
回転運動を伴った移動を行う移動体に設けられた撮像部によって画像を撮像し、
上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、に含まれる特徴点の対応付けを行い、
上記移動に関する情報を生成し、
上記情報に基づいて、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域を推定し、
対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定を行う
情報処理方法。
(20)
情報処理装置に、
回転運動を伴った移動を行う移動体に設けられた撮像部によって撮像された画像を取得し、上記移動の前に撮像された上記画像と、上記移動の後に撮像された上記画像と、に含まれる特徴点の対応付けを行うステップと、
上記移動に関する情報を取得し、上記移動の前後で、上記移動体から見た上記特徴点の二次元的な位置の変化が小さい領域を推定するステップと、
対応付けられ、かつ、上記領域内にある上記特徴点を用いて、上記移動体の自己位置推定を行うステップと
を実行させるプログラム。
1…自己位置推定部
2…トラッキング部
3…領域推定部
4…データ生成部
5…推定処理部
10…クラウドシステム
30…携帯端末
50…コントロールボックス
70…ヘッドマウントディスプレイ
72…撮像部
72a,72b…カメラ
73…検出部
M…移動体
2…トラッキング部
3…領域推定部
4…データ生成部
5…推定処理部
10…クラウドシステム
30…携帯端末
50…コントロールボックス
70…ヘッドマウントディスプレイ
72…撮像部
72a,72b…カメラ
73…検出部
M…移動体
Claims (20)
- 回転運動を伴った移動を行う移動体に設けられた撮像部によって撮像された画像を取得し、前記移動の前に撮像された前記画像と、前記移動の後に撮像された前記画像と、に含まれる特徴点の対応付けを行うトラッキング部と、
前記移動に関する情報を取得し、前記情報に基づいて、前記移動の前後で、前記移動体から見た前記特徴点の二次元的な位置の変化が小さい領域を推定する領域推定部と、
前記トラッキング部によって対応付けられ、かつ、前記領域内にある前記特徴点を用いて、前記移動体の自己位置推定を行う推定処理部と
を具備する情報処理装置。 - 請求項1に記載の情報処理装置であって、
前記領域推定部は、前記回転運動の回転軸を算出し、前記回転軸を用いて前記領域を推定する
情報処理装置。 - 請求項2に記載の情報処理装置であって、
前記撮像部は、相互に平行でない光軸を有する複数のカメラ機構を含み、
前記領域推定部は、前記複数のカメラ機構のうち、前記回転軸との間に成す角度が小さい前記光軸を有するカメラ機構を選択し、
前記推定処理部は、前記領域推定部によって選択された前記カメラ機構によって撮像された前記画像に含まれる前記特徴点を用いて、前記移動体の自己位置推定を行う
情報処理装置。 - 請求項3に記載の情報処理装置であって、
前記トラッキング部によって対応付けられた前記特徴点のうち、前記領域推定部によって選択された前記カメラ機構によって撮像された前記画像に含まれる前記特徴点を抽出するデータ生成部を更に具備し、
前記推定処理部は、前記データ生成部によって抽出された前記特徴点を用いて、前記移動体の自己位置推定を行う
情報処理装置。 - 請求項3に記載の情報処理装置であって、
前記トラッキング部は、前記領域推定部によって選択された前記カメラ機構によって撮像された前記画像に含まれる特徴点の対応付けを行う
情報処理装置。 - 請求項2に記載の情報処理装置であって、
前記領域推定部は、前記回転軸が前記領域を通るように、前記領域を推定する
情報処理装置。 - 請求項6に記載の情報処理装置であって、
前記撮像部の視野角が90°以上である
情報処理装置。 - 請求項6に記載の情報処理装置であって、
前記画像の処理領域を前記領域内に限定するデータ生成部を更に具備し、
前記推定処理部は、前記処理領域に含まれる前記特徴点を用いて、前記移動体の自己位置推定を行う
情報処理装置。 - 請求項8に記載の情報処理装置であって、
前記データ生成部は、前記トラッキング部によって対応付けられた前記特徴点のうち、前記処理領域に含まれる前記特徴点を抽出し、
前記推定処理部は、前記データ生成部によって抽出された前記特徴点を用いて、前記移動体の自己位置推定を行う
情報処理装置。 - 請求項8に記載の情報処理装置であって、
前記トラッキング部は、前記処理領域に含まれる特徴点の対応付けを行う
情報処理装置。 - 請求項8に記載の情報処理装置であって、
前記領域推定部は、前記回転運動の角速度が大きい場合に、前記処理領域を大きくする
情報処理装置。 - 請求項8に記載の情報処理装置であって、
前記領域推定部は、前記移動が並進運動を伴う場合に、前記処理領域を大きくする
情報処理装置。 - 請求項1に記載の情報処理装置であって、
前記トラッキング部は、対応付けた前記特徴点ごとに、前記移動の前に撮像された前記画像と、前記移動の後に撮像された前記画像と、における前記特徴点の一致度合いを示すトラッキングスコアを設定し、
前記推定処理部は、前記トラッキングスコアが高い前記特徴点を用いて、前記移動体の自己位置推定を行う
情報処理装置。 - 請求項13に記載の情報処理装置であって、
前記トラッキング部は、前記移動の前に撮像された前記画像と、前記移動の後に撮像された前記画像と、のうち少なくとも一方の中央領域にある前記特徴点の前記トラッキングスコアを高く設定する
情報処理装置。 - 請求項1に記載の情報処理装置であって、
前記情報は、ジャイロセンサ、地磁気センサ、加速度センサ、音源方向推定装置、及びWi-Fiのうちの少なくとも1つを用いて生成される
情報処理装置。 - 請求項1に記載の情報処理装置であって、
前記情報により前記移動体のモニタリングを行うモニタリング部を更に具備し、
前記推定処理部は、前記自己位置推定とは独立して、前記モニタリング部による前記モニタリングの結果に基づいて、前記移動体の自己位置推定を行う
情報処理装置。 - 請求項16に記載の情報処理装置であって、
前記モニタリング部は、前記移動体の運動モデルを推定し、
前記推定処理部は、前記モニタリング部によって推定された前記運動モデルを用いて、前記移動体の自己位置推定を行う
情報処理装置。 - 請求項1に記載の情報処理装置であって、
前記撮像部と、前記情報を生成可能な検出部と、が設けられ、前記移動体としてのユーザの頭部に装着可能に構成されるヘッドマウントディスプレイを更に具備する
情報処理装置。 - 回転運動を伴った移動を行う移動体に設けられた撮像部によって画像を撮像し、
前記移動の前に撮像された前記画像と、前記移動の後に撮像された前記画像と、に含まれる特徴点の対応付けを行い、
前記移動に関する情報を生成し、
前記情報に基づいて、前記移動の前後で、前記移動体から見た前記特徴点の二次元的な位置の変化が小さい領域を推定し、
対応付けられ、かつ、前記領域内にある前記特徴点を用いて、前記移動体の自己位置推定を行う
情報処理方法。 - 情報処理装置に、
回転運動を伴った移動を行う移動体に設けられた撮像部によって撮像された画像を取得し、前記移動の前に撮像された前記画像と、前記移動の後に撮像された前記画像と、に含まれる特徴点の対応付けを行うステップと、
前記移動に関する情報を取得し、前記情報に基づいて、前記移動の前後で、前記移動体から見た前記特徴点の二次元的な位置の変化が小さい領域を推定するステップと、
対応付けられ、かつ、前記領域内にある前記特徴点を用いて、前記移動体の自己位置推定を行うステップと
を実行させるプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201580044294.0A CN106575437B (zh) | 2014-08-26 | 2015-06-01 | 信息处理装置、信息处理方法以及程序 |
US15/324,067 US10169880B2 (en) | 2014-08-26 | 2015-06-01 | Information processing apparatus, information processing method, and program |
EP15835670.9A EP3188128A4 (en) | 2014-08-26 | 2015-06-01 | Information-processing device, information processing method, and program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014-171795 | 2014-08-26 | ||
JP2014171795A JP2016045874A (ja) | 2014-08-26 | 2014-08-26 | 情報処理装置、情報処理方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016031105A1 true WO2016031105A1 (ja) | 2016-03-03 |
Family
ID=55399031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2015/002755 WO2016031105A1 (ja) | 2014-08-26 | 2015-06-01 | 情報処理装置、情報処理方法、及びプログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US10169880B2 (ja) |
EP (1) | EP3188128A4 (ja) |
JP (1) | JP2016045874A (ja) |
CN (1) | CN106575437B (ja) |
WO (1) | WO2016031105A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110235465A (zh) * | 2017-01-23 | 2019-09-13 | 瑞典爱立信有限公司 | 用于FeMTC和eNB-IoT的SC-MCCH片段调度 |
WO2020137313A1 (ja) | 2018-12-28 | 2020-07-02 | パナソニックIpマネジメント株式会社 | 位置測定装置 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016212177A (ja) * | 2015-05-01 | 2016-12-15 | セイコーエプソン株式会社 | 透過型表示装置 |
JP6894725B2 (ja) * | 2017-03-09 | 2021-06-30 | キヤノン株式会社 | 画像処理装置及びその制御方法、プログラム、記憶媒体 |
JPWO2018180175A1 (ja) * | 2017-03-27 | 2020-02-06 | 日本電産株式会社 | 移動体、信号処理装置およびコンピュータプログラム |
US10304207B2 (en) | 2017-07-07 | 2019-05-28 | Samsung Electronics Co., Ltd. | System and method for optical tracking |
JP7160036B2 (ja) | 2017-08-01 | 2022-10-25 | ソニーグループ株式会社 | 情報処理装置、情報処理方法、記録媒体、及び撮像装置 |
JP7369623B2 (ja) * | 2017-09-26 | 2023-10-26 | ソニーセミコンダクタソリューションズ株式会社 | 情報処理システムおよび情報処理方法 |
JP7057821B2 (ja) * | 2018-03-01 | 2022-04-20 | 株式会社ソニー・インタラクティブエンタテインメント | 位置推定装置、位置推定方法及びプログラム |
DE112019001659T5 (de) * | 2018-03-29 | 2020-12-31 | Sony Corporation | Steuervorrichtung, steuerverfahren und programm |
US11386574B2 (en) | 2018-04-26 | 2022-07-12 | Sony Corporation | Self-position estimation device, self-position estimation method, and program thereof |
KR20210145734A (ko) | 2019-03-27 | 2021-12-02 | 소니그룹주식회사 | 정보 처리 장치, 정보 처리 방법, 및 프로그램 |
JP7414551B2 (ja) * | 2020-01-24 | 2024-01-16 | キヤノン株式会社 | 制御装置および制御方法 |
WO2021177187A1 (ja) | 2020-03-05 | 2021-09-10 | ソニーグループ株式会社 | 画像処理装置及び画像処理方法 |
JP2023114237A (ja) * | 2022-02-04 | 2023-08-17 | 株式会社ソニー・インタラクティブエンタテインメント | 情報処理装置および情報処理方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002007030A (ja) * | 2000-06-16 | 2002-01-11 | Olympus Optical Co Ltd | 運動検出装置及び操作入力装置 |
JP2004157850A (ja) * | 2002-11-07 | 2004-06-03 | Olympus Corp | 運動検出装置 |
JP2009031295A (ja) * | 2008-08-05 | 2009-02-12 | Olympus Corp | 移動体姿勢検出装置 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5164670A (en) * | 1990-09-17 | 1992-11-17 | Syracuse University | Multidimensional magnetic resonance system using selective discrete Fourier transformation (SDFT) |
JP3512992B2 (ja) * | 1997-01-07 | 2004-03-31 | 株式会社東芝 | 画像処理装置および画像処理方法 |
FI20045300A (fi) * | 2004-08-17 | 2006-02-18 | Nokia Corp | Elektroninen laite ja menetelmä elektronisen laitteen toimintojen ohjaamiseksi sekä ohjelmatuote menetelmän toteuttamiseksi |
US8730156B2 (en) * | 2010-03-05 | 2014-05-20 | Sony Computer Entertainment America Llc | Maintaining multiple views on a shared stable virtual space |
JP5036260B2 (ja) * | 2006-09-14 | 2012-09-26 | キヤノン株式会社 | 位置姿勢算出方法及び装置 |
US8269834B2 (en) * | 2007-01-12 | 2012-09-18 | International Business Machines Corporation | Warning a user about adverse behaviors of others within an environment based on a 3D captured image stream |
JP4983539B2 (ja) * | 2007-10-19 | 2012-07-25 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
US8259998B2 (en) * | 2008-09-30 | 2012-09-04 | Mazda Motor Corporation | Image processing device for vehicle |
JP5267100B2 (ja) | 2008-12-18 | 2013-08-21 | 株式会社豊田中央研究所 | 運動推定装置及びプログラム |
US9024972B1 (en) * | 2009-04-01 | 2015-05-05 | Microsoft Technology Licensing, Llc | Augmented reality computing with inertial sensors |
JP5310285B2 (ja) | 2009-06-12 | 2013-10-09 | 日産自動車株式会社 | 自己位置推定装置及び自己位置推定方法 |
JP2011095797A (ja) * | 2009-10-27 | 2011-05-12 | Sony Corp | 画像処理装置、画像処理方法及びプログラム |
FR2967804B1 (fr) * | 2010-11-19 | 2013-01-04 | Total Immersion | Procede et dispositif de detection et de suivi d'objets non rigides en mouvement, en temps reel, dans un flux video, permettant a un utilisateur d'interagir avec un systeme informatique |
US8711206B2 (en) * | 2011-01-31 | 2014-04-29 | Microsoft Corporation | Mobile camera localization using depth maps |
JP5776332B2 (ja) | 2011-05-27 | 2015-09-09 | 富士通株式会社 | 地図処理方法及びプログラム、並びにロボットシステム |
JP5807399B2 (ja) * | 2011-06-13 | 2015-11-10 | ソニー株式会社 | 情報処理装置及びプログラム |
US20140005544A1 (en) * | 2011-11-02 | 2014-01-02 | Seno Medical Instruments, Inc. | System and method for providing selective channel sensitivity in an optoacoustic imaging system |
US9311883B2 (en) * | 2011-11-11 | 2016-04-12 | Microsoft Technology Licensing, Llc | Recalibration of a flexible mixed reality device |
JP2015528713A (ja) * | 2012-06-21 | 2015-10-01 | グローバス メディカル インコーポレイティッド | 手術ロボットプラットフォーム |
US9256987B2 (en) * | 2013-06-24 | 2016-02-09 | Microsoft Technology Licensing, Llc | Tracking head movement when wearing mobile device |
-
2014
- 2014-08-26 JP JP2014171795A patent/JP2016045874A/ja active Pending
-
2015
- 2015-06-01 CN CN201580044294.0A patent/CN106575437B/zh active Active
- 2015-06-01 US US15/324,067 patent/US10169880B2/en active Active
- 2015-06-01 WO PCT/JP2015/002755 patent/WO2016031105A1/ja active Application Filing
- 2015-06-01 EP EP15835670.9A patent/EP3188128A4/en not_active Ceased
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002007030A (ja) * | 2000-06-16 | 2002-01-11 | Olympus Optical Co Ltd | 運動検出装置及び操作入力装置 |
JP2004157850A (ja) * | 2002-11-07 | 2004-06-03 | Olympus Corp | 運動検出装置 |
JP2009031295A (ja) * | 2008-08-05 | 2009-02-12 | Olympus Corp | 移動体姿勢検出装置 |
Non-Patent Citations (1)
Title |
---|
See also references of EP3188128A4 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110235465A (zh) * | 2017-01-23 | 2019-09-13 | 瑞典爱立信有限公司 | 用于FeMTC和eNB-IoT的SC-MCCH片段调度 |
CN110235465B (zh) * | 2017-01-23 | 2022-08-12 | 瑞典爱立信有限公司 | 用于FeMTC和eNB-IoT的SC-MCCH片段调度 |
US11765554B2 (en) | 2017-01-23 | 2023-09-19 | Telefonaktiebolaget Lm Ericsson (Publ) | SC-MCCH segment scheduling for FeMTC and eNB-IoT |
WO2020137313A1 (ja) | 2018-12-28 | 2020-07-02 | パナソニックIpマネジメント株式会社 | 位置測定装置 |
Also Published As
Publication number | Publication date |
---|---|
US20170206666A1 (en) | 2017-07-20 |
EP3188128A4 (en) | 2018-08-15 |
US10169880B2 (en) | 2019-01-01 |
JP2016045874A (ja) | 2016-04-04 |
EP3188128A1 (en) | 2017-07-05 |
CN106575437A (zh) | 2017-04-19 |
CN106575437B (zh) | 2020-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2016031105A1 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
US11861892B2 (en) | Object tracking by an unmanned aerial vehicle using visual sensors | |
US11948369B2 (en) | Visual-inertial positional awareness for autonomous and non-autonomous mapping | |
US10390003B1 (en) | Visual-inertial positional awareness for autonomous and non-autonomous device | |
US20190121364A1 (en) | Fault-tolerance to provide robust tracking for autonomous and non-autonomous positional awareness | |
CN111344644B (zh) | 用于基于运动的自动图像捕获的技术 | |
JP6785385B2 (ja) | 周辺デバイスの視覚的追跡 | |
US11609428B2 (en) | Information processing apparatus and information processing method | |
EP3252714A1 (en) | Camera selection in positional tracking | |
WO2019155840A1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
WO2015093130A1 (ja) | 情報処理装置、情報処理方法およびプログラム | |
US10838515B1 (en) | Tracking using controller cameras | |
KR102190743B1 (ko) | 로봇과 인터랙션하는 증강현실 서비스 제공 장치 및 방법 | |
JP7103354B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
CN111028272A (zh) | 对象追踪方法及装置 | |
JP6789905B2 (ja) | 情報処理装置、情報処理方法、プログラムおよび通信システム | |
EP4207100A1 (en) | Method and system for providing user interface for map target creation | |
Botezatu et al. | Development of a versatile assistive system for the visually impaired based on sensor fusion | |
CN108366899A (zh) | 一种图像处理方法、系统以及智能导盲装置 | |
CN111344776B (zh) | 信息处理装置、信息处理方法和程序 | |
JP2021103410A (ja) | 移動体及び撮像システム | |
EP4102325A1 (en) | Method and system for collecting field operation situation and facility information | |
US20230245397A1 (en) | Information processing method, program, and system | |
JP2017225722A (ja) | 情報処理装置、プログラム、画像表示システム | |
JP2021086268A (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: 15835670 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15324067 Country of ref document: US |
|
REEP | Request for entry into the european phase |
Ref document number: 2015835670 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2015835670 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |