WO2019208234A1 - 自己位置推定装置、自己位置推定方法、およびそのプログラム - Google Patents

自己位置推定装置、自己位置推定方法、およびそのプログラム Download PDF

Info

Publication number
WO2019208234A1
WO2019208234A1 PCT/JP2019/015755 JP2019015755W WO2019208234A1 WO 2019208234 A1 WO2019208234 A1 WO 2019208234A1 JP 2019015755 W JP2019015755 W JP 2019015755W WO 2019208234 A1 WO2019208234 A1 WO 2019208234A1
Authority
WO
WIPO (PCT)
Prior art keywords
imaging
self
position estimation
frame
unit
Prior art date
Application number
PCT/JP2019/015755
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 US17/045,880 priority Critical patent/US11386574B2/en
Priority to DE112019002126.5T priority patent/DE112019002126T5/de
Publication of WO2019208234A1 publication Critical patent/WO2019208234A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0251Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/239Image signal generators using stereoscopic image cameras using two 2D image sensors having a relative position equal to or related to the interocular distance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/296Synchronisation thereof; Control thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources

Definitions

  • This technology relates to a self-position estimation apparatus, a self-position estimation method, and a program thereof.
  • SLAM Simultaneous Localization and ⁇ ⁇ Mapping
  • AR Augmented Reality
  • VR Virtual Reality
  • stereo SLAM an image using images obtained by two cameras.
  • stereo SLAM there is a problem that power consumption, data processing amount, and the like increase because the number of cameras is doubled compared to the case of using a single camera.
  • An object of the present disclosure is to provide a self-position estimation apparatus, a self-position estimation method, and a program thereof that can reduce power consumption and data processing amount in stereo SLAM.
  • a self-position estimation apparatus includes a position estimation unit.
  • the position estimation unit estimates a self-position based on image frames captured at the same time by two imaging units at a constant cycle, and at a time that differs depending on at least one of the two imaging units within the fixed cycle.
  • a self-position is estimated based on the captured image frame.
  • the position estimation unit estimates the self position using these image frames. That is, since position estimation can be performed also by at least one imaging unit, power consumption and data processing amount can be reduced.
  • the self-position estimation apparatus may further include an imaging control unit that controls imaging timing by the two imaging units so that the two imaging units perform imaging at different imaging frame rates.
  • the self-position estimation rate by the position estimating unit is determined as the image capturing frame rate of each image capturing unit.
  • the imaging frame rates of the two imaging units necessary for realizing the same estimated rate as the conventional one can be lowered. Thereby, power consumption and data processing amount can be reduced.
  • the imaging frame rates N and M may be in a relatively prime relationship.
  • the difference between the imaging frame rates N and M may be 1. Thereby, the maximum estimated rate can be realized.
  • the imaging control unit may variably control at least one imaging frame rate of the two imaging units.
  • the imaging control unit may execute control so that the self-position estimation rate is constant.
  • the imaging frame rate of each of the two imaging units can be lowered, and the power consumption and the data processing amount can be reduced.
  • the self-position estimation unit may further include a detection unit and a distance estimation unit.
  • the detection unit is configured to detect feature points in image frames captured by the two imaging units.
  • the distance estimation unit is configured to estimate a distance to the feature point based on the estimated self-position and image frames captured at different times by the two imaging units.
  • the imaging control unit may perform control such that a period other than the same time includes a period in which only one of the two imaging units performs imaging.
  • the position estimation unit may be configured to estimate the self-position based on image frames captured at different times by only one of the two imaging units within the fixed period.
  • the distance estimation unit is configured to estimate a distance to the feature point based on the estimated self-position and an image frame captured at a different time by only one of the two imaging units. That's fine.
  • the detection unit may be configured to calculate a two-dimensional coordinate of the feature point from a first image frame that is one of image frames taken at the different times.
  • the self-position estimation device is configured to perform an operation on the second image frame based on the first image frame and a second image frame captured before the first image frame among the image frames captured at the different times.
  • May further include a motion matching unit configured to obtain a corresponding point corresponding to the feature point on the first image frame.
  • the self-position estimation method is configured to estimate a self-position based on image frames captured at the same time by two imaging units at a constant cycle, and at least one of the two imaging units within the fixed cycle. To estimate the self position based on image frames taken at different times.
  • a program according to one embodiment causes a computer to execute the self-position estimation method.
  • FIG. 1 is a block diagram illustrating a functional configuration of a self-position estimation apparatus according to a reference example.
  • FIG. 2 is a block diagram illustrating a functional configuration of the self-position estimation apparatus according to an embodiment of the present technology.
  • FIG. 3 is a diagram illustrating an example of imaging timing of the stereo camera unit by the imaging control unit according to the embodiment.
  • FIG. 3 is a diagram illustrating another example of the imaging timing of the stereo camera unit by the imaging control unit according to the embodiment.
  • FIG. 5 is a diagram illustrating still another example of the imaging timing of the stereo camera unit by the imaging control unit according to the embodiment.
  • FIG. 1 is a block diagram showing a functional configuration of a self-position estimation apparatus according to a reference example.
  • the self-position estimation apparatus 100 includes an imaging control unit 101, a feature point detection unit 103, a parallax matching unit 104, a distance estimation unit 105, memories 106 and 107, a motion matching unit 108, and a position estimation unit 109.
  • the imaging control unit 101 controls the imaging timing of the stereo camera unit 102 including two cameras (imaging units) 102a and 102b.
  • the stereo camera unit 102 performs imaging using the imaging timing signal supplied from the imaging control unit 101 as a trigger.
  • the two images captured by the stereo camera unit 102 are subjected to various corrections including gain correction and gain adjustment, and are made parallel so as to cancel out the misalignment between the two captured images. Processing is performed.
  • the image processing unit includes a feature point detection unit 103, a parallax matching unit 104, a distance estimation unit 105, memories 106 and 107, a motion matching unit 108, and a position estimation unit 109.
  • the feature point detection unit 103 detects a characteristic point used for self-position estimation, that is, a feature point, for an image frame output from one camera 102b of the stereo camera unit 102.
  • a collection of feature points typically has a high contrast and a pattern that does not have a similar structure to the surroundings.
  • Harris and SIFT Scale-Invariant Feature Transform
  • the parallax matching unit 104 searches each point corresponding to each feature point on the other image (camera 102b) detected by the feature point detection unit 103 from the image output from the camera 102a by the template matching method. .
  • the point corresponding to the feature point (hereinafter referred to as the corresponding point) found here is considered to be the point where the same object is seen from two viewpoints, and the difference in appearance (deviation amount) between these viewpoints is parallax. Call it. That is, the parallax matching unit 104 outputs a two-dimensional position (that is, a two-dimensional coordinate) of the corresponding point.
  • the distance estimation unit 105 estimates the distance (from the stereo camera unit 102) of each feature point based on the parallax of each feature point obtained by the parallax matching unit 104, and based on the distance, the three-dimensional space of the feature point The position within is calculated. Since the distance is a three-dimensional depth direction distance, it is also called a depth.
  • the method for calculating the distance from the parallax can be based on the principle of triangulation. Specifically, the distance z is obtained by the following equation (1).
  • the point group information of the three-dimensional coordinates estimated by the distance estimation unit 105 is stored in the memory 106.
  • the feature amount of each feature point (including a template for matching and the like) and its two-dimensional coordinate information, which are output from the feature point detection unit 103, are stored in the memory 107.
  • These feature point groups stored in the memories 106 and 107 become point groups that characterize the past image frames when the “next image frame” is obtained in terms of time, and the past images that serve as a reference for self-position changes. Used as a frame.
  • the “next image frame” is the current image frame.
  • the symbol “Curr” is a formal expression, and the expression is similarly established for the previous frame (past frame).
  • the motion matching unit 108 uses the template matching method to calculate corresponding points of each feature point on the past image frame stored in the memory 107 from the current image frame. Search by. That is, the motion matching unit 108 analyzes where each feature point on the past image frame extracted from the memory 107 corresponds to the current image frame.
  • the corresponding point found here is considered to be a point where the same object is viewed from two viewpoints, and the difference in appearance is due to a change in the temporal position (posture) of the camera 102b.
  • current image frame is abbreviated as “current frame”
  • past image frame is abbreviated as “past frame”.
  • the position estimation unit 109 calculates the past frame from the shooting time of the past frame.
  • a change (difference) in the position of the stereo camera unit 102 up to the shooting time of the current frame is estimated. That is, this is a change in the self position, and the integral is specified as the self position in the three-dimensional space.
  • This change in position is also called a pose difference or a ⁇ pose.
  • “Position” includes the meaning of “posture”, and so on.
  • the past frame and the current frame do not have to be temporally continuous image frames, and there may be another image frame between them. That is, the output rate (estimated rate of self position) by the position estimation unit may be lower than the imaging frame rate by both the cameras 102a and 102b.
  • the position of the projection plane that is, the position of the stereo camera unit 102 can be obtained by solving the minimization problem with the error on the image frame when each feature point is projected onto the two-dimensional plane as a cost. It becomes.
  • Using a stereo camera has the advantage that the distance can be estimated easily and accurately compared to using a single camera.
  • the number of cameras is doubled compared to when a single camera is used, so costs such as power consumption and data processing amount (because the total number of pixels to be processed increase). It is disadvantageous.
  • the self-position estimation accuracy is improved.
  • imaging is performed at the imaging frame rate.
  • the imaging frame rate of the camera may be increased.
  • the cost is further increased.
  • FIG. 2 is a block diagram illustrating a functional configuration of the self-position estimation apparatus according to an embodiment of the present technology.
  • the feature point detection unit (detection unit) 203, the parallax matching unit 204, the distance estimation unit 205, the memories 206 and 207, the motion matching unit 208, and the position estimation unit 209 of the self-position estimation apparatus 200 are illustrated in FIG.
  • the feature point detection unit 103, the parallax matching unit 104, the distance estimation unit 105, the memories 106 and 107, the motion matching unit 108, and the position estimation unit 109 of the self-position estimation apparatus 100 have substantially the same functions.
  • the memories 206 and 207 and the motion matching unit 208 store other information in addition to the information shown in FIG.
  • This self-position estimation apparatus 200 basically includes hardware such as a CPU (Central Processing Unit), a RAM (Random Access Memory), and a ROM (Read Only Memory), and is mainly configured by software stored in the RAM or ROM. A function can be realized.
  • a PLD Programmable Logic Device
  • FPGA Field Programmable Gate Array
  • DSP Digital Signal Processor
  • At least two of the memories 206, 207, and 210 may be constituted by an integrated memory device.
  • the imaging control unit 201 controls the imaging timing of the stereo camera unit 202.
  • the imaging control unit 201 captures images at the same time at the two cameras 202a and 202b at a constant cycle, and at one of the two cameras 202a and 202b at a time different from the other within the period of the fixed cycle.
  • the timing is controlled so as to perform imaging.
  • FIG. 3 is a diagram illustrating an example of the imaging timing of the stereo camera unit 202 by the imaging control unit 201 according to the present embodiment.
  • the imaging control unit 201 supplies imaging timing signals so that the imaging frame rates of the two cameras 202a and 202b are different. Specifically, both of the two cameras 202a and 202b capture images at the same time with a constant period (1 [s] in FIG. 3) as indicated by hatched circles, and as indicated by white circles, Imaging is performed at different times within a period other than the same time.
  • the imaging frame rate of the camera 202a is 6 [fps], and that of the camera 202b is 5 [fps]. That is, the imaging frame rate differs between the two.
  • the present technology intends to realize the output rate (position estimation rate) by the position estimation unit 209 based on the rate of image frames obtained by both the cameras 202a and 202b.
  • FIG. 3 shows a low imaging frame rate for simplification, but in reality, a frame rate of 15 to 120 [fps], for example, can be adopted.
  • a portion surrounded by a broken line is a portion for processing image frames taken at the same time at a constant period by the two cameras 202a and 202b.
  • the portion surrounded by the alternate long and short dash line is basically a portion for processing image frames shot at different times within a certain period by the two cameras 202a and 202b.
  • the self-position estimation apparatus 200 further includes a selector 211, a memory 210, a feature point detection unit (detection unit) 212, a motion matching unit 213, and a distance estimation unit 214.
  • the selector 211, the feature point detection unit 212, the motion matching unit 213, and the distance estimation unit 214 are mainly functional units for processing the image frames (shown by white circles in FIG. 3) taken at different times. It is.
  • the feature point detection unit 203 mainly the feature point detection unit 203, the parallax matching unit 204, the distance estimation unit 205, the motion matching unit 208, and the position estimation unit 209 are mainly image frames taken at the same time (hatched circles in FIG. 3). It is a functional part for processing.
  • the selector 211 selects and outputs an image frame on the camera side (hereinafter referred to as an effective image frame) captured at the current time among image frames captured at different times by the two cameras 202a and 202b.
  • the effective image frame is input to the memory 210, the feature point detection unit 212, and the motion matching unit 208, respectively.
  • the memory 210 stores image frames captured by the camera 202b (not via the selector 211) when processing image frames captured at the same time, and processes image frames captured at different times. In this case, the effective image frame output from the selector 211 is stored.
  • the feature point detection unit 212 detects a feature point of the effective image frame.
  • the feature point detection method is the same as that by the feature point detection unit 203.
  • the feature amount (including a template for matching) and the two-dimensional coordinates thereof obtained by the feature point detection unit 212 are stored in the memory 207. These are input to the motion matching unit 213 and also supplied to the distance estimation unit 214.
  • the motion matching unit 213 basically extracts an image frame at a past time from the memory 210, and from the extracted image frame (second image frame), a current frame (first image frame) obtained by the feature point detection unit 212. ) Search the corresponding points of the above feature points by the template matching method. That is, the motion matching unit 213 analyzes where each feature point on the current frame (first image frame) obtained by the feature point detection unit 212 corresponds to the past frame (second image frame). The corresponding point found here is considered to be a point where the same object is seen from two viewpoints, and the difference in appearance is due to a change in temporal position of the two cameras 202a and 202b.
  • the motion matching unit 208 analyzes where the feature points on the past frame extracted from the memory 207 correspond to the current effective image frame. Different.
  • the distance estimation unit 214 includes two-dimensional coordinates of corresponding points on the past frame output from the motion matching unit 213, two-dimensional coordinates of each feature point on the current frame output from the feature point detection unit 212, and position estimation.
  • the position difference (position change) output from the unit 209 is acquired. Then, the distance estimation unit 214 estimates the distance (depth) from the stereo camera unit 202 to each feature point based on these pieces of information.
  • the corresponding point on the past frame (corresponding to another viewpoint) is known for each feature point of the effective image frame (current frame) by the processing of the motion matching unit 213, and the current and past frames are processed by the processing of the position estimation unit 209.
  • the position difference at is known. Therefore, the distance estimation unit 214 can estimate the distance based on the movement parallax between the image frames (past frame and current frame) captured by the two cameras 202a and 202b at different times.
  • the distance due to this movement parallax corresponds to “3dCurr.z”, which is the current distance in Equation (6) described later.
  • equation (4) the internal parameter matrix K of the cameras 202a and 202b is expressed by the following equation (5) from the focal length f and the optical center c.
  • the distance estimation unit 214 As the processing of the distance estimation unit 214, by solving the simultaneous equations of the above formula (6) (two formulas for three variables (3dCurr.z, 3dPrev.z)), the distance of each point in the current frame is calculated. A certain 3dCurr.z is required.
  • time t0 is the photographing start time.
  • imaging is performed at the same time by both cameras 202a and 202b. Since the past frame does not exist when viewed from time t0, the position estimation unit 209 cannot estimate the position (positional difference) only from both image frames obtained at time t0.
  • the position estimation unit 209 can output the position after the image frame is obtained from the camera 202a at the next time t1. For example, at time t1, the position difference output from the position estimation unit 209 is a position difference between time t1 and t0.
  • the portion surrounded by the alternate long and short dash line is basically a portion for processing image frames photographed at different times within a certain period by the two cameras 202a and 202b.
  • two image frames photographed by the two cameras 202a and 202b at time t0 are in principle as the past frames with respect to the effective image frame photographed by the camera 202a and selected by the selector 211.
  • the memory 210 stores an image frame (not via the selector 211) captured by the camera 202b among the two image frames. Therefore, the current effective image frame (two-dimensional coordinates of each feature point thereof) captured by the camera 202a at the time t1 and the past frame captured by the camera 202b stored in the memory 210 are stored in the motion matching unit 213. Entered and processed.
  • the target stored in the memory 210 without using the selector 211 may be an image frame shot by the camera 202a.
  • the current effective image frame (two-dimensional coordinates of each feature point) captured by the camera 202a at time t1 and the past frame captured by the camera 202a stored in the memory 210 are used as the motion matching unit 213. And can be processed.
  • the processing target of the distance estimation unit 214 includes past frames. Therefore, the distance estimation unit 214 can output the distance after the image frame is obtained from the camera 202a at time t1. Thereafter (after time t2), since the position estimation unit 209 and the distance estimation unit 214 perform the same processing, the memory 206 includes the output value of the distance estimation unit 214 (the distance 3dCurr.z of each feature point). 3D coordinates) are stored.
  • the memory 207 stores the two-dimensional coordinates of the point group on the effective image frame obtained by the feature point detection unit 212 when processing the image frames taken at different times. For example, the memory 207 stores the two-dimensional coordinates of the point group on the image frame at time t9.
  • the motion matching unit 208 calculates the two-dimensional coordinates of the corresponding points based on the (previous) image frame captured at the time t9 at the next time t10 and the current frame captured by the camera 202b at the time t10. Obtainable.
  • the motion matching unit 208 may obtain the two-dimensional coordinates of the corresponding points based on the past frame captured at the time t9 and the current frame captured by the camera 202a at the time t10 at the time t10. Good.
  • the position of the camera 202a at the timing when imaging is performed only by the camera 202b (or the position of the camera 202b when imaging is performed only by the camera 202a).
  • the position difference between the two cameras 202a and 202b is represented by aRb (rotation matrix) and aPb (translation vector).
  • aRb rotation matrix
  • aPb translation vector
  • aRc rotation matrix
  • aPc translation vector
  • aRc aRb * bRc (7)
  • aPc aRb * bPc + aPb (8)
  • the reverse case (when the position of the camera 202b is obtained from the position of the camera 202a) is similarly possible.
  • the positional differences aPb and aRb between the two cameras 202a and 202b may be known, or the system may dynamically estimate the estimated positional relationship between the cameras 202a and 202b using a Kalman filter or the like.
  • the self-position estimation apparatus 200 has both the timing when the two cameras 202a and 200b capture images at the same time and the timing when only one camera 202a or b captures images.
  • the position of both cameras 202a and 200b can be estimated. As a result, position estimation at a rate faster than the imaging frame rate of one camera can be realized.
  • the estimated rate of the position is 10 [fps] for the imaging frame rates of 6 [fps] and 5 [fps].
  • the position estimation rate is 118 [fps].
  • the estimated rate O of the position can be expressed by Expression (9) when the imaging frame rates are N and M [fps].
  • gcd (N, M) represents the greatest common divisor of N and M.
  • the estimated rate can be increased.
  • the imaging frame rate necessary to realize the same estimated rate as the imaging frame rate of the camera is set to 1 (maximum 1 / Can be lowered to about 2). As a result, power consumption and data processing amount can be reduced.
  • self-position estimation apparatus 200 may perform distance estimation and position estimation (processing in a frame indicated by a broken line in FIG. 2), assuming that they are captured at the same time.
  • a threshold value of the difference in imaging timing that can be ignored is set at the time of designing or manufacturing the self-position estimation apparatus 200 according to the maximum moving speed that can be taken by the mobile body on which the self-position estimation apparatus 200 is mounted. That's fine.
  • the imaging control unit 201 can also variably control the imaging timing.
  • FIG. 4 shows an example of such variable imaging timing. This example includes a period in which the imaging frame rates of the two cameras 202a and 202b are the same, but the phases are shifted from each other by a half cycle within a certain period in which imaging at the same time is performed.
  • the two cameras 202a and 202b capture images at the same time with a constant period of 1 [s].
  • the imaging frame rate is 4 [fps] for both the cameras 202a and 202b.
  • the camera 202a captures an image at 7 [fps] for the first time after the same time and the camera 202b for the last time.
  • the estimation rate can be made constant by making the imaging timing variable.
  • the estimated rate O can be expressed by Expression (10).
  • FIG. 5 shows another example of imaging timing by the imaging control unit 201.
  • the imaging control unit 201 captures images at the same time with two cameras 202a and 202b at a constant cycle (1 [s]), and two cameras are in a period other than the same time within the fixed cycle. Control is executed so that only one of 202a and 202b, here, only the camera 202a includes a period of imaging.
  • the imaging frame rate during the imaging period performed only by the camera 202a is, for example, 7 [fps]. In this case, the estimated rate is the same as the imaging frame rate of the camera 202a.
  • the camera 202a continuously captures images at least twice within a period other than the same time imaging in a fixed cycle. That is, the camera 202a captures images at different times within a period in which the camera 202b does not capture images.
  • the position estimation unit 209 and the distance estimation unit 214 perform position estimation and distance estimation between the two image frames using the two image frames continuously captured by the camera 202a. Can do. Processing that employs such imaging timing is also included in the scope of the present technology.
  • position estimation can be performed also by at least one camera 202a, so that power consumption and data processing amount can be reduced.
  • the example shown in FIG. 4 has the advantage that the exposure time can be increased.
  • the imaging frames (individual frame rates of the cameras 202a and 202b) necessary for realizing the same estimated rate as in the example shown in FIG. 5 are lower than those in FIG. be able to.
  • the example shown in FIG. 4 is particularly advantageous in a dark place where SN ratio is a problem.
  • the example shown in FIGS. 3 and 4 estimates the position using two cameras 202a and 202b, respectively.
  • the result can be optimized with a Kalman filter or the like. Therefore, even if one camera has a defect, the other camera may be able to compensate for it.
  • the camera 202b may perform at least one imaging even during a period other than the same time.
  • the camera 202a can capture images at an imaging frame rate of 7 [fps] and the camera 202b can capture 2 [fps]. Also in this case, the camera 202a captures images at different times within the period when the camera 202b does not capture images, which is the same as the example shown in FIG.
  • the two cameras 202a and 202b mainly include an imaging sensor that receives visible light, but may include an imaging sensor that can also capture ultraviolet light and infrared light.
  • this technique can also take the following structures. (1) Estimate the self-position based on image frames photographed at the same time at a fixed period by two image capturing units, and image frames captured at different times by at least one of the two image capturing units within the constant cycle.
  • a self-position estimation apparatus comprising a position estimation unit configured to estimate a self-position based on the position estimation unit. (2) The self-position estimation apparatus according to (1), The self-position estimation apparatus further comprising an imaging control unit that controls imaging timing by the two imaging units so that the two imaging units perform imaging at different imaging frame rates.
  • the self-position estimation apparatus executes control so that an estimation rate of a self-position is constant.
  • the self-position estimation apparatus executes control so that an estimation rate of a self-position is constant.
  • the self-position estimation apparatus executes control so that an estimation rate of a self-position is constant.
  • the self-position estimation apparatus executes control so that an estimation rate of a self-position is constant.
  • the self-position estimation apparatus executes control so that an estimation rate of a self-position is constant.
  • a self-position estimation device performs control so that (9)
  • the self-position estimation apparatus A detection unit configured to detect feature points in the image frames respectively captured by the two imaging units;
  • a self-position further comprising: a distance estimation unit configured to estimate
  • the self-position estimation apparatus wherein An imaging control unit that controls imaging timing of the two imaging units so that the two imaging units perform imaging at different imaging frame rates; The imaging control unit performs control so that a period other than the same time includes a period in which only one of the two imaging units performs imaging,
  • the position estimation unit is configured to estimate a self-position based on image frames captured at different times by only one of the two imaging units within the fixed period,
  • the distance estimation unit is configured to estimate a distance to the feature point based on the estimated self-position and an image frame captured at a different time by only one of the two imaging units.
  • Position estimation device Position estimation device.
  • the self-position estimation apparatus according to any one of (9) and (10),
  • the detection unit is configured to calculate a two-dimensional coordinate of the feature point from a first image frame that is one of image frames taken at the different times, The first image frame on the second image frame based on the first image frame and a second image frame taken before the first image frame among the image frames taken at the different times.
  • a self-position estimation apparatus further comprising a motion matching unit configured to obtain a corresponding point corresponding to the feature point above.
  • (12) Estimate the self-position based on the image frames taken at the same time at a fixed period by the two imaging units,
  • DESCRIPTION OF SYMBOLS 200 ... Self-position estimation apparatus 201 ... Imaging control part 202 ... Stereo camera part 202a, 202b ... Camera 203, 212 ... Feature point detection part 204 ... Parallax matching part 205, 214 ... Distance estimation part 206, 207, 210 ... Memory 208, 213 ... Motion matching unit 209 ... Position estimation unit 211 ... Selector

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Signal Processing (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Electromagnetism (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Abstract

自己位置推定装置は、位置推定部を具備する。前記位置推定部は、2つの撮像部により一定周期で同じ時刻に撮影された画像フレームに基づき自己位置を推定し、かつ、前記一定周期内に前記2つの撮像部のうち少なくとも一方により異なる時刻に撮影された画像フレームに基づき自己位置を推定するように構成される。

Description

自己位置推定装置、自己位置推定方法、およびそのプログラム
 本技術は、自己位置推定装置、自己位置推定方法、およびそのプログラムに関する。
 従来より、主に移動体の自律的な空間移動を実現するためのSLAM(Simultaneous Localization and Mapping)と呼ばれる技術がある。SLAMは、自己位置の推定と、環境地図の作成とを同時に行う技術である。例えばAR(Augmented Reality)やVR(Virtual Reality)を実現するヘッドマウントディスプレイに、そのSLAMを適用する技術も開発されている(例えば特許文献1を参照。)
特開2016-045874号公報
 SLAMにおいて、特に2つのカメラで得られる画像を用いるものをステレオSLAMと呼ぶ。ステレオSLAMでは、単一のカメラを用いる場合に比べて、カメラの個数が倍になる分、消費電力やデータ処理量などが増えるという問題がある。
 本開示の目的は、ステレオSLAMにおいて消費電力やデータ処理量を低減することができる自己位置推定装置、自己位置推定方法、およびそのプログラムを提供することにある。
 上記目的を達成するため、一形態に係る自己位置推定装置は、位置推定部を具備する。
 前記位置推定部は、2つの撮像部により一定周期で同じ時刻に撮影された画像フレームに基づき自己位置を推定し、かつ、前記一定周期内に前記2つの撮像部のうち少なくとも一方により異なる時刻に撮影された画像フレームに基づき自己位置を推定するように構成される。
 位置推定部は、一定周期の間に2つの画像フレームがそれぞれ異なる時刻に撮影される場合には、それらの画像フレームを利用して、自己位置を推定する。すなわち、少なくとも1つの撮像部によっても、位置推定を行うことができるため、消費電力やデータ処理量を低減することができる。
 前記自己位置推定装置は、前記2つの撮像部が異なる撮像フレームレートで撮像を行うように、前記2つの撮像部による撮像タイミングを制御する撮像制御部をさらに具備してもよい。
 例えば、2つの撮像部の両方が、前記同時刻以外の期間内の異なる時刻に少なくとも1回の撮像を行うことにより、位置推定部による自己位置の推定レートを、個々の撮像部の撮像フレームレートより高くすることができる。逆に言うと、従来と同じ推定レートを実現するために必要な、2つの撮像部のそれぞれの撮像フレームレートを下げることができる。これにより消費電力やデータ処理量を低減することができる。
 前記2つの撮像部による撮像フレームレートをそれぞれN、M[fps]とし、それら2つの値の最大公約数をgcd(N,M)とする場合、前記撮像制御部は、前記位置推定部による推定レートOが、O=N+M-gcd(N,M)となるように制御を実行してもよい。
 前記撮像フレームレートNおよびMは互いに素の関係にあってもよい。
 あるいは、前記撮像フレームレートNおよびMの差が1であってもよい。これにより、最大限の推定レートを実現できる。
 前記撮像制御部は、前記2つの撮像部のうち少なくとも一方の撮像フレームレートを可変に制御してもよい。
 前記撮像制御部は、自己位置の推定レートが一定となるように制御を実行してもよい。
 これにより、たとえ従来と同じ推定レートであっても、2つの撮像部のそれぞれの撮像フレームレートを下げることができ、消費電力やデータ処理量を低減することができる。
 前記2つの撮像部による同一の撮像フレームレートをそれぞれN、M[fps]とし、前記一定周期をK[s]とする場合、前記撮像制御部は、前記位置推定部による推定レートOが、O=2N-1/Kとなるように制御を実行してもよい。
 前記自己位置推定部は、検出部と、距離推定部とをさらに具備してもよい。前記検出部は、前記2つの撮像部によりそれぞれ撮影された画像フレーム内の特徴点を検出するように構成される。前記距離推定部は、前記推定された自己位置と、前記2つの撮像部により異なる時刻に撮影された画像フレームとに基づき、前記特徴点までの距離を推定するように構成される。
 前記撮像制御部は、前記同じ時刻以外の期間が、前記2つの撮像部のうち一方のみが撮像を行う期間を含むように制御を実行してもよい。
 前記位置推定部は、前記一定周期内に前記2つの撮像部の一方のみにより異なる時刻に撮影された画像フレームに基づき、自己位置を推定するように構成されればよい。
 前記距離推定部は、前記推定された自己位置と、前記2つの撮像部の一方のみにより異なる時刻に撮影された画像フレームとに基づいて、前記特徴点までの距離を推定するように構成されればよい。
 前記検出部は、前記異なる時刻に撮影された画像フレームのうちの一方である第1画像フレームから、前記特徴点の2次元座標を算出するように構成されていてもよい。
 前記自己位置推定装置は、前記第1画像フレームと、前記異なる時刻に撮影された画像フレームのうち前記第1画像フレームより前に撮影された第2画像フレームとに基づき、前記第2画像フレーム上における、前記第1画像フレーム上の前記特徴点に対応する対応点を求めるように構成された動きマッチング部をさらに具備してもよい。
 一形態に係る自己位置推定方法は、2つの撮像部により一定周期で同じ時刻に撮影された画像フレームに基づき自己位置が推定され、かつ、前記一定周期内に前記2つの撮像部のうち少なくとも一方により異なる時刻に撮影された画像フレームに基づき、自己位置を推定することを含む。
 一形態に係るプログラムは、上記自己位置推定方法をコンピュータに実行させる。
 以上、本技術によれば、ステレオSLAMにおいて消費電力やデータ処理量を低減することができる。
 なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
図1は、参考例に係る自己位置推定装置の機能的な構成を示すブロック図である。 図2は、本技術の一実施形態に係る自己位置推定装置の機能的な構成を示すブロック図である。 図3は、一実施形態に係る撮像制御部による、ステレオカメラ部の撮像タイミングの例を示す図である。 図3は、一実施形態に係る撮像制御部による、ステレオカメラ部の撮像タイミングの他の例を示す図である。 図5は、一実施形態に係る撮像制御部による、ステレオカメラ部の撮像タイミングのさらに別の例を示す図である。
 以下、本技術に係る実施形態を、図面を参照しながら説明する。
 1.参考例に係る自己位置推定装置
 図1は、参考例に係る自己位置推定装置の機能的な構成を示すブロック図である。この自己位置推定装置100は、撮像制御部101、特徴点検出部103、視差マッチング部104、距離推定部105、メモリ106、107、動きマッチング部108、および位置推定部109を含む。
 撮像制御部101は、2つのカメラ(撮像部)102a、102bを含むステレオカメラ部102による撮像タイミングを制御する。ステレオカメラ部102は、撮像制御部101により供給される撮像タイミング信号をトリガーとして撮像を行う。
 なお、ステレオカメラ部102で撮影された2つの画像に対しては、光学歪み補正などを含む各種の補正およびゲイン調整が行われ、それぞれ撮影された2つの画像の姿勢ずれを相殺する平行化の処理が行われる。
 画像処理部は、特徴点検出部103、視差マッチング部104、距離推定部105、メモリ106、107、動きマッチング部108、および位置推定部109を含む。
 特徴点検出部103は、ステレオカメラ部102のうち一方のカメラ102bから出力される画像フレームについて、自己位置の推定のために利用される特徴的な点、つまり特徴点を検出する。特徴点の集まりは、典型的には、コントラストが高く、かつ、周囲に似たような構造を持たない模様になる。このような特徴点の検出および特徴量の表現方法として、HariisやSIFT(Scale-Invariant Feature Transform)等の方法がある。
 視差マッチング部104は、カメラ102aから出力される画像上から、特徴点検出部103により検出された他方(カメラ102b)の画像上の各特徴点に対応する各点を、テンプレートマッチング法により検索する。ここで見つかった、特徴点に対応する点(以下、対応点と言う)は、2つの視点から同一の対象を見た点であると考えられ、この視点による見えの違い(ずれ量)を視差と呼ぶ。つまり、視差マッチング部104は、対応点の2次元位置(つまり2次元座標)を出力する。
 距離推定部105は、視差マッチング部104により求められた各特徴点の視差に基づき、各特徴点の(ステレオカメラ部102からの)距離を推定し、その距離に基づき、特徴点の3次元空間内の位置を算出する。距離は3次元的な奥行方向の距離であるため、デプスとも呼ばれる。視差から距離を算出する方法は、三角測量の原理により可能である。具体的には、距離zは、以下の式(1)により求められる。
 z=fB/d ・・・(1)
 f:カメラの焦点距離
 B:2つのカメラ間の距離(基線長)
 d:観測された視差
 距離zが求められることにより、下記式(2)によって、特徴点の3次元空間内の位置(つまり3次元座標)である3dCurr(x,y,z)が算出される。
Figure JPOXMLDOC01-appb-M000001
 2dCurr(u,v):対応点の2次元座標
 K:カメラの内部パラメータ行列
 距離推定部105により推定された3次元座標の点群情報はメモリ106に記憶される。
 一方、特徴点検出部103からの出力である各特徴点の特徴量(マッチングのためのテンプレート等を含む)およびその2次元座標の情報は、メモリ107に記憶される。
 メモリ106、107に記憶されたそれらの特徴点群は、時間的に「次の画像フレーム」が得られた時、過去の画像フレームを特徴付ける点群となり、自己位置変化の基準となる過去の画像フレームとして利用される。当該「次の画像フレーム」は現在の画像フレームとなる。なお、式(2)は記号「Curr」は形式的なものであり、その前のフレーム(過去のフレーム)についても同様に成立する式である。
 次の画像フレーム(現在の画像フレーム)が得られた時、動きマッチング部108は、現在の画像フレームから、メモリ107に記憶された過去の画像フレーム上の各特徴点の対応点をテンプレートマッチング法により検索する。つまり、動きマッチング部108は、メモリ107から抽出された過去の画像フレーム上の各特徴点が、現在の画像フレーム上のどこに対応するのかを解析する。ここで見つかった対応点は、2つの視点から同一の対象を見た点であると考えられ、その見え方の違いはカメラ102bの時間的な位置(姿勢)の変化によるものである。
 以下では、説明の便宜上、「現在の画像フレーム」を「現在フレーム」、「過去の画像フレーム」を「過去フレーム」と省略して呼称する。
 位置推定部109は、メモリ106から出力された過去の画像フレームの3次元座標と、動きマッチング部108から出力された現在フレーム上の対応点の2次元座標とに基づき、過去フレームの撮影時刻から現在フレームの撮影時刻までのステレオカメラ部102の位置の変化(差分)を推定する。つまりこれが自己位置の変化であり、その積分が3次元空間内の自己位置として特定される。この位置の変化は、ポーズ差分やΔポーズとも呼ばれる。「位置」は、「姿勢」の意味も含み、以下同じである。
 なお、過去フレームと現在フレームとは、時間的に連続する画像フレームである必要はなく、それらの間に別の画像フレームがあってもよい。すなわち、カメラ102a、102bの両方による撮像フレームレートより、位置推定部による出力レート(自己位置の推定レート)が低くてもよい。
 3次元空間内の点群(3次元位置)と、その点群に対応する(すなわち,3次元空間内の点群を投影した)2次元平面上の点群(2次元位置)が与えられたとき、その投影平面の位置(すなわち、ステレオカメラ部102の位置を求めることは、各特徴点を2次元面に投影したときの画像フレーム上の誤差をコストとした最小化問題を解くことで可能となる。
 視差マッチング部104および距離推定部105により各特徴点の距離が求められるのは、ステレオカメラ部102によって同時刻における同一の点を異なる視点から見ることができるためである。すなわちこの場合、ステレオカメラ部102を構成する2つのカメラの撮像タイミングは同時である必要がある。
 ステレオカメラを用いることで、単一のカメラを用いる場合に比べ、距離の推定を容易かつ高精度に行える利点がある。一方で、ステレオカメラを用いる場合、単一のカメラを用いる場合に比べて、カメラの個数が倍になることから、消費電力やデータ処理量(処理対象の画素総数が増えるため)などのコスト面で不利である。
 移動体のアプリケーションとして例えば車やドローンなど、移動体(に搭載されるカメラ)の移動速度が大きく、また、運動の変化が急峻なケースにおいては、自己位置推定の精度を上げるため、より高速な撮像フレームレートで撮像が行われることが望まれる。そのためには、カメラの撮像フレームレートを高くすればよいが、ステレオカメラを高撮像フレームレートで利用する場合、上記コストがさらに大きくなる。
 2.本技術に係る自己位置推定装置
 図2は、本技術の一実施形態に係る自己位置推定装置の機能的な構成を示すブロック図である。
 この自己位置推定装置200の、特徴点検出部(検出部)203、視差マッチング部204、距離推定部205、メモリ206、207、動きマッチング部208、および位置推定部209は、図1で示した自己位置推定装置100の特徴点検出部103、視差マッチング部104、距離推定部105、メモリ106、107、動きマッチング部108、および位置推定部109とそれぞれほぼ同じ機能を有する。ただし、メモリ206、207、動きマッチング部208は、図1で示した情報の他、さらに別の情報を記憶する。
 この自己位置推定装置200は、基本的にはCPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等のハードウェアを備え、RAMやROMに記憶されたソフトウェアにより主な機能が実現され得る。CPUに代えて、あるいはCPUに加えて、FPGA(Field Programmable Gate Array)等のPLD(Programmable Logic Device)、あるいはDSP(Digital Signal Processor)等が用いられる場合もある。上記自己位置推定装置100についても同様である。メモリ206、207、および210のうち少なくとも2つは一体のメモリデバイスにより構成されていてもよい。
 撮像制御部201は、ステレオカメラ部202の撮像タイミングを制御する。本技術では、撮像制御部201は、一定周期で2つのカメラ202a、202bが同じ時刻に撮像を行い、その一定周期の期間内に2つのカメラ202a、202bのいずれか一方が他方と異なる時刻に撮像を行うようにタイミングを制御する。
 図3は、本実施形態に係る撮像制御部201による、ステレオカメラ部202の撮像タイミングの例を示す図である。本実施形態では、撮像制御部201は2つのカメラ202a、202bの撮像フレームレートが異なるように撮像タイミング信号を供給する。具体的には、2つのカメラ202a、202bの両方が、ハッチングの丸で示すように一定周期(図3では1[s])で同時刻に撮像を行い、また、白い丸で示すようにその同時刻以外の期間内で異なる時刻にそれぞれ撮像を行う。
 図3では、例えばカメラ202aの撮像フレームレートは6[fps]であり、カメラ202bのそれは5[fps]となっている。つまり、両者で撮像フレームレートが異なる。本技術は、カメラ202a、202bの両方で得られる画像フレームのレートにより、位置推定部209による出力レート(位置の推定レート)を実現しようとするものである。
 なお、図3は、簡単化のために低い撮像フレームレートを示しているが、現実的には、例えば15~120[fps]等のフレームレートが採用され得る。
 図2において、破線で囲まれた部分が、2つのカメラ202a、202bにより一定周期で同時刻に撮影された画像フレームを処理する部分である。一方、一点鎖線で囲まれた部分が、基本的には2つのカメラ202a、202bにより一定周期内に異なる時刻にそれぞれ撮影された画像フレームを処理する部分である。
 図2の説明に戻る。自己位置推定装置200は、セレクタ211、メモリ210、特徴点検出部(検出部)212、動きマッチング部213、距離推定部214をさらに備える。これらセレクタ211、特徴点検出部212、動きマッチング部213、距離推定部214は、主に、上記異なる時刻でそれぞれ撮影された画像フレーム(図3において白い丸で示す)を処理するための機能部である。
 一方、主に特徴点検出部203、視差マッチング部204、距離推定部205、動きマッチング部208、および位置推定部209は、主に、同じ時刻で撮影された画像フレーム(図3においてハッチングの丸で示す)を処理するための機能部である。
 セレクタ211は、2つのカメラ202a、202bで異なる時刻にそれぞれ撮影された画像フレームのうち、現在時刻において撮影されたカメラ側の画像フレーム(以下、有効画像フレームと言う)を選択して出力する。有効画像フレームは、メモリ210、特徴点検出部212、および動きマッチング部208にそれぞれ入力される。
 メモリ210は、同じ時刻で撮影された画像フレームを処理する際にはカメラ202bで撮影された(セレクタ211を介しない)画像フレームを記憶し、また、異なる時刻でそれぞれ撮影された画像フレームを処理する際にはセレクタ211から出力された有効画像フレームを記憶する。
 特徴点検出部212は、有効画像フレームの特徴点を検出する。特徴点の検出方法は、特徴点検出部203によるものと同様である。特徴点検出部212で検出されて得られる各特徴点の特徴量(マッチングのためのテンプレート等を含む)およびその2次元座標は、メモリ207に記憶される。また、それらは、動きマッチング部213に入力されるとともに、距離推定部214にも供給される。
 動きマッチング部213は、基本的に、メモリ210から過去時刻における画像フレームを抽出し、抽出した画像フレーム(第2画像フレーム)から、特徴点検出部212で得られた現在フレーム(第1画像フレーム)上の各特徴点の対応点をテンプレートマッチング法により検索する。つまり、動きマッチング部213は、特徴点検出部212で得られた現在フレーム(第1画像フレーム)上の各特徴点が、過去フレーム(第2画像フレーム)上のどこに対応するのかを解析する。ここで見つかった対応点は、2つの視点から同一の対象を見た点であると考えられ、その見え方の違いは、2つのカメラ202a、202bの時間的な位置の変化によるものである。
 一方、上述したように、動きマッチング部208は、メモリ207から抽出された過去フレーム上の各特徴点が、現在の有効画像フレーム上のどこに対応するのかを解析する点で、動きマッチング部213と異なる。
 距離推定部214は、動きマッチング部213から出力された過去フレーム上の対応点の2次元座標、特徴点検出部212から出力された現在フレーム上の各特徴点の2次元座標、および、位置推定部209から出力された位置差分(位置変化)を取得する。そして、距離推定部214は、これらの情報に基づき、ステレオカメラ部202からの各特徴点までの距離(デプス)を推定する。
 動きマッチング部213の処理により、有効画像フレーム(現在フレーム)の各特徴点について過去フレーム(別の視点に相当)上における対応点がわかっおり、位置推定部209の処理により、現在および過去フレーム間での位置差分がわかっている。したがって、距離推定部214は、異なる時刻に2つのカメラ202a、202bでそれぞれ撮影された画像フレーム(過去フレームと現在フレーム)間の移動視差によって、距離を推定することができる。この移動視差による距離は、後述する式(6)において、現在の距離である「3dCurr.z」に相当する。
 現在フレーム上の点の3次元座標を3dCurr、その点を過去フレームからみた場合の3次元座標を3dPrev、それら2フレーム間の位置差分をcRb(回転行列)およびcPb(並進ベクトル)とした場合、それら2フレーム間の3次元座標の間に次式(3)が成り立つ。
Figure JPOXMLDOC01-appb-M000002
 また、上述の式(2)より、各画像フレームにおける各点の3次元座標3dCurr(あるいは3dPrev)と、その点を画像フレーム上(2次元面)に投影した2次元座標2dCurr(あるいは2dPrev)の間に、次式(4)が成り立つ。
Figure JPOXMLDOC01-appb-M000003
 式(4)において、カメラ202a、202bの内部パラメータ行列Kは,焦点距離fおよび光学中心cより、次式(5)で表される。
Figure JPOXMLDOC01-appb-M000004
 式(4)において、2dPrevは動きマッチング部213からの出力値であり、2dCurrは特徴点検出部212からの出力値である。式(3)、(4)より、次式(6)が導かれる。
Figure JPOXMLDOC01-appb-M000005
 距離推定部214の処理として、上記式(6)の連立方程式(2つ(3dCurr.z,3dPrev.z)の変数に対して3つの式)を解くことにより,現在フレームにおける各点の距離である3dCurr.zが求められる。
 なお、図3に示すように、例えば時刻t0が撮影開始時刻であるとする。時刻t0では、両カメラ202a、202bで同時刻に撮像が行われる。時刻t0から見ると過去フレームは存在しないため、位置推定部209は、時刻t0に得られた両画像フレームのみによっては位置(位置差分)を推定することができない。位置推定部209が位置を出力できるのは、次の時刻t1においてカメラ202aから画像フレームが得られた以降である。例えば時刻t1では、位置推定部209から出力される位置差分は、時刻t1からt0までの間の位置差分である。
 上述したように、一点鎖線で囲まれた部分が、基本的には2つのカメラ202a、202bにより一定周期内に異なる時刻にそれぞれ撮影された画像フレームを処理する部分である。
 ここで時刻t1では、カメラ202aで撮影されセレクタ211で選択された有効画像フレームに対して、過去フレームとしては、時刻t0において2つのカメラ202a、202bで撮影された2つの画像フレームが原理的に存在する。上記したようにメモリ210は、それら2つの画像フレームのうち、カメラ202bで撮影された画像フレーム(セレクタ211を介しない)を記憶している。したがって、時刻t1にカメラ202aで撮影された現在の有効画像フレーム(の各特徴点の2次元座標)と、メモリ210に記憶されたカメラ202bで撮影された過去フレームとが、動きマッチング部213に入力され処理される。
 なお、メモリ210にセレクタ211を介さないで記憶される対象が、カメラ202aで撮影された画像フレームであってもよい。この場合、時刻t1にカメラ202aで撮影された現在の有効画像フレーム(の各特徴点の2次元座標)と、メモリ210に記憶されたカメラ202aで撮影された過去フレームとが、動きマッチング部213にて入力されて処理され得る。
 距離推定部214は、位置推定部209から出力された位置差分の情報を取得するので、距離推定部214の処理対象には過去フレームも含まれる。したがって、距離推定部214が距離を出力できるのは、時刻t1においてカメラ202aから画像フレームが得られた以降である。それ以降(時刻t2以降)、位置推定部209および距離推定部214が同様に処理を実行していくために、メモリ206は距離推定部214の出力値(各特徴点の距離3dCurr.zを含む3次元座標)を記憶する。
 メモリ207は、異なる時刻でそれぞれ撮影された画像フレームを処理する際には、特徴点検出部212で得られた有効画像フレーム上の点群の2次元座標を記憶する。例えばメモリ207は、時刻t9においてその画像フレーム上の点群の2次元座標を記憶する。動きマッチング部208が、次の時刻t10において、当該時刻t9に撮影されたその(過去の)画像フレームと、時刻t10にカメラ202bにより撮影された現在フレームとに基づき、対応点の2次元座標を得ることができる。
 なお、動きマッチング部208は、時刻t10において、当該時刻t9に撮影された過去フレームと、時刻t10にカメラ202aにより撮影された現在フレームとに基づき、対応点の2次元座標を得るようにしてもよい。
 カメラ202a、202bが剛体接続されることを前提に、カメラ202bのみで撮像が行われるタイミングで、カメラ202aの位置(あるいは逆に、カメラ202aのみで撮像が行われるタイミングで、カメラ202bの位置)を推定することは可能である。2つのカメラ202a、202b間の位置差分をaRb(回転行列)およびaPb(並進ベクトル)で表すとする。カメラ202bから求められたカメラ202bの位置をbRc(回転行列)およびbPc(並進ベクトル)で表す場合、カメラ202aの位置を表すaRc(回転行列)およびaPc(並進ベクトル)は、次式(7)および(8)でそれぞれ求められる。なお、記号「*」は積を意味する。
 aRc=aRb*bRc ・・・(7)
 aPc=aRb*bPc+aPb ・・・(8)
 逆の場合(カメラ202aの位置からカメラ202bの位置を求める場合)も同様に可能である。2つのカメラ202a、202b間の位置差分aPbおよびaRbは既知であってもよいし、システムが、推定されたカメラ202a、202bの位置関係からカルマンフィルタなどを用いて動的に推定してもよい。
 以上のように、本実施形態に係る自己位置推定装置200は、2つのカメラ202aおよび200bが同時刻に撮像を行うタイミング、および、一方のカメラ202aまたはbのみが撮像を行うタイミングのいずれにおいても、カメラ202aおよび200bの両方の位置を推定することができる。その結果、一方のカメラの撮像フレームレートより高速なレートでの位置の推定を実現できる。
 例えば図3に示す例では、6[fps]および5[fps]の撮像フレームレートに対して、位置の推定レートは10[fps]となる。例えば、60[fps]および59[fps]の撮像フレームレートに対して、位置の推定レートは118[fps]となる。
 このように、2つのカメラ202a、202bの撮像フレームレートが異なる場合、それぞれの撮像フレームレートをN,M[fps]としたとき、位置の推定レートOは式(9)で表せる。なお、式(9)中のgcd(N,M)は、NおよびMの最大公約数を表す。
 O=N+M-gcd(N,M) ・・・(9)
 図3に示したように、撮像フレームレートNおよびMは互いに素の関係にあり、かつ、その差が1であるとき、最大限の推定レートを実現できる。
 上記のように、本実施形態では、推定レートを高速化できるが、逆にいえば、一方にカメラの撮像フレームレートと同じ推定レートを実現するために必要な撮像フレームレートを(最大で1/2程度まで)下げることができる。結果として、消費電力やデータ処理量を削減することができる。
 ところで、図3に示すように、2つのカメラ202a、202bを互いに異なるフレームレートで駆動した場合、完全に同時刻に撮像されるタイミングは1秒に1回しか存在しない。しかし、撮像フレームレートによっては、完全に同時刻でなくともかなり近い時刻になる(2つのカメラ202a、202bの撮像タイミングが近接する)ケースが考えられる。2つのカメラ202a、202b間の撮像タイミングの差が、移動体の移動速度からして無視できるほど小さい場合がある。この場合、自己位置推定装置200は、それらを同時刻に撮像されたものとみなして距離および位置の推定(図2において破線で示す枠内の処理)を行ってもよい。
 移動体の移動速度が速い場合、カメラ202a、202bの撮像タイミングの差が小さくても無視できないケースがある。したがって、この自己位置推定装置200が搭載される移動体が取り得る最大移動速度に応じて、この自己位置推定装置200の設計または製造時において、当該無視できる撮像タイミングの差の閾値が設定されればよい。
 撮像制御部201は、撮像タイミングを可変に制御することもできる。図4は、そのような可変な撮像タイミングの例を示す。この例は、2つのカメラ202a、202bの撮像フレームレートが同一である期間を含むが、同時刻での撮像が行われる一定周期内で、互いに位相が半周期ずれている。
 具体的には、図3に示した例と同様に、2つのカメラ202a、202bにより1[s]の一定周期で同時刻に撮像が行われる。撮像フレームレートは、カメラ202a、202bとも変速の4[fps]である。一定周期内の同時刻以外の期間では、カメラ202aは当該同時刻後の最初の1回について、カメラ202bは最後の1回について、7[fps]で撮像を行う。このように、撮像タイミングを可変にすることによって、推定レートを一定にすることができる。
 図4に示す例では、撮像フレームレートをN[fps]、撮像タイミングを揃えるための同期フレームを挿入する間隔をK[s]としたとき、推定レートOは式(10)で表せる。
 O=2N-1/K ・・・(10)
 図5は、撮像制御部201によるさらに別の撮像タイミングの例を示す。この例では、撮像制御部201は、2つのカメラ202a、202bが一定周期(1[s])で同時刻に撮像を行い、かつ、一定周期内の当該同時刻以外の期間が、2つのカメラ202a、202bのうち一方のみ、ここではカメラ202aのみが撮像を行う期間を含むように制御を実行する。カメラ202aのみが行う撮像の期間の撮像フレームレートは例えば7[fps]である。この場合、推定レートは、カメラ202aの撮像フレームレートと同じとなる。
 この例では、一定周期における同時刻撮像以外の期間内に、カメラ202aが少なくとも2回連続して撮像を行う。すなわち、カメラ202bが撮像を行わない期間内に、カメラ202aが異なる時刻にそれぞれ撮像を行う。この場合、位置推定部209および距離推定部214は、カメラ202aによりそのように連続して撮影された2つの画像フレームを利用して、それらの画像フレーム間での位置推定および距離推定を行うことができる。このような撮像タイミングを採用した処理も、本技術の範囲に含まれる。
 図5に示す例では、少なくとも1つのカメラ202aによっても、位置推定を行うことができるため、消費電力やデータ処理量を低減することができる。
 ここで、図3、4に示した撮像タイミングの例を採用した処理のメリットは大きく3つある。この3つのメリットを、図5に示した撮像タイミングの例を採用した処理と比較しながら、以下に説明する。
 1つ目として、カメラの撮像フレームレートを比較すると、図4に示す例は露光時間を長く取ることができるというメリットがある。図4に示す例では、図5に示す例と同じ推定レートを実現するために必要な撮像フレーム(カメラ202a、202bの個別のフレームレート)が、図5に比べ低いため、露光時間を長く取ることができる。図4に示す例は、特に、SN比が課題となる暗所などで有利である。
 2つ目として、単一のカメラのキャリブレーションがずれていた場合の影響が、図3、4に示す例の場合、緩和できる可能性がある。例えば図5に示す例のように一方のカメラ202aのみを用いて位置を推定する場合に比べて、図3、4に示す例は、2つのカメラ202a、202bによりそれぞれ位置を推定し、それらの結果をカルマンフィルタ等で最適化できる。したがって、一方のカメラに不具合等があっても、他方のカメラでそれを補償できる可能性がある。
 3つ目として、2つのカメラ202a、202bに含まれる(2つのカメラ分の)広い画角を利用できるというメリットがある。
 3.変形例
 本技術は、以上説明した実施形態に限定されず、他の種々の実施形態を実現することができる。
 図5に示す例の変形例として、カメラ202bが同時刻以外の期間でも少なくとも1回の撮像を行うようにしてもよい。例えばカメラ202aが7[fps]、カメラ202bが2[fps]の撮像フレームレートで撮像を行うことができる。この場合も、カメラ202bが撮像を行わない期間内に、カメラ202aが異なる時刻に撮像を行うことについては図5に示す例と同様である。
 2つのカメラ202a、202bは、主に可視光を受光する撮像センサを備えるが、紫外光や赤外光も撮像可能な撮像センサを備えていてもよい。
 以上説明した各形態の特徴部分のうち、少なくとも2つの特徴部分を組み合わせることも可能である。
 なお、本技術は以下のような構成もとることができる。
(1)
 2つの撮像部により一定周期で同じ時刻に撮影された画像フレームに基づき自己位置を推定し、かつ、前記一定周期内に前記2つの撮像部のうち少なくとも一方により異なる時刻に撮影された画像フレームに基づき自己位置を推定するように構成された位置推定部
 を具備する自己位置推定装置。
(2)
 前記(1)に記載の自己位置推定装置であって、
 前記2つの撮像部が異なる撮像フレームレートで撮像を行うように、前記2つの撮像部による撮像タイミングを制御する撮像制御部をさらに具備する
 自己位置推定装置。
(3)
 前記(2)に記載の自己位置推定装置であって、
 前記2つの撮像部による撮像フレームレートをそれぞれN、M[fps]とし、それら2つの値の最大公約数をgcd(N,M)とする場合、前記撮像制御部は、前記位置推定部による推定レートOが、
 O=N+M-gcd(N,M)
 となるように制御を実行する
 自己位置推定装置。
(4)
 前記(3)に記載の自己位置推定装置であって、
 前記撮像フレームレートNおよびMは互いに素の関係にある
 自己位置推定装置。
(5)
 前記(4)に記載の自己位置推定装置であって、
 前記撮像フレームレートNおよびMの差が1である
 自己位置推定装置。
(6)
 前記(1)に記載の自己位置推定装置であって、
 前記撮像制御部は、前記2つの撮像部のうち少なくとも一方の撮像フレームレートを可変に制御する
 自己位置推定装置。
(7)
 前記(6)に記載の自己位置推定装置であって、
 前記撮像制御部は、自己位置の推定レートが一定となるように制御を実行する
 自己位置推定装置。
(8)
 前記(7)に記載の自己位置推定装置であって、
 前記2つの撮像部による同一の撮像フレームレートをそれぞれN、M[fps]とし、前記一定周期をK[s]とする場合、前記撮像制御部は、前記位置推定部による推定レートOが、
 O=2N-1/K
 となるように制御を実行する
 自己位置推定装置。
(9)
 前記(1)に記載の自己位置推定装置であって、
 前記2つの撮像部によりそれぞれ撮影された画像フレーム内の特徴点を検出するように構成された検出部と、
 前記推定された自己位置と、前記2つの撮像部により異なる時刻に撮影された画像フレームとに基づき、前記特徴点までの距離を推定するように構成された距離推定部と
 をさらに具備する自己位置推定装置。
(10)
 請求項9に記載の自己位置推定装置であって、
 前記2つの撮像部が異なる撮像フレームレートで撮像を行うように、前記2つの撮像部による撮像タイミングを制御する撮像制御部をさらに具備し、
 前記撮像制御部は、前記同じ時刻以外の期間が、前記2つの撮像部のうち一方のみが撮像を行う期間を含むように制御を実行し、
 前記位置推定部は、前記一定周期内に前記2つの撮像部の一方のみにより異なる時刻に撮影された画像フレームに基づき、自己位置を推定するように構成され、
 前記距離推定部は、前記推定された自己位置と、前記2つの撮像部の一方のみにより異なる時刻に撮影された画像フレームとに基づき、前記特徴点までの距離を推定するように構成される
 自己位置推定装置。
(11)
 前記(9)または(10)のうちいずれか1つに記載の自己位置推定装置であって、
 前記検出部は、前記異なる時刻に撮影された画像フレームのうちの一方である第1画像フレームから、前記特徴点の2次元座標を算出するように構成され、
 前記第1画像フレームと、前記異なる時刻に撮影された画像フレームのうち前記第1画像フレームより前に撮影された第2画像フレームとに基づき、前記第2画像フレーム上における、前記第1画像フレーム上の前記特徴点に対応する対応点を求めるように構成された動きマッチング部をさらに具備する
 自己位置推定装置。
(12)
 2つの撮像部により一定周期で同じ時刻に撮影された画像フレームに基づき自己位置を推定し、
 前記一定周期内に前記2つの撮像部のうち少なくとも一方により異なる時刻に撮影された画像フレームに基づき自己位置を推定する
 自己位置推定方法。
(13)
 2つの撮像部により一定周期で同じ時刻に撮影された画像フレームに基づき自己位置を推定し、
 前記一定周期内に前記2つの撮像部のうち少なくとも一方により異なる時刻に撮影された画像フレームに基づき自己位置を推定する
 ことをコンピュータに実行させるプログラム。
 200…自己位置推定装置
 201…撮像制御部
 202…ステレオカメラ部
 202a、202b…カメラ
 203、212…特徴点検出部
 204…視差マッチング部
 205、214…距離推定部
 206、207、210…メモリ
 208、213…動きマッチング部
 209…位置推定部
 211…セレクタ

Claims (13)

  1.  2つの撮像部により一定周期で同じ時刻に撮影された画像フレームに基づき自己位置を推定し、かつ、前記一定周期内に前記2つの撮像部のうち少なくとも一方により異なる時刻に撮影された画像フレームに基づき自己位置を推定するように構成された位置推定部
     を具備する自己位置推定装置。
  2.  請求項1に記載の自己位置推定装置であって、
     前記2つの撮像部が異なる撮像フレームレートで撮像を行うように、前記2つの撮像部による撮像タイミングを制御する撮像制御部をさらに具備する
     自己位置推定装置。
  3.  請求項2に記載の自己位置推定装置であって、
     前記2つの撮像部による撮像フレームレートをそれぞれN、M[fps]とし、それら2つの値の最大公約数をgcd(N,M)とする場合、前記撮像制御部は、前記位置推定部による推定レートOが、
     O=N+M-gcd(N,M)
     となるように制御を実行する
     自己位置推定装置。
  4.  請求項3に記載の自己位置推定装置であって、
     前記撮像フレームレートNおよびMは互いに素の関係にある
     自己位置推定装置。
  5.  請求項4に記載の自己位置推定装置であって、
     前記撮像フレームレートNおよびMの差が1である
     自己位置推定装置。
  6.  請求項1に記載の自己位置推定装置であって、
     前記撮像制御部は、前記2つの撮像部のうち少なくとも一方の撮像フレームレートを可変に制御する
     自己位置推定装置。
  7.  請求項6に記載の自己位置推定装置であって、
     前記撮像制御部は、自己位置の推定レートが一定となるように制御を実行する
     自己位置推定装置。
  8.  請求項7に記載の自己位置推定装置であって、
     前記2つの撮像部による同一の撮像フレームレートをそれぞれN、M[fps]とし、前記一定周期をK[s]とする場合、前記撮像制御部は、前記位置推定部による推定レートOが、
     O=2N-1/K
     となるように制御を実行する
     自己位置推定装置。
  9.  請求項1に記載の自己位置推定装置であって、
     前記2つの撮像部によりそれぞれ撮影された画像フレーム内の特徴点を検出するように構成された検出部と、
     前記推定された自己位置と、前記2つの撮像部により異なる時刻に撮影された画像フレームとに基づき、前記特徴点までの距離を推定するように構成された距離推定部と
     をさらに具備する自己位置推定装置。
  10.  請求項9に記載の自己位置推定装置であって、
     前記2つの撮像部が異なる撮像フレームレートで撮像を行うように、前記2つの撮像部による撮像タイミングを制御する撮像制御部をさらに具備し、
     前記撮像制御部は、前記同じ時刻以外の期間が、前記2つの撮像部のうち一方のみが撮像を行う期間を含むように制御を実行し、
     前記位置推定部は、前記一定周期内に前記2つの撮像部の一方のみにより異なる時刻に撮影された画像フレームに基づき、自己位置を推定するように構成され、
     前記距離推定部は、前記推定された自己位置と、前記2つの撮像部の一方のみにより異なる時刻に撮影された画像フレームとに基づき、前記特徴点までの距離を推定するように構成される
     自己位置推定装置。
  11.  請求項9に記載の自己位置推定装置であって、
     前記検出部は、前記異なる時刻に撮影された画像フレームのうちの一方である第1画像フレームから、前記特徴点の2次元座標を算出するように構成され、
     前記第1画像フレームと、前記異なる時刻に撮影された画像フレームのうち前記第1画像フレームより前に撮影された第2画像フレームとに基づき、前記第2画像フレーム上における、前記第1画像フレーム上の前記特徴点に対応する対応点を求めるように構成された動きマッチング部をさらに具備する
     自己位置推定装置。
  12.  2つの撮像部により一定周期で同じ時刻に撮影された画像フレームに基づき自己位置を推定し、
     前記一定周期内に前記2つの撮像部のうち少なくとも一方により異なる時刻に撮影された画像フレームに基づき自己位置を推定する
     自己位置推定方法。
  13.  2つの撮像部により一定周期で同じ時刻に撮影された画像フレームに基づき自己位置を推定し、
     前記一定周期内に前記2つの撮像部のうち少なくとも一方により異なる時刻に撮影された画像フレームに基づき自己位置を推定する
     ことをコンピュータに実行させるプログラム。
PCT/JP2019/015755 2018-04-26 2019-04-11 自己位置推定装置、自己位置推定方法、およびそのプログラム WO2019208234A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/045,880 US11386574B2 (en) 2018-04-26 2019-04-11 Self-position estimation device, self-position estimation method, and program thereof
DE112019002126.5T DE112019002126T5 (de) 2018-04-26 2019-04-11 Positionsschätzungsvorrichtung, positionsschätzungsverfahren und programm dafür

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-085420 2018-04-26
JP2018085420 2018-04-26

Publications (1)

Publication Number Publication Date
WO2019208234A1 true WO2019208234A1 (ja) 2019-10-31

Family

ID=68295413

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/015755 WO2019208234A1 (ja) 2018-04-26 2019-04-11 自己位置推定装置、自己位置推定方法、およびそのプログラム

Country Status (3)

Country Link
US (1) US11386574B2 (ja)
DE (1) DE112019002126T5 (ja)
WO (1) WO2019208234A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110793525A (zh) * 2019-11-12 2020-02-14 深圳创维数字技术有限公司 车辆定位方法、设备及计算机可读存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9083960B2 (en) * 2013-01-30 2015-07-14 Qualcomm Incorporated Real-time 3D reconstruction with power efficient depth sensor usage
JP2016045874A (ja) 2014-08-26 2016-04-04 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
US10295365B2 (en) * 2016-07-29 2019-05-21 Carnegie Mellon University State estimation for aerial vehicles using multi-sensor fusion
KR20240005161A (ko) * 2016-12-09 2024-01-11 톰톰 글로벌 콘텐트 비.브이. 비디오 기반 위치결정 및 매핑을 위한 방법 및 시스템
US11074463B2 (en) * 2017-05-02 2021-07-27 Qualcomm Incorporated Dynamic sensor operation and data processing based on motion information

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SAKAGUCHI YUSUKE ET AL.: "PRMU 2008-111-146 Pattern Recognition and Media Understanding- Simultaneous Localization and Mapping Using Monocular and Binocular Estimators", IEICE TECHNICAL REPORT, vol. 108, no. 327, pages 161 - 168 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110793525A (zh) * 2019-11-12 2020-02-14 深圳创维数字技术有限公司 车辆定位方法、设备及计算机可读存储介质

Also Published As

Publication number Publication date
US11386574B2 (en) 2022-07-12
US20210142510A1 (en) 2021-05-13
DE112019002126T5 (de) 2021-01-07

Similar Documents

Publication Publication Date Title
KR102105189B1 (ko) 관심 객체 추적을 위한 다중 카메라 동적 선택 장치 및 방법
US9774837B2 (en) System for performing distortion correction and calibration using pattern projection, and method using the same
JP6570327B2 (ja) 制御装置、撮像装置、制御方法、プログラム、および、記憶媒体
US10469828B2 (en) Three-dimensional dense structure from motion with stereo vision
JP4160572B2 (ja) 画像処理装置及び画像処理方法
US20190051036A1 (en) Three-dimensional reconstruction method
KR102455632B1 (ko) 스테레오 매칭 방법 및 장치
KR101737085B1 (ko) 3차원 카메라
KR101672732B1 (ko) 객체 추적 장치 및 방법
US9807372B2 (en) Focused image generation single depth information from multiple images from multiple sensors
JP2007263669A (ja) 3次元座標取得装置
JP6694234B2 (ja) 距離測定装置
US20230283898A1 (en) Image processing device, image processing method and non-transitory computer-readable recording medium
JP2003207324A (ja) 3次元情報取得装置及び3次元情報取得方法
JP3988574B2 (ja) 画像処理装置
JP6622575B2 (ja) 制御装置、制御方法、およびプログラム
WO2019208234A1 (ja) 自己位置推定装置、自己位置推定方法、およびそのプログラム
US9538161B2 (en) System and method for stereoscopic photography
US8848976B2 (en) Method for tracking parametric motion of an area using complex discrete wavelet transform
WO2023102102A1 (en) Systems and methods for temporal autocalibration in a camera system
JP2019212203A (ja) 3dモデル作成システム
JP4469757B2 (ja) 画像処理装置
JP2011146762A (ja) 立体モデル生成装置
JP7191711B2 (ja) 画像処理装置、画像処理方法、及びプログラム
WO2018235256A1 (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: 19792619

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 19792619

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP