WO2018142580A1 - 表示制御装置および表示制御方法 - Google Patents

表示制御装置および表示制御方法 Download PDF

Info

Publication number
WO2018142580A1
WO2018142580A1 PCT/JP2017/003997 JP2017003997W WO2018142580A1 WO 2018142580 A1 WO2018142580 A1 WO 2018142580A1 JP 2017003997 W JP2017003997 W JP 2017003997W WO 2018142580 A1 WO2018142580 A1 WO 2018142580A1
Authority
WO
WIPO (PCT)
Prior art keywords
absolute position
unit
self
relative position
estimation unit
Prior art date
Application number
PCT/JP2017/003997
Other languages
English (en)
French (fr)
Inventor
川浦 健央
隆博 加島
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to PCT/JP2017/003997 priority Critical patent/WO2018142580A1/ja
Priority to JP2017533368A priority patent/JP6272572B1/ja
Publication of WO2018142580A1 publication Critical patent/WO2018142580A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C15/00Surveying instruments or accessories not provided for in groups G01C1/00 - G01C13/00
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance

Definitions

  • the present invention relates to video display technology, and more particularly to a technology for displaying video using AR (Augmented Reality).
  • a display control apparatus using an AR technology calculates the relative position of a device such as a display device by autonomous navigation based on a signal input from a sensor, and uses the absolute position of the device to calculate the relative position of the calculated device. It has been corrected.
  • the camera mounted on the device is instructed to capture an image based on the position / orientation detection error of the autonomous navigation device, and is included in the image captured based on the instruction.
  • the camera is instructed to take an image when larger than a predetermined threshold value.
  • Patent Document 1 has a problem that it is necessary to install a large number of markers in order to correct the relative position of the device calculated by autonomous navigation.
  • the present invention has been made to solve the above-described problems, and without using a marker, the relative position of the device calculated by autonomous navigation is corrected using the absolute position of the device, and the position of the device is corrected.
  • the purpose is to estimate.
  • the display control device includes a relative position calculation unit that calculates the relative position of the device from the detection information of the sensor by autonomous navigation, and performs matching between the captured image frame and the 3D map data.
  • the absolute position estimator that estimates the absolute position and the absolute position estimator estimates the absolute position of the device the absolute position is used to estimate the device's own position.
  • the apparatus includes a self-position estimating unit that estimates the self-position of the device using the relative position of the device calculated by the relative position calculating unit.
  • the present invention it is possible to estimate the position of the device by correcting the relative position of the device calculated by autonomous navigation using the absolute position of the device without installing a marker.
  • FIG. 1 is a block diagram illustrating a configuration of a display control device according to a first embodiment.
  • 2A and 2B are diagrams illustrating a hardware configuration example of the display control apparatus according to the first embodiment.
  • 3 is a flowchart showing an operation of the display control apparatus according to the first embodiment.
  • 3 is a diagram illustrating a coordinate system of an acceleration sensor that inputs sensor values to the display control apparatus according to Embodiment 1.
  • FIG. 4 is a flowchart illustrating an operation of a relative position calculation unit of the display control apparatus according to the first embodiment. 4 is a flowchart showing an operation of an absolute position estimation unit 102 of the display control apparatus according to the first embodiment.
  • FIG. 7A and 7B are diagrams illustrating image feature point acquisition processing of the absolute position estimation unit 102 of the display control apparatus according to Embodiment 1.
  • FIG. 8A, 8B, and 8C are diagrams illustrating matching images between the captured image and the three-dimensional map of the display control apparatus according to Embodiment 1.
  • FIG. 5 is a flowchart showing an operation of a self-position estimating unit of the display control device according to the first embodiment.
  • 10 is a flowchart illustrating an operation of an absolute position estimation unit 102 of the display control apparatus according to the second embodiment.
  • 10 is a flowchart showing an operation of a self-position estimating unit of the display control device according to the second embodiment.
  • 10 is a block diagram illustrating a configuration of a display control device according to Embodiment 3.
  • FIG. 14 is a flowchart showing the operation of the self-position estimation unit of the display control device according to the third embodiment.
  • FIG. 10 is a block diagram illustrating a configuration of a display control device according to a fourth embodiment. 10 is a flowchart showing the operation of the display control apparatus according to the fourth embodiment.
  • FIG. 10 is a block diagram illustrating a configuration of a display control device according to a fifth embodiment. 10 is a timing chart illustrating output timings of a relative position calculation unit and an absolute position estimation unit of a display control apparatus according to Embodiment 5. 10 is a flowchart illustrating an operation of the display control apparatus according to the fifth embodiment.
  • FIG. 1 is a block diagram showing a configuration of a display control apparatus 100 according to Embodiment 1 of the present invention.
  • the display control apparatus 100 includes a relative position calculation unit 101, an absolute position estimation unit 102, a 3D map database 103, a self-position estimation unit 104, an additional information generation unit 105, and a superimposition processing unit 106.
  • a device 200 including a sensor 201, a camera 202, and a display device 203 is connected to the display control apparatus 100.
  • the sensor 201 includes an acceleration sensor and a rotation sensor that detect acceleration and rotation applied to the device 200.
  • the sensor 201 outputs a sensor value as a detection result to the relative position calculation unit 101 of the display control device 100.
  • the camera 202 images the surroundings of the device 200.
  • the camera 202 outputs the captured image to the absolute position estimation unit 102 and the superimposition processing unit 106 of the display control device 100.
  • the display device 203 displays a video based on the video frame input from the superimposition processing unit 106 of the display control apparatus 100.
  • the relative position calculation unit 101 calculates the relative position of the device 200 by autonomous navigation based on the sensor value input from the sensor 201. Details of the relative position calculation unit 101 will be described later.
  • the absolute position estimation unit 102 performs matching between the video frame of the captured video input from the camera 202 and the 3D map data stored in the 3D map database 103 to estimate the absolute position of the device 200.
  • the absolute position estimation unit 102 estimates the absolute position of the device 200 by, for example, matching a video frame of a captured image of a landscape with 3D map data of the landscape. Note that matching is not limited to landscape video frames.
  • the three-dimensional map database 103 is a database that stores three-dimensional map data.
  • the self-position estimation unit 104 estimates the position of the device 200 (hereinafter referred to as self-position) using the relative position calculated by the relative position calculation unit 101 or the absolute position estimated by the absolute position estimation unit 102.
  • the self position estimation unit 104 estimates the absolute position as the self position.
  • the self-position estimation unit 104 is obtained by accumulating the relative position calculated by the relative position calculation unit 101 to the previously calculated self-position. Estimated position is self-position.
  • the additional information generation unit 105 generates an annotation video to be added to the video frame of the captured video captured by the camera 202 based on the self-position of the device 200 estimated by the self-position estimation unit 104.
  • the additional information generation unit 105 refers to a database or the like (not shown) that stores the positional information and the annotation video in association with each other, and generates the annotation video.
  • the superimposition processing unit 106 superimposes the annotation video generated by the additional information generation unit 105 on the video frame of the captured video input from the camera 202.
  • the superimposition processing unit 106 outputs a video frame on which the annotation video is superimposed to the display device 203.
  • 2A and 2B are diagrams illustrating a hardware configuration example of the display control apparatus 100.
  • the functions of the relative position calculation unit 101, the absolute position estimation unit 102, the self-position estimation unit 104, the additional information generation unit 105, and the superimposition processing unit 106 in the display control apparatus 100 are realized by a processing circuit. That is, the display control apparatus 100 includes a processing circuit for realizing the above functions.
  • the processing circuit may be a processing circuit 100a, which is dedicated hardware as shown in FIG. 2A, or a processor 100b that executes a program stored in the memory 100c as shown in FIG. 2B. Good.
  • the processing circuit 100a includes, for example, A single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-programmable Gate Array), or a combination thereof is applicable.
  • the functions of the respective units of the relative position calculation unit 101, the absolute position estimation unit 102, the self-position estimation unit 104, the additional information generation unit 105, and the superimposition processing unit 106 may be realized by a processing circuit. You may implement
  • the functions of each unit are software, firmware Or a combination of software and firmware.
  • Software or firmware is described as a program and stored in the memory 100c.
  • the processor 100b reads out and executes the program stored in the memory 100c, thereby causing each function of the relative position calculation unit 101, the absolute position estimation unit 102, the self-position estimation unit 104, the additional information generation unit 105, and the superimposition processing unit 106. Is realized.
  • the processor 100b is, for example, a CPU (Central Processing Unit), a processing device, an arithmetic device, a processor, a microprocessor, a microcomputer, or a DSP (Digital Signal Processor).
  • the memory 100c may be, for example, a nonvolatile or volatile semiconductor memory such as a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable ROM), or an EEPROM (Electrically EPROM). Further, it may be a magnetic disk such as a hard disk or a flexible disk, or an optical disk such as a mini disk, CD (Compact Disc), or DVD (Digital Versatile Disc).
  • the processing circuit 100a in the display control apparatus 100 can realize the above-described functions by hardware, software, firmware, or a combination thereof.
  • FIG. 3 is a flowchart showing the operation of the display control apparatus 100 according to the first embodiment.
  • the relative position calculation unit 101 calculates the relative position of the corresponding device 200 by autonomous navigation (step ST1).
  • the relative position calculation unit 101 outputs the calculated relative position of the device 200 to the self-position estimation unit 104.
  • the absolute position estimation unit 102 performs matching between the video frame and the 3D map data stored in the 3D map database 103, and the absolute position of the device 200. Is estimated (step ST2).
  • the absolute position estimation unit 102 outputs the estimated absolute position of the device 200 to the self-position estimation unit 104.
  • the self-position estimation unit 104 determines the self-position of the device 200. Estimate (step ST3).
  • the self-position estimation unit 104 outputs the estimated self-position of the device 200 to the additional information generation unit 105.
  • the additional information generation unit 105 generates an annotation video to be added to the video frame of the captured video based on the self-position of the device 200 estimated in step ST3 (step ST4).
  • the superimposition processing unit 106 superimposes the annotation video generated in step ST4 on the video frame of the captured video input from the camera 202 (step ST5).
  • the superimposition processing unit 106 outputs the video frame on which the annotation video is superimposed in step ST5 to the display device 203 (step ST6), and ends the process.
  • FIG. 4 is a diagram illustrating a coordinate system of an acceleration sensor that inputs sensor values to the display control apparatus 100 according to the first embodiment.
  • the display device 203 is described as an example of the device 200.
  • FIG. 5 is a flowchart showing the operation of the relative position calculation unit 101 of the display control apparatus 100 according to the first embodiment.
  • the sensor value indicating the rotation of the device 200 (display device 203) is set to roll in which the direction in which the Y axis is inclined toward the Z axis is positive, and the Z axis is the X axis.
  • a direction that tilts in the direction is defined as positive, azimuth, and a direction that tilts the X-axis toward the Y-axis is defined as positive.
  • the relative position calculation unit 101 stores the initial posture of the device 200 while the device 200 is stationary (step ST11).
  • the relative position calculation unit 101 stores the gravitational acceleration components of the X, Y, and Z axes in the initial posture (step ST12).
  • the relative position calculation unit 101 virtually calculates the sensor values indicating the X, Y, and Z-axis accelerations in the current posture of the device 200 while the device 200 is moving, in the X, Y, and Z axes of the initial posture.
  • the relative position calculation unit 101 obtains a pitch rotation matrix, a roll rotation matrix, and an azimuth rotation matrix using the change angle ⁇ obtained in step ST13 (step ST14).
  • the relative position calculation unit 101 obtains a pitch rotation matrix based on the following equation (2).
  • the relative position calculation unit 101 obtains a roll rotation matrix based on the following equation (3).
  • the relative position calculation unit 101 obtains an azimuth rotation matrix based on the following equation (4).
  • the relative position calculation unit 101 uses the acceleration sensor values rawAx, rawAy, and rawAz of the posture in a state where the device 200 is moving based on the following equation (5) to determine the acceleration sensor values Ax, Ay, Conversion to Az (step ST15).
  • the relative position calculation unit 101 removes the gravitational accelerations G0x, G0y, G0z in the initial posture from the acceleration sensor values Ax, Ay, Az in the initial posture converted in step ST15, as shown in the following equation (6),
  • the X, Y, and Z axis accelerations ax, ay, and az of the device 200 in the initial posture are calculated (step ST16).
  • the relative position calculation unit 101 double-integrates the X, Y, and Z axis accelerations ax, ay, and az of the device 200 in the initial posture calculated in step ST16, and calculates the relative positions dx, dy, and dz of the device 200. (Step ST17).
  • the relative position calculation unit 101 outputs the relative positions dx, dy, dz of the device 200 calculated in step ST17 to the self-position estimation unit 104 (step ST18). Thereafter, the relative position calculation unit 101 determines whether or not to continue calculating the relative position of the device 200 (step ST19). When the calculation is continued (step ST19; YES), the processing returns to step ST13 and the above-described processing is repeated. On the other hand, when the calculation is not continued (step ST19; NO), the process is terminated.
  • FIG. 6 is a flowchart showing the operation of the absolute position estimation unit 102 of the display control apparatus 100 according to the first embodiment.
  • FIG. 7 is a diagram illustrating an image feature point acquisition process of the absolute position estimation unit 102 of the display control apparatus 100 according to the first embodiment.
  • FIG. 8 is a diagram illustrating an image of matching between a video frame of a captured video and a three-dimensional map of the display control apparatus 100 according to the first embodiment.
  • the absolute position estimation unit 102 acquires image feature points of the video frame of the captured video input from the camera 202 (step ST21).
  • FIG. 7 shows a process in which the absolute position estimation unit 102 acquires image feature points.
  • FIG. 7A shows a video frame of the camera 202
  • FIG. 7B shows an image feature point determination process in the video frame.
  • the absolute position estimation unit 102 pays attention to the pixel P in the region O (hereinafter referred to as the attention pixel P, see FIG. 7B). It is determined whether or not a certain number of pixels that are brighter or darker than the target pixel P are continuously present in the peripheral pixels Q located around the target pixel P.
  • the absolute position estimation unit 102 is continuously larger than the target pixel P based on the peripheral pixel Qr in the range indicated by the arrow R among the peripheral pixels Q positioned around the target pixel P. It is determined that there are more than the number of bright pixels (for example, 9 for a fixed number of 5). The absolute position estimation unit 102 acquires the target pixel P as an image feature point based on the determination result.
  • FIG. 8A is the video frame shown in FIG. 7A.
  • FIG. 8B shows 3D map data.
  • the three-dimensional map data is point cloud data having X, Y, and Z coordinate values per point.
  • FIG. 8C is a diagram showing a relationship among the position 202a of the camera 202, the projection plane 202b of the camera 202, and the 3D map data 202c. As shown in FIG.
  • the absolute position estimation unit 102 randomly selects n image feature points from the image feature points acquired in step ST21, and repeatedly performs the processing from step ST23 to step ST25 on the selected n image feature points. .
  • the absolute position estimation unit 102 obtains the two-dimensional coordinates (u ′, v ′) of the image feature points obtained from the image feature points calculated in step ST25 and the two-dimensional coordinates (u, v ′) of the image feature points searched in step ST22.
  • the difference from v) is substantially the same among the n image feature points, it is determined in step ST26 whether or not the difference is equal to or less than a threshold value.
  • the absolute position estimation unit 102 again selects n image feature points at random from the image feature points acquired in step ST21.
  • the absolute position estimation unit 102 repeatedly performs the above-described processing on n image feature points that have been selected again.
  • FIG. 9 is a flowchart showing the operation of the self-position estimation unit 104 of the display control apparatus 100 according to the first embodiment.
  • the self-position estimating unit 104 determines whether or not the absolute position (X1) of the device 200 is input from the absolute position estimating unit 102 (step ST31).
  • the self-position estimation unit 104 sets the input absolute position (X1) of the device 200 as the self-position (X) (step ST32).
  • the self-position estimating unit 104 further determines whether or not the relative position (X2) of the device 200 is input (step ST31). ST33).
  • the self-position estimation unit 104 When the relative position (X2) of the device 200 is input (step ST33; YES), the self-position estimation unit 104 cumulatively adds the relative position (X2) of the device 200 to the previous self-position (Xpre). The self position (X) is calculated (step ST34). On the other hand, when the relative position (X2) of the device 200 is not input (step ST33; NO), the self-position estimation unit 104 calculates the self-position (X) by applying the previous self-position (Xpre) as it is. (Step ST35). The self-position estimation unit 104 outputs the self-position (X) set in step ST32, step ST34, or step ST35 to the additional information generation unit 105 as the self-position of the device 200 (step ST36), and ends the process.
  • the relative position calculation unit 101 that calculates the relative position of the device from the detection information of the sensor by autonomous navigation, and the matching between the captured video frame and the 3D map data are performed. If the absolute position of the device is estimated, the absolute position of the device is estimated using the absolute position, and the absolute position of the device is not estimated. In this case, since the self-position estimation unit 104 that estimates the self-position of the device using the relative position of the device calculated by the relative position calculation unit 101 is provided, the video frame of the captured video and the 3D map By matching with, information on the self-position of the target device can be obtained. Thereby, the relative position calculated by autonomous navigation can be corrected using the absolute position without installing a large number of markers.
  • FIG. The second embodiment shows a configuration for estimating the self-position of the device 200 based on the number of image feature points.
  • the configuration of the display control apparatus 100 according to the second embodiment is the same as that of the display control apparatus 100 according to the first embodiment shown in FIG. Also.
  • Each configuration of the display control apparatus 100 according to the second embodiment will be described using the same reference numerals as those used in the first embodiment.
  • the absolute position estimation unit 102 measures the number of image feature points acquired from the video frame of the captured video input from the camera 202 in addition to the processing shown in the first embodiment.
  • the absolute position estimation unit 102 outputs the measured number of image feature points to the self-position estimation unit 104.
  • the self-position estimation unit 104 refers to the number of image feature points input from the absolute position estimation unit 102, and when the number of the image feature points is a preset number n or more, the absolute position estimation unit 102 Is applied to the self-position of the device 200.
  • FIG. 10 is a flowchart showing the operation of the absolute position estimation unit 102 of the display control apparatus 100 according to the second embodiment. In the flowchart of FIG. 10, the same steps as those in the flowchart of the first embodiment shown in FIG.
  • the absolute position estimation unit 102 When the absolute position estimation unit 102 acquires the two-dimensional coordinates (u, v) of the image feature points in step ST22, the absolute position estimation unit 102 measures the number of the image feature points (step ST41). The absolute position estimation unit 102 performs the processing from step ST23 to step ST28, and outputs the absolute position of the device 200 estimated in step ST28 and the number of image feature points acquired in step ST41 to the self-position estimation unit 104 (step ST42), the process ends.
  • FIG. 11 is a flowchart showing the operation of the self-position estimation unit 104 of the display control apparatus 100 according to the second embodiment.
  • the same steps as those in the flowchart of the first embodiment shown in FIG. When the self-position estimating unit 104 determines that the absolute position (X1) of the device 200 is input in step ST31 (step ST31; YES), the number of image feature points measured by the absolute position estimating unit 102 is determined in advance. It is determined whether or not the set number is n or more (step ST51). When the number of image feature points is n or more (step ST51; YES), the process proceeds to step ST32. On the other hand, when the number of image feature points is less than n (step ST51; NO). The process proceeds to step ST33.
  • the absolute position estimation unit 102 measures the number of image feature points in a video frame
  • the self-position estimation unit 104 determines the number of measured image feature points. Since the device's self-position is estimated using the estimated absolute position of the device when the number is greater than the preset number, the video frame of the captured image is flat and there is an error in acquiring image feature points. Even in an environment in which an error is likely to occur, it is possible to suppress the occurrence of errors in the estimation of the self position of the device.
  • FIG. 12 is a block diagram showing a configuration of display control apparatus 100A according to the third embodiment.
  • the display control device 100A according to the third embodiment is configured by adding an illuminance information acquisition unit 107 to the display control device 100 according to the first embodiment shown in FIG. Moreover, it replaces with the self-position estimation part 104 of the display control apparatus 100 of Embodiment 1, and comprises the self-position estimation part 104a.
  • the same or corresponding parts as the components of the display control apparatus 100 according to the first embodiment are denoted by the same reference numerals as those used in the first embodiment, and the description thereof is omitted or simplified.
  • the illuminance information acquisition unit 107 acquires illuminance information indicating brightness around the device 200 from a sensor 201 such as an illuminance sensor of the device 200.
  • the illuminance information acquisition unit 107 outputs the acquired illuminance information to the self-position estimation unit 104a.
  • the self-position estimation unit 104a refers to the illuminance information input from the illuminance information acquisition unit 107, and when the illuminance is equal to or higher than the preset illuminance, the absolute position of the device 200 estimated by the absolute position estimation unit 102 is Applies to the self-position of the device 200.
  • the illuminance information acquisition unit 107 and the self-position estimation unit 104a in the display control apparatus 100A are a processor 100b that executes a program stored in the processing circuit 100a illustrated in FIG. 2A or the memory 100c illustrated in FIG. 2B.
  • FIG. 13 is a flowchart showing the operation of the self-position estimating unit 104a of the display control apparatus 100A according to the second embodiment.
  • step ST31 determines that the absolute position (X1) of the device 200 is input in step ST31 (step ST31; YES)
  • the illuminance indicated by the illuminance information input from the illuminance information acquisition unit 107 is Then, it is determined whether or not it is equal to or greater than a preset illuminance value (step ST52). If the illuminance is greater than or equal to the preset illuminance value (step ST52; YES), the process proceeds to step ST32. On the other hand, if the illuminance is less than the preset illuminance value (step ST52; NO), the process proceeds to step ST33.
  • the illuminance information acquisition unit 107 that acquires the illuminance information indicating the brightness of the surroundings of the device is provided, and the self-position estimation unit 104a has the illuminance information equal to or higher than the preset illuminance.
  • the self-position estimation unit 104a since the device's self-position is estimated using the estimated absolute position of the device, the periphery of the device that captures the video frame is dark, and an error is likely to occur in the acquisition of the image feature points. Even in the environment, it is possible to suppress the occurrence of errors in the estimation of the self-position of the device.
  • An environment in which an error is likely to occur in acquiring image feature points according to the illuminance around the device is, for example, night, shade, tunnel, and the like.
  • the configuration in which the illuminance information acquisition unit 107 is added and applied to the display control device 100 described in the first embodiment is described.
  • the illuminance information acquisition unit 107 may be added and applied.
  • FIG. 14 is a block diagram showing a configuration of display control apparatus 100B according to the fourth embodiment.
  • the display control apparatus 100B according to the fourth embodiment is configured by adding a threshold setting unit 108 to the display control apparatus 100 according to the first embodiment shown in FIG. Moreover, it replaces with the self-position estimation part 104 of the display control apparatus 100 of Embodiment 1, and comprises the self-position estimation part 104b.
  • the threshold setting unit 108 sets a threshold for the self-position estimation unit 104b for the purpose of restricting the adoption of the relative position calculated by the relative position calculation unit 101 and the absolute position estimated by the absolute position estimation unit 102.
  • the threshold setting unit 108 may determine the average value of the user's moving speed or the user's movement.
  • a value obtained by adding an error tolerance of several tens of percent to the average speed is set as a threshold value.
  • the allowable error value to be added is a value for excluding noise in the output value from the sensor 201 when a threshold value for the relative position of the device 200 is set.
  • the allowable error value to be added is a value for excluding image feature point extraction errors in the absolute position estimation unit 102 when a threshold for the absolute position of the device 200 is set.
  • the threshold setting method described above is an example, and the threshold setting unit 108 sets a threshold corresponding to a device or the like to which the display control device 100 is applied.
  • the self-position estimation unit 104b uses the calculated relative position when the difference between the relative position of the device 200 calculated by the relative position calculation unit 101 and the previously calculated relative position is equal to or less than the threshold ⁇ .
  • the self-position of the device 200 is estimated. If the difference between the absolute position of the device 200 estimated by the absolute position estimation unit 102 and the absolute position calculated last time is equal to or less than the threshold value ⁇ , the self-position estimation unit 104b uses the estimated absolute position. The self-position of the device 200 is estimated.
  • the threshold setting unit 108 and the self-position estimating unit 104b in the display control device 100B are a processor 100b that executes a program stored in the processing circuit 100a illustrated in FIG. 2A or the memory 100c illustrated in FIG. 2B.
  • FIG. 15 is a flowchart showing the operation of the self-position estimation unit 104b of the display control apparatus 100B according to the fourth embodiment. Note that it is assumed that the threshold value setting unit 108 sets the threshold value ⁇ and the threshold value ⁇ for the self-position estimation unit 104b before the processing of the flowchart of FIG. 15 is performed. Further, in the flowchart of FIG. 15, the same steps as those in the flowchart of the first embodiment shown in FIG.
  • the self-position estimating unit 104b determines that the absolute position (X1) of the device 200 is input in step ST31 (step ST31; YES)
  • the self-position estimating unit 104b calculates the absolute position (X1) and the absolute position (X1pre) calculated last time. It is determined whether or not the absolute value of the difference is equal to or less than the threshold value ⁇ set by the threshold value setting unit 108 (step ST61).
  • the self-position estimating unit 104b sets the absolute position (X1) as the self-position X of the device 200 (step ST32).
  • the self-position estimation unit 104b overwrites the previous absolute position (X1pre) with the current absolute position (X1) (step ST62). Thereafter, the flowchart proceeds to step ST36. On the other hand, if the absolute value of the difference is not less than or equal to the threshold value ⁇ (step ST61; NO), the process proceeds to step ST35.
  • step ST31 When it is determined that the absolute position (X1) is not input in step ST31 (step ST31; NO), the self-position estimation unit 104b determines whether or not the relative position (X2) of the device 200 is input. Perform (step ST33). When the relative position (X2) is input (step ST33; YES), the absolute value of the difference between the relative position (X2) and the previously calculated relative position (X2pre) is less than or equal to the threshold ⁇ set by the threshold setting unit 108. Is determined (step ST63).
  • step ST63; YES When the absolute value of the difference is equal to or less than the threshold ⁇ (step ST63; YES), the self-position estimating unit 104b calculates the self-position X of the device 200 by accumulating the relative position (X2) to the previous self-position Xpre. (Step ST34). The self-position estimation unit 104b overwrites the previous relative position (X2pre) with the current relative position (X2) (step ST64). Thereafter, the flowchart proceeds to step ST36. On the other hand, when the absolute value of the difference is not less than or equal to the threshold ⁇ (step ST63; NO), or when it is determined in step ST33 that the relative position (X2) is not input (step ST33; NO), the process of step ST35 is performed. move on.
  • a threshold setting unit configured to set a threshold, and the self-position estimation unit 104b, when the absolute position estimation unit 102 estimates the absolute position of the device, and the absolute position of the device estimated this time and the previously estimated device
  • the device's own position is estimated from the absolute position of the device estimated this time, and the absolute position estimation unit 102 does not estimate the absolute position of the device
  • the difference between the relative position of the device calculated this time in the relative position calculation unit 101 and the relative position of the device calculated last time is equal to or less than a set threshold value, Since it is configured to estimate the self-position of the device from the paired position, even if a calculation error occurs in the calculation of the relative position or the absolute position, the occurrence of an error in the self-position estimation of the device is suppressed.
  • the configuration in which the threshold setting unit 108 is added and applied to the display control device 100 described in the first embodiment is described.
  • the display control device 100 and the implementation described in the second embodiment are described.
  • the threshold setting unit 108 may be added to the display control device 100A shown in the third embodiment.
  • FIG. 16 is a block diagram showing a configuration of display control apparatus 100C according to the fifth embodiment.
  • the display control apparatus 100C according to the fifth embodiment is configured by adding a processing time counting unit 109 and a buffer control unit 110 to the display control apparatus 100 according to the first embodiment shown in FIG.
  • the sensor 201 outputs the sensor value to the relative position calculation unit 101 in synchronization with the video frame signal of the camera 202.
  • the relative position calculation unit 101 performs processing for calculating the relative position of the device 200 as in the first embodiment.
  • the absolute position estimation unit 102 performs a process of calculating the absolute position of the device 200 as in the first embodiment.
  • the camera 202 outputs the video frame of the captured video to the buffer control unit 110 described later in addition to the absolute position estimation unit 102.
  • the processing time counting unit 109 monitors the relative position calculation unit 101, calculates a relative position after the sensor value is input from the sensor 201, and calculates a time ⁇ t 1 until the calculated relative position is output to the buffer control unit 110. Count.
  • the processing time counting unit 109 monitors the absolute position estimation unit 102, calculates the absolute position after the video frame is input from the camera 202, and outputs a time ⁇ t2 until the calculated absolute position is output to the buffer control unit 110. Count.
  • the processing time counting unit 109 outputs the counted time ⁇ t1 and time ⁇ t2 to the buffer control unit 110.
  • FIG. 17 is a timing chart illustrating output timings of the relative position calculation unit 101 and the absolute position estimation unit 102 of the display control apparatus 100C according to the fifth embodiment.
  • the output of sensor values and the output of video frames are indicated by frames 1 to F5.
  • the relative position output calculated by the relative position calculation unit 101 based on the sensor value output in the frame F1 is an output F1a.
  • the output of the relative position calculated by the relative position calculation unit 101 based on the sensor value output in the frame F2 is an output F2a.
  • the output timing of the output F1a is a time ⁇ t1 after the sensor value indicated by the frame F1 is output
  • the output timing of the output F2a is a time ⁇ t1 after the sensor value indicated by the frame F2 is output.
  • the output of the absolute position estimated by the absolute position estimation unit 102 based on the video frame output in the frame F1 is the output F1b.
  • the output of the absolute position estimated by the absolute position estimation unit 102 based on the video frame output in the frame F4 is an output F4b.
  • the output timing of the output F1b is a time ⁇ t2 after the video frame indicated by the frame F1 is output
  • the output timing of the output F4b is a time ⁇ t2 after the video frame indicated by the frame F4 is output.
  • the difference between the output F1b and the output F1a and the difference between the output F4b and the output F4a are represented by time ( ⁇ t2 ⁇ t1).
  • the output F1b that is the output of the absolute position of the absolute position estimation unit 102 is used as a reference
  • the output F1a that is the output of the relative position of the corresponding relative position calculation unit 101 is an output that goes back by time ( ⁇ t2 ⁇ t1) from the output F1b. It becomes.
  • the buffer control unit 110 temporarily stores the relative position input from the relative position calculation unit 101 and the absolute position input from the absolute position estimation unit 102.
  • the buffer control unit 110 temporarily stores a video frame of a captured video input from the camera 202.
  • the buffer control unit 110 sets the stored absolute position as a reference.
  • the buffer control unit 110 is calculated from the sensor value output at the same output timing as the video frame at the absolute position set as the reference.
  • the relative position is output to the self-position estimation unit 104. Further, the buffer control unit 110 outputs the video frame used when estimating the reference absolute position to the superimposition processing unit 106.
  • the processing time counting unit 109 and the buffer control unit 110 in the display control apparatus 100C are a processor 100b that executes a program stored in the processing circuit 100a illustrated in FIG. 2A or the memory 100c illustrated in FIG. 2B.
  • FIG. 18 is a flowchart showing the operation of the display control apparatus 100C according to the fifth embodiment.
  • the same steps as those in the flowchart of the first embodiment shown in FIG. When the sensor value is input from the sensor 201 in synchronization with the video frame of the camera 202, the relative position calculation unit 101 calculates the relative position of the corresponding device 200 by autonomous navigation (step ST1a). The relative position calculation unit 101 outputs the calculated relative position of the device 200 to the buffer control unit 110.
  • the absolute position estimation unit 102 When the video frame of the captured video is input from the camera 202, the absolute position estimation unit 102 performs matching with the 3D map data stored in the 3D map database 103, and estimates the absolute position of the device 200 (step) ST2). The absolute position estimation unit 102 outputs the estimated absolute position of the device 200 to the buffer control unit 110.
  • the processing time counting unit 109 counts the time ⁇ t1 required for the processing in step ST1 and the time ⁇ t2 required for the processing in step ST2, and outputs the counted time to the buffer control unit 110 (step ST71). Based on the time ⁇ t1 and the time ⁇ t2 input in step ST71, the buffer control unit 110 outputs an output that goes back the time ( ⁇ t2 ⁇ t1) from the absolute position with reference to the absolute position most recently estimated by the absolute position estimation unit 102.
  • the relative position is specified (step ST72).
  • Buffer control section 110 outputs the absolute position and the relative position specified in step ST72 to self position estimation section 104. Further, the buffer control unit 110 outputs the video frame used when estimating the reference absolute position to the superimposition processing unit 106 (step ST73). Thereafter, the flowchart proceeds to the process of step ST3.
  • the time required for the relative position calculation to calculate the relative position and the time required for the absolute position estimation unit 102 to calculate the absolute position are counted.
  • the time counter 109 and the relative position calculated by the relative position calculator 101, the absolute position estimated by the absolute position estimator 102, and the video frame are temporarily stored.
  • the self-position of the device can be estimated.
  • AR display can be performed by superimposing annotation video that is not shifted from the video frame.
  • the configuration in which the processing time counting unit 109 and the buffer control unit 110 are added and applied to the display control apparatus 100 described in the first embodiment has been described.
  • the display control device 100 and the display control device 100A shown in the third embodiment and the display control device 100B shown in the fourth embodiment may be applied.
  • the present invention can freely combine each embodiment, modify any component of each embodiment, or omit any component of each embodiment. It is.
  • the display control device can be applied to a navigation system and the like because it can estimate the self-position of the device using the relative position calculated by autonomous navigation without reading the absolute position information included in the marker. It is suitable for realizing self-position estimation while suppressing an increase in system construction cost.
  • 100, 100A, 100B, 100C Display control device 101 Relative position calculation unit, 102 Absolute position estimation unit, 103 Three-dimensional map database 103, 104, 104a, 104b Self-position estimation unit, 105 Additional information generation unit, 106 Superimposition processing unit 107 illuminance information acquisition unit, 108 threshold setting unit, 109 processing time counting unit, 110 buffer control unit, 200 device, 201 sensor, 202 camera, 203 display device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Navigation (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

センサ(201)の検知情報から機器(200)の相対位置を自律航法により算出する相対位置算出部(101)と、撮像された映像フレームと三次元地図データとのマッチングを行い、機器の絶対位置を推定する絶対位置推定部(102)と、機器の絶対位置が推定された場合には、当該絶対位置を用いて機器の自己位置を推定し、機器の絶対位置が推定されなかった場合には、機器の相対位置を用いて機器の自己位置を推定する自己位置推定部(104)とを備える。

Description

表示制御装置および表示制御方法
 この発明は、映像表示技術に関し、特にAR(Augmented Reality:AR(拡張現実))を用いて映像を表示する技術に関するものである。
 従来、現実映像にバーチャルな付加映像を加えて表示するAR技術を用いた表示制御装置が開発されている。AR技術を用いた表示制御装置は、センサから入力された信号に基づいて、表示デバイス等の機器の相対位置を自律航法で計算し、計算した機器の相対位置を、機器の絶対位置を用いて修正している。
 例えば、特許文献1に開示された位置方位検出装置では、自律航法装置の位置方位検出誤差に基づいて機器に搭載されたカメラに撮像を指示し、当該指示に基づいて撮像された画像に含まれるマークの幾何形状に基づいた機器の相対位置と相対方位を算出し、位置情報、方位情報、相対位置、および相対方位に基づいて、機器の絶対位置と絶対方位とを算出し、位置方位誤差が予め定められた閾値より大きい場合にカメラに撮像を指示するように構成している。
特開2016-109619号公報
 しかし、上述した特許文献1に開示された技術では、自律航法で計算した機器の相対位置を修正するためには、多数のマーカを設置する必要があるという課題があった。
 この発明は、上記のような課題を解決するためになされたもので、マーカを設置することなく、自律航法で計算した機器の相対位置を機器の絶対位置を用いて修正し、機器の位置を推定することを目的とする。
 この発明に係る発明の表示制御装置は、センサの検知情報から機器の相対位置を自律航法により算出する相対位置算出部と、撮像された映像フレームと三次元地図データとのマッチングを行い、機器の絶対位置を推定する絶対位置推定部と、絶対位置推定部が機器の絶対位置を推定した場合には、当該絶対位置を用いて機器の自己位置を推定し、絶対位置推定部が機器の絶対位置を推定しなかった場合には、相対位置算出部が算出した機器の相対位置を用いて機器の自己位置を推定する自己位置推定部とを備えるものである。
 この発明によれば、マーカを設置することなく、自律航法で計算した機器の相対位置を機器の絶対位置を用いて修正し、機器の位置を推定することができる。
実施の形態1に係る表示制御装置の構成を示すブロック図である。 図2A、図2Bは、実施の形態1に係る表示制御装置のハードウェア構成例を示す図である。 実施の形態1に係る表示制御装置の動作を示すフローチャートである。 実施の形態1に係る表示制御装置にセンサ値を入力する加速度センサの座標系を示す図である。 実施の形態1に係る表示制御装置の相対位置算出部の動作を示すフローチャートである。 実施の形態1に係る表示制御装置の絶対位置推定部102の動作を示すフローチャートである。 図7A、図7Bは、実施の形態1に係る表示制御装置の絶対位置推定部102の画像特徴点の取得処理を示す図である。 図8A、図8B、図8Cは、実施の形態1に係る表示制御装置の撮像映像と三次元地図のマッチングのイメージを示す図である。 実施の形態1に係る表示制御装置の自己位置推定部の動作を示すフローチャートである。 実施の形態2に係る表示制御装置の絶対位置推定部102の動作を示すフローチャートである。 実施の形態2に係る表示制御装置の自己位置推定部の動作を示すフローチャートである。 実施の形態3に係る表示制御装置の構成を示すブロック図である。 実施の形態3に係る表示制御装置の自己位置推定部の動作を示すフローチャートである。 実施の形態4に係る表示制御装置の構成を示すブロック図である。 実施の形態4に係る表示制御装置の動作を示すフローチャートである。 実施の形態5に係る表示制御装置の構成を示すブロック図である。 実施の形態5に係る表示制御装置の相対位置算出部と絶対位置推定部との出力タイミングを示すタイミングチャートである。 実施の形態5に係る表示制御装置の動作を示すフローチャートである。
 以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態1.
 図1は、この発明の実施の形態1に係る表示制御装置100の構成を示すブロック図である。
 表示制御装置100は、相対位置算出部101、絶対位置推定部102、三次元地図データベース103、自己位置推定部104、付加情報生成部105および重畳処理部106を備えて構成される。
 また、図1に示すように、表示制御装置100には、センサ201、カメラ202および表示デバイス203を備えた機器200が接続されている。
 まず、センサ201は、機器200に加わる加速度および回転等を検知する加速度センサおよび回転センサ等で構成される。センサ201は、検知結果であるセンサ値を表示制御装置100の相対位置算出部101に出力する。カメラ202は、機器200の周囲を撮像する。カメラ202は、撮像した撮像映像を表示制御装置100の絶対位置推定部102および重畳処理部106に出力する。表示デバイス203は、表示制御装置100の重畳処理部106から入力された映像フレームに基づいて、映像を表示する。
 次に、表示制御装置100の各構成について説明する。
 相対位置算出部101は、センサ201から入力されるセンサ値に基づいて、機器200の相対位置を自律航法で計算する。なお、相対位置算出部101の詳細は後述する。絶対位置推定部102は、カメラ202から入力される撮像映像の映像フレームと、三次元地図データベース103に格納された三次元地図データとのマッチングを行い、機器200の絶対位置を推定する。絶対位置推定部102は、例えば、風景の撮像映像の映像フレームと、風景の三次元地図データとのマッチングを行い、機器200の絶対位置を推定する。なお、マッチングは風景の映像フレームに限定されるものではない。三次元地図データベース103は、三次元地図データを格納するデータベースである。
 自己位置推定部104は、相対位置算出部101が算出した相対位置、または絶対位置推定部102が推定した絶対位置を用いて、機器200の位置(以下、自己位置と記載する)を推定する。自己位置推定部104は、絶対位置推定部102が推定した絶対位置が入力された場合には、当該絶対位置を自己位置と推定する。自己位置推定部104は、絶対位置推定部102が推定した絶対位置が入力されていない場合には、相対位置算出部101が算出した相対位置を、前回算出した自己位置に累積加算して得られた位置を自己位置と推定する。
 付加情報生成部105は、自己位置推定部104が推定した機器200の自己位置に基づいて、カメラ202が撮像した撮像映像の映像フレームに付加すべきアノテーション映像を生成する。付加情報生成部105は、位置情報とアノテーション映像とを対応付けて記憶したデータベース等(図示しない)を参照し、アノテーション映像を生成する。重畳処理部106は、カメラ202から入力される撮像映像の映像フレームに、付加情報生成部105が生成したアノテーション映像を重畳する。重畳処理部106は、アノテーション映像を重畳した映像フレームを、表示デバイス203に出力する。
 次に、表示制御装置100のハードウェア構成例を説明する。
 図2Aおよび、図2Bは、表示制御装置100のハードウェア構成例を示す図である。
 表示制御装置100における相対位置算出部101、絶対位置推定部102、自己位置推定部104、付加情報生成部105および重畳処理部106の各機能は、処理回路により実現される。即ち、表示制御装置100は、上記各機能を実現するための処理回路を備える。当該処理回路は、図2Aに示すように専用のハードウェアである処理回路100aであってもよいし、図2Bに示すようにメモリ100cに格納されているプログラムを実行するプロセッサ100bであってもよい。
 図2Aに示すように相対位置算出部101、絶対位置推定部102、自己位置推定部104、付加情報生成部105および重畳処理部106が専用のハードウェアである場合、処理回路100aは、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field-programmable Gate Array)、またはこれらを組み合わせたものが該当する。相対位置算出部101、絶対位置推定部102、自己位置推定部104、付加情報生成部105および重畳処理部106の各部の機能それぞれを処理回路で実現してもよいし、各部の機能をまとめて1つの処理回路で実現してもよい。
 図2Bに示すように、相対位置算出部101、絶対位置推定部102、自己位置推定部104、付加情報生成部105および重畳処理部106がプロセッサ100bである場合、各部の機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアまたはファームウェアはプログラムとして記述され、メモリ100cに格納される。プロセッサ100bは、メモリ100cに記憶されたプログラムを読み出して実行することにより、相対位置算出部101、絶対位置推定部102、自己位置推定部104、付加情報生成部105および重畳処理部106の各機能を実現する。即ち、相対位置算出部101、絶対位置推定部102、自己位置推定部104、付加情報生成部105および重畳処理部106は、プロセッサ100bにより実行されるときに、後述する図3、図5、図6、図9および図10に示す各ステップが結果的に実行されることになるプログラムを格納するためのメモリ100cを備える。また、これらのプログラムは、相対位置算出部101、絶対位置推定部102、自己位置推定部104、付加情報生成部105および重畳処理部106の手順または方法をコンピュータに実行させるものであるともいえる。
 ここで、プロセッサ100bとは、例えば、CPU(Central Processing Unit)、処理装置、演算装置、プロセッサ、マイクロプロセッサ、マイクロコンピュータ、またはDSP(Digital Signal Processor)などのことである。
 メモリ100cは、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(Electrically EPROM)等の不揮発性または揮発性の半導体メモリであってもよいし、ハードディスク、フレキシブルディスク等の磁気ディスクであってもよいし、ミニディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)等の光ディスクであってもよい。
 なお、相対位置算出部101、絶対位置推定部102、自己位置推定部104、付加情報生成部105および重畳処理部106の各機能について、一部を専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。このように、表示制御装置100における処理回路100aは、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって、上述の各機能を実現することができる。
 次に、表示制御装置100の動作について説明する。
 図3は、実施の形態1に係る表示制御装置100の動作を示すフローチャートである。
 相対位置算出部101は、センサ201からセンサ値が入力されると、対応する機器200の相対位置を自律航法で計算する(ステップST1)。相対位置算出部101は算出した機器200の相対位置を自己位置推定部104に出力する。絶対位置推定部102は、カメラ202から撮像映像の映像フレームが入力されると、当該映像フレームと、三次元地図データベース103に格納された三次元地図データとのマッチングを行い、機器200の絶対位置を推定する(ステップST2)。絶対位置推定部102は、推定した機器200の絶対位置を自己位置推定部104に出力する。
 自己位置推定部104は、ステップST1で計算された機器200の相対位置、およびステップST2で推定された機器200の絶対位置のうちの少なくともいずれか1つが入力されると、機器200の自己位置を推定する(ステップST3)。自己位置推定部104は、推定した機器200の自己位置を付加情報生成部105に出力する。付加情報生成部105は、ステップST3で推定された機器200の自己位置に基づいて、撮像映像の映像フレームに付加すべきアノテーション映像を生成する(ステップST4)。重畳処理部106は、ステップST4で生成されたアノテーション映像を、カメラ202から入力された撮像映像の映像フレームに重畳する(ステップST5)。重畳処理部106は、ステップST5でアノテーション映像を重畳した映像フレームを、表示デバイス203に出力し(ステップST6)、処理を終了する。
 次に、図3のフローチャートのステップST1の処理を、図4および図5を参照しながらより詳細に説明する。
 図4は、実施の形態1に係る表示制御装置100にセンサ値を入力する加速度センサの座標系を示す図である。図4では、機器200として表示デバイス203を例に記載している。
 図5は、実施の形態1に係る表示制御装置100の相対位置算出部101の動作を示すフローチャートである。
 図4に示した加速度センサの座標系において、機器200(表示デバイス203)の回転を示すセンサ値を、Y軸をZ軸の方に傾けるような方向を正としてroll、Z軸をX軸の方に傾けるような方向を正としてazimuth、X軸をY軸の方に傾けるような方向を正としてpitchとして定義する。
 まず、相対位置算出部101は、機器200が静止している状態において、機器200の初期姿勢を記憶する(ステップST11)。相対位置算出部101は、当該初期姿勢における重力加速度のX、Y、Z軸の重力加速度の成分を記憶する(ステップST12)。相対位置算出部101は、機器200が移動している状態において、現在の機器200の姿勢におけるX、Y、Z軸の加速度を示すセンサ値を、仮想的に初期姿勢のX、Y、Z軸の加速度Ax、Ay、Azに変換するために、回転のセンサ値を使用する。回転のセンサ値は、角速度ωi(但し、i= pitch、roll、azimuth)であるため、相対位置算出部101は、入力された回転のセンサ値を、以下の式(1)に基づいて積分し、初期姿勢からの変化角度θを算出する(ステップST13)。
Figure JPOXMLDOC01-appb-I000001
 相対位置算出部101は、ステップST13で求めた変化角度θを用いて、pitchの回転行列、rollの回転行列、azimuthの回転行列を求める(ステップST14)。
 相対位置算出部101は、ステップST14において、以下の式(2)に基づいてpitchの回転行列を求める。また、ステップST14において、相対位置算出部101は、以下の式(3)に基づいてrollの回転行列を求める。また、相対位置算出部101は、ステップST14において、以下の式(4)に基づいてazimuthの回転行列を求める。
Figure JPOXMLDOC01-appb-I000002

Figure JPOXMLDOC01-appb-I000003

Figure JPOXMLDOC01-appb-I000004
 相対位置算出部101は、機器200が移動している状態の姿勢の加速度のセンサ値rawAx、rawAy、rawAzを、以下の式(5)に基づいて、初期姿勢における加速度のセンサ値Ax、Ay、Azに変換する(ステップST15)。
Figure JPOXMLDOC01-appb-I000005
 相対位置算出部101は、以下の式(6)に示すように、ステップST15で変換した初期姿勢における加速度のセンサ値Ax、Ay、Azから初期姿勢の重力加速度G0x、G0y、G0zを除去し、初期姿勢における機器200のX、Y、Z軸の加速度ax,ay,azを算出する(ステップST16)。
Figure JPOXMLDOC01-appb-I000006
 相対位置算出部101は、ステップST16で算出した初期姿勢における機器200のX、Y、Z軸の加速度ax,ay,azを二重積分し、機器200の相対位置dx、dy、dzを算出する(ステップST17)。
 相対位置算出部101は、ステップST17で算出した機器200の相対位置dx、dy、dzを、自己位置推定部104に出力する(ステップST18)。
 その後、相対位置算出部101は、機器200の相対位置の算出を継続するか否か判定を行う(ステップST19)。算出を継続する場合(ステップST19;YES)、ステップST13の処理に戻り、上述した処理を繰り返す。一方、算出を継続しない場合(ステップST19;NO)、処理を終了する。
 次に、図3のフローチャートのステップST2の処理を、図6および図7を参照しながらより詳細に説明する。
 図6は、実施の形態1に係る表示制御装置100の絶対位置推定部102の動作を示すフローチャートである。
 図7は、実施の形態1に係る表示制御装置100の絶対位置推定部102の画像特徴点の取得処理を示す図である。
 図8は、実施の形態1に係る表示制御装置100の撮像映像の映像フレームと三次元地図のマッチングのイメージを示す図である。
 図6のフローチャートにおいて、絶対位置推定部102は、カメラ202から入力された撮像映像の映像フレームの画像特徴点を取得する(ステップST21)。絶対位置推定部102が画像特徴点を取得する処理を図7に示している。
 図7Aはカメラ202の映像フレームを示し、図7Bは当該映像フレームにおける画像特徴点の判定処理を示している。
 絶対位置推定部102は、例えば図7Aに示す映像フレームが入力された場合、領域O内の画素Pに注目する(以下、注目画素Pと記載する、図7B参照)。注目画素Pを中心として、周囲に位置する周辺画素Qに、連続して一定個数以上、注目画素Pよりも明るいまたは暗い画素が存在するか否か判定する。図7Bの例では、絶対位置推定部102は、注目画素Pの周囲に位置する周辺画素Qの内、矢印Rで示した範囲の周辺画素Qrに基づいて、注目画素Pよりも連続して一定個数以上(例えば、一定個数の5個に対して、9個)の明るい画素が存在すると判定する。絶対位置推定部102は、当該判定結果に基づいて、注目画素Pを画像特徴点として取得する。
 次に、図8を参照して、撮像映像の映像フレームと三次元地図のマッチングイメージについて説明する。
 図8Aは、図7Aで示した映像フレームである。図8Bは三次元地図データを示す図である。三次元地図データは、1点あたりにX,Y,Z座標の値を有する点群データである。図8Cは、カメラ202の位置202aと、カメラ202の投影面202bと、三次元地図データ202cとの関係を示した図である。
 図8Cに示すように、カメラ202の位置202aを[R|t]とした場合、当該カメラ202の投影面202b上の画像特徴点Sの2次元座標(u,v)と、三次元地図データ202c上の点Tの三次元座標(X,Y,Z)は、以下の式(7)で示す関係を満たす。
Figure JPOXMLDOC01-appb-I000007
 なお、式(7)において、Aは、カメラ202の内部パラメータ、例えば画角、中心点等である。
Figure JPOXMLDOC01-appb-I000008
Figure JPOXMLDOC01-appb-I000009

Figure JPOXMLDOC01-appb-I000010
 上述した図10のフローチャートのステップST23からステップST26の具体的な処理内容を一例を挙げて説明する。なお、以下に示す処理は一例であり、適宜変更可能である。
 絶対位置推定部102は、ステップST21で取得した画像特徴点のうち、n個の画像特徴点をランダムに選択し、選択したn個の画像特徴点についてステップST23からステップST25の処理を繰り返し実施する。絶対位置推定部102は、ステップST25で算出した画像特徴点から得られた画像特徴点の2次元座標(u´,v´)と、ステップST22で検索した画像特徴点の2次元座標(u,v)との差分が、n個の画像特徴点の間でそれぞれほぼ同値である場合に、ステップST26において差分が閾値以下であるか否かの判定を行う。
 一方、ステップST25で算出した画像特徴点から得られた画像特徴点の2次元座標(u´,v´)と、ステップST22で検索した画像特徴点の2次元座標(u,v)との差分が、n個の画像特徴点の間でほぼ同値でなかった場合に、絶対位置推定部102は再びステップST21で取得した画像特徴点から、n個の画像特徴点をランダムに選択し直す。絶対位置推定部102は、選択し直したn個の画像特徴点に対して上述した処理を繰り返し実施する。
 次に、図3のフローチャートのステップST3の処理を、図9を参照しながらより詳細に説明する。
 図9は、実施の形態1に係る表示制御装置100の自己位置推定部104の動作を示すフローチャートである。図9のフローチャートでは、機器200の自己位置を推定するものとして説明する。
 自己位置推定部104は、絶対位置推定部102から、機器200の絶対位置(X1)が入力されているか否か判定を行う(ステップST31)。機器200の絶対位置(X1)が入力されている場合(ステップST31;YES)、自己位置推定部104は入力された機器200の絶対位置(X1)を、自己位置(X)とする(ステップST32)。一方、機器200の絶対位置(X1)が入力されていない場合(ステップST31;NO)、自己位置推定部104はさらに機器200の相対位置(X2)が入力されているか否か判定を行う(ステップST33)。
 機器200の相対位置(X2)が入力されている場合(ステップST33;YES)、自己位置推定部104は、前回の自己位置(Xpre)に、機器200の相対位置(X2)を累積加算して、自己位置(X)を算出する(ステップST34)。一方、機器200の相対位置(X2)が入力されていない場合(ステップST33;NO)、自己位置推定部104は、前回の自己位置(Xpre)をそのまま適用して自己位置(X)を算出する(ステップST35)。
 自己位置推定部104は、ステップST32、ステップST34またはステップST35で設定された自己位置(X)を、機器200の自己位置として付加情報生成部105に出力し(ステップST36)、処理を終了する。
 以上のように、この実施の形態1によれば、センサの検知情報から機器の相対位置を自律航法により算出する相対位置算出部101と、撮像された映像フレームと三次元地図データとのマッチングを行い、機器の絶対位置を推定する絶対位置推定部102と、機器の絶対位置が推定された場合には、当該絶対位置を用いて機器の自己位置を推定し、機器の絶対位置が推定されなかった場合には、相対位置算出部101が算出した機器の相対位置を用いて機器の自己位置を推定する自己位置推定部104とを備えるように構成したので、撮像映像の映像フレームと三次元地図とのマッチングにより、対象となる機器の自己位置の情報を得ることができる。これにより、多数のマーカを設置することなく、自律航法で算出した相対位置を、絶対位置を用いて修正することができる。
実施の形態2.
 この実施の形態2では、画像特徴点の数に基づいて機器200の自己位置を推定する構成を示す。
 なお、実施の形態2の表示制御装置100の構成は、図1で示した実施の形態1の表示制御装置100の構成と同一であるためブロック図の記載を省略する。また。実施の形態2の表示制御装置100の各構成は、実施の形態1で使用した符号と同一の符号を付して説明する。
 絶対位置推定部102は、実施の形態1で示した処理加えて、カメラ202から入力された撮像映像の映像フレームから取得した画像特徴点の数を計測する。絶対位置推定部102は、計測した画像特徴点の数を、自己位置推定部104に出力する。自己位置推定部104は、絶対位置推定部102から入力された画像特徴点の数を参照し、当該画像特徴点の数が、予め設定した個数n個以上である場合に、絶対位置推定部102が推定した機器200の絶対位置を、機器200の自己位置に適用する。
 次に、表示制御装置100の動作について説明する。
 表示制御装置100全体の動作は、実施の形態1の図3で示したフローチャートと同一であるため、説明を省略する。
 実施の形態1とは異なる処理を行う図3のフローチャートのステップST2の処理の詳細について、図10を参照しながら説明する。
 図10は、実施の形態2に係る表示制御装置100の絶対位置推定部102の動作を示すフローチャートである。なお、図10のフローチャートにおいて、図6で示した実施の形態1のフローチャートと同一のステップには同一の符号を付し、説明を省略する。
 絶対位置推定部102は、ステップST22において画像特徴点の2次元座標(u,v)を取得すると、当該画像特徴点の個数を計測する(ステップST41)。絶対位置推定部102は、ステップST23からステップST28の処理を行い、ステップST28で推定した機器200の絶対位置およびステップST41で取得した画像特徴点の個数を、自己位置推定部104に出力し(ステップST42)、処理を終了する。
 次に、図3のフローチャートのステップST3の処理の詳細について、図11のフローチャートを参照しながら説明する。
 図11は、実施の形態2に係る表示制御装置100の自己位置推定部104の動作を示すフローチャートである。なお、図11のフローチャートにおいて、図9で示した実施の形態1のフローチャートと同一のステップには同一の符号を付し、説明を省略する。
 自己位置推定部104は、ステップST31において機器200の絶対位置(X1)が入力されていると判断した場合に(ステップST31;YES)、絶対位置推定部102が計測した画像特徴点の個数が予め設定したn個以上であるか否か判定を行う(ステップST51)。画像特徴点の個数がn個以上であった場合(ステップST51;YES)、ステップST32の処理に進む。一方、画像特徴点の個数がn個未満であった場合(ステップST51;NO)。ステップST33の処理に進む。
 以上のように、この実施の形態2によれば、絶対位置推定部102が、映像フレーム内の画像特徴点の数を計測し、自己位置推定部104が、計測された画像特徴点の数が予め設定した個数以上であった場合に、推定された機器の絶対位置を用いて、機器の自己位置を推定するように構成したので、撮像映像の映像フレームがフラットで画像特徴点の取得に誤差が生じやすい環境においても、機器の自己位置の推定における誤差の発生を抑制することができる。
実施の形態3.
 この実施の形態3では、撮像映像の映像フレームの領域の照度に基づいて、自己位置を推定する構成を示す。
 図12は、実施の形態3に係る表示制御装置100Aの構成を示すブロック図である。
 実施の形態3に係る表示制御装置100Aは、図1に示した実施の形態1の表示制御装置100に照度情報取得部107を追加して構成している。また、実施の形態1の表示制御装置100の自己位置推定部104に替えて、自己位置推定部104aを備えて構成している。
 以下では、実施の形態1に係る表示制御装置100の構成要素と同一または相当する部分には、実施の形態1で使用した符号と同一の符号を付して説明を省略または簡略化する。
 照度情報取得部107は、機器200の照度センサ等のセンサ201から、機器200の周辺の明るさを示す照度情報を取得する。照度情報取得部107は、取得した照度情報を自己位置推定部104aに出力する。自己位置推定部104aは、照度情報取得部107から入力された照度情報を参照し、照度が予め設定した照度以上であった場合に、絶対位置推定部102が推定した機器200の絶対位置を、機器200の自己位置に適用する。
 次に、表示制御装置100Aのハードウェア構成例を説明する。なお、実施の形態1と同一の構成の説明は省略する。
 表示制御装置100Aにおける照度情報取得部107および自己位置推定部104aは、図2Aで示した処理回路100a、または図2Bで示したメモリ100cに格納されるプログラムを実行するプロセッサ100bである。
 次に、表示制御装置100Aの動作について説明する。
 表示制御装置100A全体の動作は、実施の形態1の図3で示したフローチャートと同一であるため、説明を省略する。
 実施の形態1とは異なる処理を行う、図3のフローチャートのステップST3の処理の詳細について、図13を参照しながら説明する。
 図13は、実施の形態2に係る表示制御装置100Aの自己位置推定部104aの動作を示すフローチャートである。なお、図14のフローチャートにおいて、図9で示した実施の形態1のフローチャートと同一のステップには同一の符号を付し、説明を省略する。
 自己位置推定部104aは、ステップST31において機器200の絶対位置(X1)が入力されていると判断した場合に(ステップST31;YES)、照度情報取得部107から入力された照度情報が示す照度が、予め設定した照度の値以上であるか否か判定を行う(ステップST52)。照度が予め設定した照度の値以上であった場合(ステップST52;YES)、ステップST32の処理に進む。一方、照度が予め設定した照度の値未満であった場合(ステップST52;NO)、ステップST33の処理に進む。
 以上のように、この実施の形態3によれば、機器の周辺の明るさを示す照度情報を取得する照度情報取得部107を備え、自己位置推定部104aは、照度情報が予め設定した照度以上であった場合に、推定された機器の絶対位置を用いて機器の自己位置を推定するように構成したので、映像フレームを撮像する機器の周囲が暗く、画像特徴点の取得に誤差が生じやすい環境においても、機器の自己位置の推定における誤差の発生を抑制することができる。機器の周囲の照度に応じて画像特徴点の取得に誤差が生じやすい環境とは、例えば、夜間、日陰およびトンネル等である。
 なお、上記実施の形態3では、実施の形態1で示した表示制御装置100に照度情報取得部107を追加して適用する構成を示したが、実施の形態2で示した表示制御装置100に照度情報取得部107を追加して適用してもよい。
実施の形態4.
 この実施の形態4では、相対位置算出部101が算出した相対位置および絶対位置推定部102が推定した絶対位置の採用を制限する構成を示す。
 図14は、実施の形態4に係る表示制御装置100Bの構成を示すブロック図である。
 実施の形態4に係る表示制御装置100Bは、図1に示した実施の形態1の表示制御装置100に閾値設定部108を追加して構成している。また、実施の形態1の表示制御装置100の自己位置推定部104に替えて、自己位置推定部104bを備えて構成している。
 以下では、実施の形態1に係る表示制御装置100の構成要素と同一または相当する部分には、実施の形態1で使用した符号と同一の符号を付して説明を省略または簡略化する。
 閾値設定部108は、相対位置算出部101が算出した相対位置、および絶対位置推定部102が推定した絶対位置の採用を制限する目的で、自己位置推定部104bに対して閾値を設定する。
 表示制御装置100が、例えば、一定の速度で移動する利用者が携帯するタブレット端末またはスマートフォン等に適用される場合、閾値設定部108は、利用者の移動速度の平均値、または利用者の移動速度の平均値に例えば数十パーセントの誤差許容値を加算した値、を閾値として設定する。加算する誤差許容値は、機器200の相対位置に対する閾値を設定する場合、センサ201からの出力値のノイズを除外するための値となる。同様に、加算する誤差許容値は、機器200の絶対位置に対する閾値を設定する場合、絶対位置推定部102における画像特徴点の抽出誤りを除外するための値となる。
 なお、上述した閾値の設定方法は一例であり、閾値設定部108は、表示制御装置100が適用される機器等に対応した閾値の設定を行う。
 自己位置推定部104bは、相対位置算出部101が算出した機器200の相対位置と、前回算出の相対位置との差分が、閾値β以下であった場合には、算出された相対位置を用いて機器200の自己位置を推定する。
 自己位置推定部104bは、絶対位置推定部102が推定した機器200の絶対位置と、前回算出の絶対位置との差分が、閾値α以下であった場合には、推定された絶対位置を用いて機器200の自己位置を推定する。
 次に、表示制御装置100Bのハードウェア構成例を説明する。なお、実施の形態1と同一の構成の説明は省略する。
 表示制御装置100Bにおける閾値設定部108および自己位置推定部104bは、図2Aで示した処理回路100a、または図2Bで示したメモリ100cに格納されるプログラムを実行するプロセッサ100bである。
 次に、表示制御装置100Bの動作について説明する。
 表示制御装置100B全体の動作は、実施の形態1の図3で示したフローチャートと同一であるため、説明を省略する。
 実施の形態1とは異なる処理を行う、図3のフローチャートのステップST3の処理の詳細について、図15を参照しながら説明する。
 図15は、実施の形態4に係る表示制御装置100Bの自己位置推定部104bの動作を示すフローチャートである。
 なお、図15のフローチャートの処理が行われる前に、閾値設定部108は、自己位置推定部104bに対して閾値αおよび閾値βを設定しているものとする。また、図15のフローチャートにおいて、図9で示した実施の形態1のフローチャートと同一のステップには同一の符号を付し、説明を省略する。
 自己位置推定部104bは、ステップST31において機器200の絶対位置(X1)が入力されていると判断した場合に(ステップST31;YES)、絶対位置(X1)と前回算出した絶対位置(X1pre)との差分の絶対値が、閾値設定部108が設定した閾値α以下であるか否か判定を行う(ステップST61)。差分の絶対値が閾値α以下である場合(ステップST61;YES)、自己位置推定部104bは、絶対位置(X1)を機器200の自己位置Xとする(ステップST32)。また、自己位置推定部104bは、前回の絶対位置(X1pre)を今回の絶対位置(X1)で上書きする(ステップST62)。その後、フローチャートはステップST36の処理に進む。一方、差分の絶対値が閾値α以下でない場合(ステップST61;NO)、ステップST35の処理に進む。
 自己位置推定部104bは、ステップST31において絶対位置(X1)が入力されていないと判断した場合に(ステップST31;NO)、当該機器200の相対位置(X2)が入力されているか否か判定を行う(ステップST33)。相対位置(X2)が入力されている場合(ステップST33;YES)、相対位置(X2)と前回算出した相対位置(X2pre)との差分の絶対値が、閾値設定部108が設定した閾値β以下であるか否か判定を行う(ステップST63)。差分の絶対値が閾値β以下である場合(ステップST63;YES)、自己位置推定部104bは、前回の自己位置Xpreに相対位置(X2)を累積加算して、機器200の自己位置Xを算出する(ステップST34)。また、自己位置推定部104bは、前回の相対位置(X2pre)を今回の相対位置(X2)に上書きする(ステップST64)。その後、フローチャートはステップST36の処理に進む。
 一方、差分の絶対値が閾値β以下でない場合(ステップST63;NO)、またはステップST33において相対位置(X2)が入力されていないと判断した場合に(ステップST33;NO)、ステップST35の処理に進む。
 以上のように、この実施の形態4によれば、相対位置算出部101が算出した機器の相対位置および絶対位置推定部102が推定した機器の絶対位置を適用するか否かを判断するための閾値を設定する閾値設定部108を備え、自己位置推定部104bが、絶対位置推定部102が機器の絶対位置を推定した場合、且つ今回推定された機器の絶対位置と、前回推定された機器の絶対位置との差分が、設定された閾値以下であった場合に、今回推定された機器の絶対位置から機器の自己位置を推定し、絶対位置推定部102が機器の絶対位置を推定しなかった場合、且つ相対位置算出部101において今回算出された機器の相対位置と、前回算出された機器の相対位置との差分が、設定された閾値以下であった場合に、今回算出された機器の相対位置から機器の自己位置を推定するように構成したので、相対位置の算出または絶対位置の推定において計算エラーが発生した場合であっても、機器の自己位置の推定における誤差の発生を抑制することができる。
 なお、上記実施の形態4では、実施の形態1で示した表示制御装置100に閾値設定部108を追加して適用する構成を示したが、実施の形態2で示した表示制御装置100および実施の形態3で示した表示制御装置100Aに閾値設定部108を追加して適用してもよい。
実施の形態5.
 この実施の形態5では、相対位置算出部101において相対位置が算出されるタイミングと、絶対位置推定部102において絶対位置が推定されるタイミングとの違いを吸収する構成を示す。
 図16は、実施の形態5に係る表示制御装置100Cの構成を示すブロック図である。
 実施の形態5に係る表示制御装置100Cは、図1に示した実施の形態1の表示制御装置100に処理時間計数部109およびバッファ制御部110を追加して構成している。
 センサ201は、カメラ202の映像フレーム信号に同期させて、センサ値を相対位置算出部101に出力する。相対位置算出部101は、実施の形態1と同様に、機器200の相対位置を算出する処理を行う。絶対位置推定部102は、実施の形態1と同様に、機器200の絶対位置を算出する処理を行う。カメラ202は、撮像映像の映像フレームを、絶対位置推定部102に加えて、後述するバッファ制御部110にも出力する。
 処理時間計数部109は、相対位置算出部101をモニタし、センサ201からセンサ値が入力されてから、相対位置を算出し、算出した相対位置をバッファ制御部110に出力するまでの時間Δt1を計数する。処理時間計数部109は、絶対位置推定部102をモニタし、カメラ202から映像フレームが入力されてから、絶対位置を算出し、算出した絶対位置をバッファ制御部110に出力するまでの時間Δt2を計数する。処理時間計数部109は、計数した時間Δt1および時間Δt2をバッファ制御部110に出力する。
 ここで、絶対位置推定部102は、画像を取り扱うため、相対位置算出部101よりも処理時間を多く要する。そのため、時間Δt1と時間Δt2は、Δt1<Δt2の関係を満たす。時間Δt1と時間Δt2について、図17を参照しながら説明する。
 図17は、実施の形態5の表示制御装置100Cの相対位置算出部101と絶対位置推定部102との出力タイミングを示すタイミングチャートである。
 センサ値の出力および映像フレームの出力を、フレーム1からフレームF5で示している。フレームF1で出力されたセンサ値に基づいて相対位置算出部101が算出した相対位置の出力は、出力F1aとなる。同様に、フレームF2で出力されたセンサ値に基づいて相対位置算出部101が算出した相対位置の出力は、出力F2aとなる。出力F1aの出力タイミングは、フレームF1で示したセンサ値が出力されてから時間Δt1後であり、出力F2aの出力タイミングは、フレームF2で示したセンサ値が出力されてから時間Δt1後である。
 次に、フレームF1で出力された映像フレームに基づいて絶対位置推定部102が推定した絶対位置の出力は、出力F1bとなる。同様に、フレームF4で出力された映像フレームに基づいて絶対位置推定部102が推定した絶対位置の出力は、出力F4bとなる。出力F1bの出力タイミングは、フレームF1で示した映像フレームが出力されてから時間Δt2後であり、出力F4bの出力タイミングは、フレームF4で示した映像フレームが出力されてから時間Δt2後である。
 出力F1bと出力F1aとの差分、および出力F4bと出力F4aとの差分は、時間(Δt2-Δt1)で表される。絶対位置推定部102の絶対位置の出力である出力F1bを基準とした場合、対応する相対位置算出部101の相対位置の出力である出力F1aは、出力F1bから時間(Δt2-Δt1)遡った出力となる。
 バッファ制御部110は、相対位置算出部101から入力される相対位置および絶対位置推定部102から入力される絶対位置を一時格納する。バッファ制御部110は、カメラ202から入力される撮像映像の映像フレームを一時格納する。バッファ制御部110は、格納された絶対位置を基準に設定する。次に、バッファ制御部110は、処理時間計数部109から入力される時間Δt1およびΔt2に基づいて、基準に設定された絶対位置の映像フレームと同一の出力タイミングで出力されたセンサ値から算出された相対位置を自己位置推定部104に出力する。また、バッファ制御部110は、基準とした絶対位置を推定する際に用いた映像フレームを重畳処理部106に出力する。
 表示制御装置100Cのハードウェア構成例を説明する。なお、実施の形態1と同一の構成の説明は省略する。
 表示制御装置100Cにおける処理時間計数部109およびバッファ制御部110は、図2Aで示した処理回路100a、または図2Bで示したメモリ100cに格納されるプログラムを実行するプロセッサ100bである。
 次に、表示制御装置100Cの動作について説明する。
 図18は、実施の形態5に係る表示制御装置100Cの動作を示すフローチャートである。なお、図18のフローチャートにおいて、図3で示した実施の形態1のフローチャートと同一のステップには同一の符号を付し、説明を省略する。
 相対位置算出部101は、カメラ202の映像フレームに同期して、センサ201からセンサ値が入力されると、対応する機器200の相対位置を自律航法で計算する(ステップST1a)。相対位置算出部101は算出した機器200の相対位置をバッファ制御部110に出力する。絶対位置推定部102は、カメラ202から撮像映像の映像フレームが入力されると、三次元地図データベース103に格納された三次元地図データとのマッチングを行い、機器200の絶対位置を推定する(ステップST2)。絶対位置推定部102は、推定した機器200の絶対位置をバッファ制御部110に出力する。
 処理時間計数部109は、ステップST1の処理に要した時間Δt1およびステップST2の処理に要した時間Δt2を計数し、バッファ制御部110に出力する(ステップST71)。バッファ制御部110は、ステップST71で入力された時間Δt1および時間Δt2に基づいて、絶対位置推定部102が直近に推定した絶対位置を基準として、当該絶対位置から時間(Δt2-Δt1)遡った出力である相対位置を特定する(ステップST72)。バッファ制御部110は、当該絶対位置およびステップST72で特定した相対位置を、自己位置推定部104に出力する。また、バッファ制御部110は、基準とした絶対位置を推定する際に用いた映像フレームを重畳処理部106に出力する(ステップST73)。その後、フローチャートはステップST3の処理に進む。
 以上のように、この実施の形態5によれば、相対位置算出が相対位置を算出する処理に要した時間、および絶対位置推定部102が絶対位置を推定する処理に要した時間を計数する処理時間計数部109と、相対位置算出部101が算出した相対位置、絶対位置推定部102が推定した絶対位置、および映像フレームを一時格納し、処理時間計数部109が計数した時間に基づいて、絶対位置を基準として、当該絶対位置に対応する相対位置を特定するバッファ制御部110とを備えるように構成したので、相対位置算出に要する時間と、絶対位置推定に要する時間の差を吸収して、機器の自己位置を推定することができる。また、映像フレームとずれのないアノテーション映像を重畳したAR表示を行うことができる。
 なお、上記実施の形態5では、実施の形態1で示した表示制御装置100に処理時間計数部109およびバッファ制御部110を追加して適用する構成を示したが、実施の形態2で示した表示制御装置100および実施の形態3で示した表示制御装置100Aおよび実施の形態4で示した表示制御装置100Bに追加して適用してもよい。
 上記以外にも、本発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、各実施の形態の任意の構成要素の変形、または各実施の形態の任意の構成要素の省略が可能である。
 この発明に係る表示制御装置は、マーカに含まれた絶対位置情報を読み取ることなく、自律航法で計算した相対位置を用いて機器の自己位置を推定することができるため、ナビゲーションシステム等に適用し、システム構築費用の増大を抑制しつつ、自己位置推定を実現するのに適している。
 100,100A,100B,100C 表示制御装置、101 相対位置算出部、102 絶対位置推定部、103 三次元地図データベース103、104,104a,104b 自己位置推定部、105 付加情報生成部、106 重畳処理部、107 照度情報取得部、108 閾値設定部、109 処理時間計数部、110 バッファ制御部、200 機器、201 センサ、202 カメラ、203 表示デバイス。

Claims (7)

  1.  センサの検知情報から機器の相対位置を自律航法により算出する相対位置算出部と、
     撮像された映像フレームと三次元地図データとのマッチングを行い、機器の絶対位置を推定する絶対位置推定部と、
     前記絶対位置推定部が前記機器の絶対位置を推定した場合には、当該絶対位置を用いて前記機器の自己位置を推定し、前記絶対位置推定部が前記機器の絶対位置を推定しなかった場合には、前記相対位置算出部が算出した前記機器の相対位置を用いて前記機器の自己位置を推定する自己位置推定部とを備えた表示制御装置。
  2.  前記自己位置推定部が推定した前記機器の自己位置に基づいて、前記映像フレームに付加する付加映像を生成する付加情報生成部と、
     前記映像フレームに、前記付加情報生成部が生成した付加映像を重畳する重畳処理部とを備えたことを特徴とする請求項1記載の表示制御装置。
  3.  前記絶対位置推定部は、前記映像フレーム内の画像特徴点の数を計測し、
     前記自己位置推定部は、前記絶対位置推定部が計測した前記画像特徴点の数が予め設定した個数以上であった場合に、前記絶対位置推定部が推定した前記機器の絶対位置を用いて、前記機器の自己位置を推定することを特徴とする請求項1記載の表示制御装置。
  4.  前記機器の周辺の明るさを示す照度情報を取得する照度情報取得部を備え、
     前記自己位置推定部は、前記照度情報取得部が取得した前記照度情報が、予め設定した照度以上であった場合に、前記絶対位置推定部が推定した前記機器の絶対位置を用いて、前記機器の自己位置を推定することを特徴とする請求項1記載の表示制御装置。
  5.  前記相対位置算出部が算出した前記機器の相対位置および前記絶対位置推定部が推定した前記機器の絶対位置を適用するか否かを判断するための閾値を設定する閾値設定部を備え、
     前記自己位置推定部は、前記絶対位置推定部が前記機器の絶対位置を推定した場合、且つ今回推定された前記機器の絶対位置と、前回推定された前記機器の絶対位置との差分が、前記閾値設定部が設定した閾値以下であった場合に、今回推定された前記機器の絶対位置から前記機器の自己位置を推定し、前記絶対位置推定部が前記機器の絶対位置を推定しなかった場合、且つ前記相対位置算出部において今回算出された前記機器の相対位置と、前回算出された前記機器の相対位置との差分が、前記閾値設定部が設定した閾値以下であった場合に、今回算出された前記機器の相対位置から前記機器の自己位置を推定することを特徴とする請求項1記載の表示制御装置。
  6.  前記相対位置算出部が前記相対位置を算出する処理に要した時間、および前記絶対位置推定部が前記絶対位置を推定する処理に要した時間を計数する処理時間計数部と、
     前記相対位置算出部が算出した相対位置、前記絶対位置推定部が推定した前記絶対位置、および前記映像フレームを一時格納し、前記処理時間計数部が計数した時間に基づいて、前記絶対位置を基準として、当該絶対位置に対応する相対位置を特定するバッファ制御部とを備えたことを特徴とする請求項1記載の表示制御装置。
  7.  相対位置算出部は、センサの検知情報から機器の相対位置を自律航法により算出するステップと、
     絶対位置推定部は、撮像された映像フレームと三次元地図データとのマッチングを行い、機器の絶対位置を推定するステップと、
     自己位置推定部は、前記機器の絶対位置が推定された場合には、当該絶対位置を用いて前記機器の自己位置を推定し、前記機器の絶対位置が推定されなかった場合には、前記算出された前記機器の相対位置を用いて前記機器の自己位置を推定するステップとを備えた表示制御方法。
PCT/JP2017/003997 2017-02-03 2017-02-03 表示制御装置および表示制御方法 WO2018142580A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2017/003997 WO2018142580A1 (ja) 2017-02-03 2017-02-03 表示制御装置および表示制御方法
JP2017533368A JP6272572B1 (ja) 2017-02-03 2017-02-03 表示制御装置および表示制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/003997 WO2018142580A1 (ja) 2017-02-03 2017-02-03 表示制御装置および表示制御方法

Publications (1)

Publication Number Publication Date
WO2018142580A1 true WO2018142580A1 (ja) 2018-08-09

Family

ID=61074760

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/003997 WO2018142580A1 (ja) 2017-02-03 2017-02-03 表示制御装置および表示制御方法

Country Status (2)

Country Link
JP (1) JP6272572B1 (ja)
WO (1) WO2018142580A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021006134A1 (ja) * 2019-07-08 2021-01-14 ソニー株式会社 情報処理装置、情報処理方法、プログラムおよびカメラモジュール
JPWO2022130618A1 (ja) * 2020-12-18 2022-06-23

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009031041A (ja) * 2007-07-25 2009-02-12 Seiko Epson Corp 測位誤差発生判定方法、測位位置出力制御方法、測位方法、プログラム、記憶媒体及び測位装置
JP2009199572A (ja) * 2008-01-25 2009-09-03 Kazuo Iwane 三次元機械地図、三次元機械地図生成装置、ナビゲーション装置及び自動運転装置
JP2011065442A (ja) * 2009-09-17 2011-03-31 Hitachi Automotive Systems Ltd 自車影認識装置
WO2014002849A1 (ja) * 2012-06-29 2014-01-03 富士フイルム株式会社 3次元測定方法、装置及びシステム、並びに画像処理装置
WO2014091877A1 (ja) * 2012-12-12 2014-06-19 日産自動車株式会社 移動物体位置姿勢角推定装置及び移動物体位置姿勢角推定方法
JP2015087149A (ja) * 2013-10-29 2015-05-07 日産自動車株式会社 移動体位置姿勢角推定装置及び移動体位置姿勢角推定方法
JP2016524128A (ja) * 2013-04-22 2016-08-12 アルカテル−ルーセント 位置特定システムおよび位置特定方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9341483B2 (en) * 2013-03-11 2016-05-17 Qualcomm Incorporated Methods and apparatus for position estimation

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009031041A (ja) * 2007-07-25 2009-02-12 Seiko Epson Corp 測位誤差発生判定方法、測位位置出力制御方法、測位方法、プログラム、記憶媒体及び測位装置
JP2009199572A (ja) * 2008-01-25 2009-09-03 Kazuo Iwane 三次元機械地図、三次元機械地図生成装置、ナビゲーション装置及び自動運転装置
JP2011065442A (ja) * 2009-09-17 2011-03-31 Hitachi Automotive Systems Ltd 自車影認識装置
WO2014002849A1 (ja) * 2012-06-29 2014-01-03 富士フイルム株式会社 3次元測定方法、装置及びシステム、並びに画像処理装置
WO2014091877A1 (ja) * 2012-12-12 2014-06-19 日産自動車株式会社 移動物体位置姿勢角推定装置及び移動物体位置姿勢角推定方法
JP2016524128A (ja) * 2013-04-22 2016-08-12 アルカテル−ルーセント 位置特定システムおよび位置特定方法
JP2015087149A (ja) * 2013-10-29 2015-05-07 日産自動車株式会社 移動体位置姿勢角推定装置及び移動体位置姿勢角推定方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021006134A1 (ja) * 2019-07-08 2021-01-14 ソニー株式会社 情報処理装置、情報処理方法、プログラムおよびカメラモジュール
JPWO2022130618A1 (ja) * 2020-12-18 2022-06-23
WO2022130618A1 (ja) * 2020-12-18 2022-06-23 三菱電機株式会社 位置・姿勢推定装置、位置・姿勢推定方法、及びプログラム
JP7258250B2 (ja) 2020-12-18 2023-04-14 三菱電機株式会社 位置・姿勢推定装置、位置・姿勢推定方法、及びプログラム
TWI817124B (zh) * 2020-12-18 2023-10-01 日商三菱電機股份有限公司 位置/姿勢推定裝置、位置/姿勢推定方法及記錄其程式之記錄媒體

Also Published As

Publication number Publication date
JP6272572B1 (ja) 2018-01-31
JPWO2018142580A1 (ja) 2019-02-14

Similar Documents

Publication Publication Date Title
JP5859958B2 (ja) 画像処理装置、画像処理方法、およびプログラム
US6834250B2 (en) Position and orientation determining method and apparatus and storage medium
US9148650B2 (en) Real-time monocular visual odometry
JP5694300B2 (ja) 画像処理装置、画像処理方法およびプログラム
US10027949B2 (en) Image processing apparatus, image processing method, and recording medium
US11328493B2 (en) Augmented reality screen system and augmented reality screen display method
WO2009061174A1 (en) Method of and arrangement for mapping range sensor data on image sensor data
JP2002259992A (ja) 画像処理装置およびその方法並びにプログラムコード、記憶媒体
US10916031B2 (en) Systems and methods for offloading image-based tracking operations from a general processing unit to a hardware accelerator unit
JPWO2018235300A1 (ja) 物体検知装置、物体検知方法、及びコンピュータ読み取り可能な記録媒体
US10410372B1 (en) Methods, systems, and computer-readable media for utilizing radial distortion to estimate a pose configuration
US12010288B2 (en) Information processing device, information processing method, and program
JP6272572B1 (ja) 表示制御装置および表示制御方法
KR20190067438A (ko) 이미지를 제공하기 위한 방법 및 이를 지원하는 전자 장치
US10540809B2 (en) Methods and apparatus for tracking a light source in an environment surrounding a device
EP3718302B1 (en) Method and system for handling 360 degree image content
JPWO2018189880A1 (ja) 情報処理装置、情報処理システム、および画像処理方法
JP7074546B2 (ja) 画像処理装置および方法
CN110832851B (zh) 图像处理装置、图像变换方法
JP2009077022A (ja) 運転支援システム及び車両
JP5239991B2 (ja) 画像処理装置、及び画像処理システム
CN111240464B (zh) 眼球追踪的校正方法和其装置
JP5590680B2 (ja) 映像合成装置、映像合成方法、および映像合成プログラム
EP3591605A1 (en) Systems and methods for offloading image-based tracking operations from a general processing unit to a hardware accelerator unit
CN111489376A (zh) 跟踪交互设备的方法、装置、终端设备及存储介质

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2017533368

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 17895230

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17895230

Country of ref document: EP

Kind code of ref document: A1