WO2022186256A1 - マップ情報更新方法 - Google Patents

マップ情報更新方法 Download PDF

Info

Publication number
WO2022186256A1
WO2022186256A1 PCT/JP2022/008794 JP2022008794W WO2022186256A1 WO 2022186256 A1 WO2022186256 A1 WO 2022186256A1 JP 2022008794 W JP2022008794 W JP 2022008794W WO 2022186256 A1 WO2022186256 A1 WO 2022186256A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
map information
reprojection error
inference engine
error
Prior art date
Application number
PCT/JP2022/008794
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 JP2023503896A priority Critical patent/JPWO2022186256A1/ja
Publication of WO2022186256A1 publication Critical patent/WO2022186256A1/ja
Priority to US18/341,466 priority patent/US20230335016A1/en

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B29/00Maps; Plans; Charts; Diagrams, e.g. route diagram
    • G09B29/10Map spot or coordinate position indicators; Map reading aids
    • G09B29/106Map spot or coordinate position indicators; Map reading aids using electronic means
    • 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/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B29/00Maps; Plans; Charts; Diagrams, e.g. route diagram

Definitions

  • This disclosure relates to a map information update method.
  • VSLAM Vehicle Simultaneous Localization and Mapping
  • the main processing in the VSLAM technology is the position of the captured landmark in the key frame, the assumed orientation information of the key frame (that is, the position and orientation of the camera), and the key frame calculated from the assumed landmark position. and the reprojection error, which is the error from the reprojection position, which is the position within the is to find the position of
  • map information is referred to as map information.
  • Non-Patent Document 1 Searching for map information that makes the reprojection error 0 is called bundle adjustment, and is generally classified as a nonlinear least-squares optimization problem. Therefore, in bundle adjustment, it is necessary to finely correct the map information so as to reduce the reprojection error, and repeat the correction until the value of the reprojection error converges.
  • Non-Patent Document 1 Non-Patent Document 2.
  • Algorithms using the gradient method are generally used as algorithms for convergence that are required during bundle adjustment.
  • an algorithm using the gradient method for example, an algorithm combining the steepest descent method and the Gauss-Newton method is known. In this algorithm, correction is performed using the steepest descent method until the reprojection error approaches the minimum value, and then correction is performed using the Gauss-Newton method after the reprojection error approaches the minimum value.
  • the present disclosure has been made to solve such problems, and aims to provide a map information update method that can reduce the amount of calculation.
  • a map information updating method provides one or more location information associated with one or more landmarks and one or more keyframes. and one or more attached pose information, wherein each of the one or more keyframes includes at least one of the one or more landmarks.
  • each of the one or more orientation information includes position and orientation information, and a projection relation obtaining step of obtaining one or more projection relations,
  • Each of the above projection relationships includes each of the one or more landmarks, each of the one or more keyframes, and each of the one or more landmarks on each of the one or more keyframes.
  • projection coordinate information corresponding to the coordinates of the projection point on the key frame when projected;
  • the position information the position information associated with one of the one or more landmarks that constitute the projection relationship, and of the one or more posture information, the one or more of the one or more that constitute the projection relationship.
  • a projection error information obtaining step for each of the one or more landmarks, generating a first group of reprojection error information aggregated from all the reprojection error information associated with the landmark; a landmark origin error aggregating step of obtaining a first total value based on all the reprojection error information included in the first reprojection error information group; generating a second group of reprojection error information aggregated from all the reprojection error information associated with the keyframes, based on all the reprojection error information included in the second group of reprojection error information; a keyframe starting point error aggregating step for obtaining a second total value; and for each of the one or more landmarks, position information of the landmark among the one or more position information from the first total value.
  • FIG. 1 is a flow chart showing the flow of the map information updating method according to the first embodiment.
  • FIG. 2 is a schematic graph showing the relationship between map information and reprojection error in bundle adjustment.
  • FIG. 3 is a schematic graph for explaining an outline of prediction map information according to Embodiment 1.
  • FIG. 4 is a flowchart showing a method of calculating prediction map information according to Embodiment 1.
  • FIG. 5 is a schematic diagram illustrating a projection relationship between keyframes and landmarks.
  • FIG. 6 is a schematic diagram for explaining the first reprojection error information group according to the first embodiment.
  • 7 is a schematic diagram for explaining a second reprojection error information group according to Embodiment 1.
  • FIG. 8 is a block diagram showing a functional configuration of the map information updating device according to Embodiment 1.
  • FIG. 9 is a diagram showing an example of the hardware configuration of a computer for executing the method according to each embodiment by software.
  • the map information update method is a method used in VSLAM technology that simultaneously estimates the position of the camera and the positions of surrounding landmarks from the information contained in the keyframes, which are the captured images. is.
  • the map information updating method according to the present embodiment includes one or more position information respectively associated with one or more landmarks and one or more orientation information each associated with one or more keyframes. and update the map information, including Each of the one or more keyframes is a captured image captured to include at least one of the one or more landmarks.
  • Each of the one or more pieces of orientation information includes information on the position and orientation of the camera used for shooting.
  • the first coordinate system is a coordinate system that is fixed with respect to the space in which cameras and the like are arranged, and is also called a world coordinate system.
  • a landmark is a three-dimensional point created in a first coordinate system.
  • a landmark is generated by triangulation based on corresponding feature points included in each of two keyframes. be.
  • map information updating method map information including the estimated positions of the camera and one or more landmarks in the first coordinate system is updated. Specifically, the map information according to the present embodiment is updated when the information of the keyframe captured by the camera is added to the map information and/or when the bundle adjustment is performed.
  • FIG. 1 is a flow chart showing the flow of the map information updating method according to this embodiment.
  • map information is acquired (S20).
  • the map information includes at least position information of one or more landmarks and orientation information of one or more keyframes.
  • projected coordinate information indicating the position of one or more landmarks in the second coordinate system in the keyframes captured by the camera is obtained (S30).
  • the second coordinate system is a coordinate system fixed with respect to the captured image, and is also called a keyframe coordinate system.
  • Projected coordinate information is the position in the second coordinate system of the feature point corresponding to the position of one or more landmarks.
  • the projection coordinate information is information corresponding to the coordinates of the projection points on the keyframes when each of the one or more landmarks is projected onto each of the one or more keyframes.
  • additional map information is generated by adding projection coordinate information to the map information acquired in step S20 (S40).
  • Information related to projection coordinate information may be added to the additional map information.
  • the information related to the projected coordinate information is the estimated positions of landmarks generated based on the feature points included in the keyframes.
  • the information related to the projected coordinate information may be information roughly estimated from the position of the camera or the like.
  • step S40 predictive map information is calculated based on the additional map information generated in step S40, and the map information updated in step S40 is updated to predictive map information (S50).
  • a method for calculating prediction map information will be described.
  • bundle adjustment is generally performed. That is, search is made for map information that makes the reprojection error zero.
  • the reprojection error is information obtained based on position information, orientation information, and projection coordinate information. More specifically, a function for calculating the error between the projected coordinate information and the re-projected position on the captured image corresponding to the projected coordinate information in the projected coordinates, which is calculated based on the map information.
  • the reprojection error is an error calculated using a reprojection error function for one or more landmarks included in the map information, and a reprojection error function for each of one or more keyframes. may include the sum of one or both of the errors calculated using
  • FIG. 2 is a schematic graph showing the relationship between map information and reprojection error in bundle adjustment.
  • the horizontal axis of FIG. 2 indicates the amount of the map information schematically expressed as one variable, and the vertical axis indicates the reprojection error for the map information.
  • bundle adjustment corrects the map information before bundle adjustment to map information that minimizes the reprojection error.
  • a gradient method such as an algorithm that combines the steepest descent method and the Gauss-Newton method
  • Map information that minimizes the reprojection error is searched for by repeating calculation of the reprojection error after correction.
  • the map information that minimizes the reprojection error is hereinafter also referred to as a map information solution.
  • the computational complexity of generating the Hessian matrix and calculating the correction amount by solving simultaneous equations using the nonlinear least squares method for each iteration of correction Includes a lot of processing.
  • iterative calculations need to be performed many times.
  • the present embodiment reduces the amount of computation by using an inference engine for at least part of the prediction map information calculation.
  • An outline of a method for calculating prediction map information according to this embodiment will be described with reference to FIG.
  • FIG. 3 is a schematic graph for explaining an outline of prediction map information according to the present embodiment.
  • map information with a reprojection error close to the minimum value is calculated as predicted map information based on map information using an inference engine.
  • a prediction neural network included in such an inference engine is a trained neural network that has been trained using learning map information as input and updated learning map information as teacher data.
  • a loss function based on the difference between the updated map information for learning and the map information output from the neural network is considered, and the learning proceeds so as to set the loss function to zero.
  • the learning map information is not particularly limited as long as it is the same information as the additional map information used in the map information updating method according to the present embodiment.
  • the updated map information for learning is map information that is generated based on the map information for learning and that reduces the reprojection error calculated using the reprojection error function. Therefore, the loss function in learning may be based on this reprojection error function. Since the reprojection error function can be obtained directly from the (learning) map information, learning in this case does not require updated learning map information as teacher data.
  • the reprojection error function is a function for calculating the error between the projection coordinate information and the reprojection position on the captured image corresponding to the projection coordinate information, which is calculated based on the map information. be.
  • the reprojection error function specifically, for example, a well-known function such as that described in Non-Patent Document 1 can be used.
  • the updated map information for learning can be obtained, for example, by actually performing bundle adjustment using the gradient method on the projected coordinate information for learning and the map information for learning.
  • the map information that reduces the reprojection error may be map information that minimizes the reprojection error, for example.
  • the map information that minimizes the reprojection error is not limited to map information that strictly minimizes the reprojection error, but includes map information that approximately minimizes the reprojection error.
  • the map information that minimizes the reprojection error includes map information in which the difference between the reprojection error of the map information and the minimum value of the reprojection error is 5% or less of the minimum value.
  • the prediction neural network learns the shape of the error function that indicates the relationship between the map information and the reprojection error.
  • Learning of a prediction neural network is a process corresponding to fitting to an error function.
  • the prediction neural network can predict the map information that minimizes the reprojection error.
  • Information such as the position of the camera included in the map information changes according to the map information, but the error function learned by the prediction neural network does not change.
  • the prediction map information may not be map information that minimizes the reprojection error.
  • the predicted map information calculated using the inference engine becomes farther from the solution of the map information (that is, the difference between the predicted map information and the solution of the map information is a difference between the additional map information and the solution of the map information) may be added.
  • an inference engine that predicts a correction direction that approaches the solution of the map information with respect to the additional map information is prepared in advance, and the inference engine determines whether or not the predicted map information is closer to the solution of the map information than the additional map information. You can judge.
  • At least part of the calculations such as solution calculation of simultaneous equations in the conventional gradient method can be replaced with inference using an inference engine. Therefore, in this embodiment, the amount of calculation can be reduced and the parallelism of operations can be increased as compared with the gradient method. Therefore, in this embodiment, effects such as speeding up map information updating and low power consumption can be obtained. Furthermore, inference using an inference engine may also reduce computational accuracy. Therefore, it is also possible to simplify the hardware configuration such as a computer for executing the map information updating method. The details of the calculation method of the prediction map information using the inference engine will be described later.
  • the updated map information is spatially geometrically calculated for the updated map information in step S50, and the updated map information is updated to the updated map information in step S50.
  • map information is updated using an algorithm that combines the steepest descent method and the Gauss-Newton method, for example, to bring the map information closer to the solution of the map information.
  • the reprojection error for the map information is calculated (S70). Specifically, the reprojection error for the map information is calculated using the reprojection error function described above.
  • the convergence of updating the map information updated in step S60 is determined based on the reprojection error calculated using the reprojection error function for the map information updated in step S60. Based on this, it is determined whether to return to the prediction step or update step, or to finish updating the map information updated in step S60 (S80). For example, if the amount of change from the previous determination of the reprojection error (at the time of the first determination, the amount of change from the reprojection error for the prediction map information) ⁇ E is smaller than the predetermined convergence threshold Sc (in S80 ⁇ E ⁇ Sc), it is determined that the map information solution has been obtained, and the update of the map information ends.
  • the process returns to step S50 to calculate the prediction map information again. Further, when the amount of change ⁇ E from the previous determination of the reprojection error is equal to or greater than the convergence threshold Sc and the reprojection error E is equal to or less than the upper limit Su ( ⁇ E ⁇ Sc, E ⁇ Su in S80), Returning to step S60, the map information is updated again using the gradient method.
  • map information update method By using the map information update method described above, the amount of calculation required to update map information can be reduced compared to the case of using conventional technology.
  • FIG. 4 is a flow chart showing a method of calculating prediction map information according to this embodiment.
  • FIG. 5 is a schematic diagram illustrating a projection relationship between keyframes and landmarks.
  • a projection relationship is one landmark, one keyframe, and projection coordinate information corresponding to the coordinates of the projection point on the keyframe when the one landmark is projected onto the one keyframe. relationship.
  • FIG. 5 shows two landmarks LM1, LM2 and two keyframes KF1, KF2.
  • FIG. 5 also shows projection coordinate information C11 and C12 obtained by projecting the landmark LM1 onto the key frames KF1 and KF2, respectively. Coordinate information C21 and C22 are shown.
  • the projection relationship for each of one or more landmarks and each of one or more keyframes is obtained.
  • a correspondence relationship between LM2, the key frame KF1, and the projection coordinate information C21, and a correspondence relationship between the landmark LM2, the key frame KF2, and the projection coordinate information C22 are included.
  • the projection coordinate information is the coordinates of the actual projection point on the keyframe of the landmark projected onto the keyframe, not the coordinates calculated from the map information.
  • reprojection error information is obtained, and the reprojection error information is associated with the projection relation (reprojection error information obtaining step S520).
  • the reprojection error information is inferred from one of the one or more position information, one of the one or more pose information, and the projection coordinate information corresponding to one projection relationship. Contains features indicating the result.
  • the reprojection error is an error spatially and geometrically calculated from the position information, the orientation information, and the projection coordinate information. Instead, a feature quantity indicating the result of inferring this reprojection error is obtained.
  • Feature quantities included in the reprojection error information include, for example, weight vectors and error vectors corresponding to projection relationships corresponding to landmarks and key frames. In other words, the feature quantity includes terms commonly included in blocks including diagonal elements of the Hessian matrix used to calculate the update value of the map information.
  • I ⁇ j is 0 or 1 and indicates the visibility of the ⁇ -th landmark from the j-th camera orientation.
  • R j is a rotation matrix indicating the pose of the j-th camera.
  • W ⁇ j is a 3 ⁇ 2 matrix calculated from the ⁇ -th landmark and the j-th camera pose.
  • e ⁇ j is the difference between the reprojected coordinates and the projection coordinate information (coordinates of the actual projection point), and is a two-dimensional coordinate vector.
  • the elements related to the diagonal blocks of the Hessian matrix and the diagonal blocks of the gradient vector are represented by the following equations (4a) to (5c), where ⁇ is an integer of 1 or more and M or less. be done.
  • x i is the position information of the i-th landmark.
  • t ⁇ is the translation vector of the ⁇ -th camera pose, which is the camera position.
  • the feature amount is calculated based on u ⁇ , R ⁇ W ⁇ , (x ⁇ ⁇ t ⁇ ).
  • u ⁇ represents the reprojected coordinates.
  • R ⁇ W ⁇ represents a weighting factor.
  • (x ⁇ ⁇ t ⁇ ) indicates the relative position of the landmark and the keyframe. Such a feature amount is obtained for each correspondence relationship.
  • the landmark originating point errors are aggregated (landmark originating point error aggregation step S530). That is, for each of one or more landmarks, a first reprojection error information group is generated in which all reprojection error information associated with the landmark is aggregated, and the first reprojection error information A first sum based on all reprojection error information included in the group is determined.
  • the first reprojection error information group will be explained using FIG.
  • FIG. 6 is a schematic diagram for explaining the first reprojection error information group according to this embodiment.
  • FIG. 6 shows an example configuration in which the landmark LM1 is projected onto only three keyframes KF1, KF2 and KF3. As shown in FIG.
  • reprojection error information is calculated from the position information of the landmark LM1, the orientation information of the keyframe KF1, and the projection coordinate information of the landmark LM1 onto the keyframe KF1.
  • Such calculation of reprojection error information is also performed for other keyframes KF2 and KF3, and these three reprojection errors are aggregated.
  • the reprojection errors are aggregated for each of the other landmarks as well.
  • the keyframe starting point errors are aggregated (keyframe starting point error aggregation step S540). That is, for each of one or more keyframes, a second reprojection error information group is generated in which all reprojection error information associated with the keyframe is aggregated, and the second reprojection error information A second sum based on all reprojection error information included in the group is determined.
  • the second reprojection error information group will be explained using FIG.
  • FIG. 7 is a schematic diagram for explaining the second reprojection error information group according to this embodiment.
  • FIG. 7 shows a configuration example in which only three landmarks LM1, LM2 and LM3 are projected onto the keyframe KF1.
  • reprojection error information is calculated from the orientation information of the keyframe KF1, the position information of the landmark LM1, and the projection coordinate information of the landmark LM1 onto the keyframe KF1.
  • Such reprojection error information calculation is also performed for the other landmarks LM2 and LM3, and these three reprojection errors are aggregated.
  • the reprojection error is aggregated for each of the other keyframes as well.
  • the feature values obtained for each correspondence relationship described above are totaled for each element.
  • the diagonal block of the Hessian matrix shown in the above formulas (4a) to (4c) and (5a) to (5c) and the gradient vector shown in the above formula (3b) The element associated with that block of the gradient vector is obtained.
  • the location information is updated (location information update step S550).
  • a position information update value which is an update value of the position information of the landmark, is inferred from the first total value calculated in the landmark origin error aggregation step S530. , update the position information of the landmark using the position information update value.
  • posture information update step S560 the posture information is updated (posture information update step S560).
  • an orientation information update value which is the orientation information update value of the keyframe, is inferred from the second sum calculated in the keyframe origin error aggregation step S540. , update the posture information of the key frame using the posture information update value.
  • the position information update value of each of one or more landmarks and the orientation information update value of one or more keyframes can be obtained.
  • Prediction map information can be obtained based on these position information update values and orientation information update values.
  • the position information update value and the orientation information update value are obtained by inferring them, so the amount of calculation can be significantly reduced compared to spatial geometric calculation. Further, in the present embodiment, by separating the inference of the position information and the inference of the orientation information, the degree of freedom of the solution in the inference can be reduced, so that more accurate inference can be achieved.
  • the degree of freedom of the solution of each inference engine is increased. Since it can be reduced, learning can be performed more reliably.
  • the learning method of each inference engine will be described later.
  • reprojection error information is also obtained by inference, so the amount of calculation can be further reduced.
  • FIG. 8 is a block diagram showing the functional configuration of the map information updating device 10 according to this embodiment. As shown in FIG. 8, the map information updating device 10 receives input information including position information, orientation information, and projection relationship, and outputs output information including position information update values and orientation information update values. is.
  • the map information updating device 10 includes an error inference engine 20, a first aggregator 21, a second aggregator 22, a position inference engine 23, and an orientation inference engine 24. .
  • the error inference engine 20 is an inference engine that executes the reprojection error information acquisition step of the map information update method.
  • the error inference engine 20 associates, for each of one or more projection relations, position information associated with one landmark that constitutes the projection relation with one key frame that constitutes the projection relation.
  • Re-projection error information is obtained based on the obtained orientation information and projection coordinate information forming the projection relationship, and the re-projection error information is associated with the projection relationship.
  • the reprojection error information indicates the result of inferring the reprojection error from one piece of position information, one piece of orientation information, and projection coordinate information corresponding to one or more projection relationships.
  • the reprojection error is an error spatially and geometrically calculated from the position information, the orientation information, and the projection coordinate information.
  • the first aggregating unit 21 is a processing unit that executes the landmark starting point error aggregating step of the map information updating method.
  • a first aggregating unit 21 generates, for each of one or more landmarks, a first reprojection error information group in which all reprojection error information associated with the landmark is aggregated; A first total value based on all reprojection error information included in one reprojection error information group is obtained.
  • the second aggregating unit 22 is a step that executes the keyframe starting point error aggregating step of the map information update method.
  • a second aggregating unit 22 generates, for each of one or more keyframes, a second reprojection error information group in which all reprojection error information associated with the keyframe is aggregated; A second total value based on all reprojection error information included in the second reprojection error information group is obtained.
  • the attitude inference engine 24 is an inference engine that executes the attitude information update step of the map information update method.
  • Pose inference engine 24 infers, for each of the one or more keyframes, a pose information update value that is an update value for pose information for that keyframe from the second sum, and uses the pose information update value to Update the posture information of the relevant keyframe.
  • the predictive map information calculating method of the map information updating method described above can be realized.
  • the position inference engine 23, attitude inference engine 24, and error inference engine 20 are engines that have learned using the sum of reprojection errors obtained spatially and geometrically based on updated values of map information as a loss function.
  • the update value of the map information is obtained by inference by the position inference engine 23 and the orientation inference engine 24 based on the reprojection error information inferred by the error inference engine 20 based on the map information.
  • position information and orientation information are inferred by separate inference engines.
  • the degree of freedom of inference can be greatly reduced. That is, the difference between the size determined by the entire Hessian matrix for calculating the update value of the entire map information, and the size of the submatrix corresponding to the position information and the size of the submatrix corresponding to the orientation information in the Hessian matrix. can reduce the degree of freedom of inference equivalent to . Therefore, the man-hours required for learning each inference engine can be greatly reduced.
  • the degree of freedom of inference can be reduced, the certainty of learning of the inference engine can be enhanced. This makes it possible to reduce the model scale (in other words, the amount of calculation) required to obtain the necessary inference accuracy.
  • map information update method in general, when a solution method using a Hessian matrix composed of arbitrary numerical combinations is performed by inference, a structure such as a simple perceptron or a convolutional neural network cannot be used.
  • the degree of freedom in obtaining a combination of the numerical value of and the solution becomes very large, and as a result, the scale of the inference model and the amount of calculation become large.
  • the scale and amount of calculation of the learning of the inference model also increase, so the man-hours and difficulty of learning increase.
  • the inference model is composed of the error inference engine 20 for inferring reprojection error information in one projection relationship, and the reprojection error information output from the error inference engine 20. are divided into a position inference engine 23 and an orientation inference engine 24 that respectively infer updated values of position information and orientation information from the sum of .
  • the change in the size of the Hessian matrix can be determined by the number of projection relationships (related to the number of times the error inference engine 20 is used) and the number of position information and orientation information (position inference engine 23 and orientation). related to the number of times the inference engine 24 is used). That is, the scale of the Hessian matrix is reduced to the number of times the same inference engine is used, and the scale of each divided inference engine can be constant and small. Therefore, learning of each divided inference engine can be facilitated.
  • the reprojection error in the output information could be reduced more than the reprojection error in the input information.
  • the amount of calculation can be reduced, so the time required for bundle adjustment can be reduced to 1/10 or less.
  • the average value of reprojection errors can be reduced more than the conventional map information updating method.
  • Embodiment 2 A map information updating method according to the second embodiment will be described.
  • the map information updating method according to the present embodiment differs from the map information updating method according to the first embodiment mainly in the reprojection error information obtaining step.
  • the map information updating method according to the present embodiment will be described below, focusing on differences from the map information updating method according to the first embodiment.
  • the reprojection error information calculated in the reprojection error information acquiring step of the map information updating method according to the present embodiment includes one piece of position information, one piece of orientation information, and a reprojection error spatially and geometrically calculated from projection coordinate information. That is, in this embodiment, unlike the map information updating method according to the first embodiment, the reprojection error is spatially and geometrically calculated instead of inferring the reprojection error.
  • the present embodiment it is possible to accurately calculate the reprojection error. Also in the present embodiment, since the position information update value and the orientation information update value are calculated by inference, the same effect as the map information update method according to the first embodiment can be obtained in this respect. .
  • the position information update value is inferred by the position inference engine
  • the orientation information update value is inferred by the orientation inference engine
  • the reprojection error is spatially geometrically calculated.
  • the position inference engine and the orientation inference engine use the sum of reprojection errors obtained spatially and geometrically based on updated values of map information as a loss function, It is a learned engine.
  • the update value of the map information is determined by reasoning by the position inference engine and the orientation inference engine based on the reprojection error spatially and geometrically determined based on the map information.
  • the position inference engine and attitude inference engine according to the present embodiment also have the same effects as the position inference engine 23 and attitude inference engine 24 according to the first embodiment.
  • FIG. 9 is a diagram showing an example of the hardware configuration of computer 1000 for executing the method according to each of the above embodiments by software.
  • the computer 1000 can realize a map information updating apparatus that executes each map information updating method according to the first and second embodiments.
  • the computer 1000 comprises an input device 1001, an output device 1002, a CPU 1003, a built-in storage 1004, a RAM 1005, a reading device 1007, a transmitting/receiving device 1008 and a bus 1009, as shown in FIG.
  • the input device 1001 , output device 1002 , CPU 1003 , internal storage 1004 , RAM 1005 , reading device 1007 and transmission/reception device 1008 are connected by a bus 1009 .
  • the input device 1001 is a user interface device such as a keyboard, mouse, input button, touch pad, touch panel display, etc., and receives user operations. Note that the input device 1001 may be configured to receive a user's contact operation, as well as a voice operation or a remote operation using a remote control or the like.
  • the output device 1002 is a device that outputs a signal from the computer 1000, and may be a device that serves as a user interface, such as a display and a speaker, in addition to a signal output terminal.
  • the internal storage 1004 is a flash memory or the like. Further, the built-in storage 1004 may store in advance a program or the like for executing the steps of each method according to the first and second embodiments.
  • the RAM 1005 is a random access memory, and is used to store data calculated when executing programs or applications.
  • a reading device 1007 reads information from a recording medium such as a USB (Universal Serial Bus) memory.
  • the reading device 1007 reads the programs and applications as described above from a recording medium in which the programs and applications are recorded, and stores them in the built-in storage 1004 .
  • the transmitting/receiving device 1008 is a communication circuit for wireless or wired communication.
  • the transmission/reception device 1008 communicates with, for example, a server device connected to a network, downloads the above-described programs and applications from the server device, and stores them in the built-in storage 1004 .
  • the CPU 1003 is a central processing unit, which copies programs, applications, etc. stored in the built-in storage 1004 to the RAM 1005, sequentially reads out instructions included in the copied programs, applications, etc. from the RAM 1005 and executes them. .
  • It may be a computer program for realizing each method according to the present disclosure by a computer, or it may be a digital signal composed of the computer program.
  • the present disclosure may be implemented as a non-transitory computer-readable recording medium such as a CD-ROM recording the computer program.
  • the present disclosure may also be a computer system comprising a microprocessor and memory, the memory storing the computer program, and the microprocessor operating according to the computer program.
  • the present disclosure can be used, for example, in VSLAM technology.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Navigation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

マップ情報更新方法は、1つ以上の投影関係を取得するステップと、1つ以上の投影関係の各々に対して再投影誤差情報を取得するステップと、1つ以上のランドマークの各々に対して、当該ランドマークに関連付けられたすべての再投影誤差情報に基づく第1の合計値を求めるステップと、1つ以上のキーフレームの各々に対して、当該キーフレームに関連付けられたすべての再投影誤差情報に基づく第2の合計値を求めるステップと、1つ以上のランドマークの各々に対して、第1の合計値から当該ランドマークの位置情報の更新値である位置情報更新値を推論し、位置情報更新値を用いて当該ランドマークの位置情報を更新するステップと、1つ以上のキーフレームの各々に対して、第2の合計値から当該キーフレームの姿勢情報の更新値である姿勢情報更新値を推論し、姿勢情報更新値を用いて当該キーフレームの姿勢情報を更新するステップと、を含む。

Description

マップ情報更新方法
 本開示は、マップ情報更新方法に関する。
 従来、カメラを用いて撮影を行い、撮影された画像であるキーフレームに含まれる情報から、カメラの位置と周辺のランドマークの位置との推定を同時に行うVSLAM(Visual Simultaneous Localization and Mapping)技術が知られている。
 VSLAM技術において中心となる処理は、撮影されたランドマークのキーフレーム内での位置と、仮定したキーフレームの姿勢情報(つまり、カメラの位置及び向き)と仮定したランドマーク位置から算出したキーフレーム内での位置である再投影位置との誤差である再投影誤差と、を求めることと、再投影誤差が0になる(現実的には誤差が十分小さくなる)キーフレームの姿勢情報及びランドマークの位置を求めることである。キーフレームの姿勢情報及びランドマークの位置を組み合わせた情報は、マップ情報と称される。
 再投影誤差が0になるようなマップ情報を探索することは、バンドル調整と称され、一般に非線形最小二乗法の最適化問題に分類される処理である。このため、バンドル調整においては、マップ情報を再投影誤差が減少するように微小に補正し、再投影誤差の値が収束するまで当該補正を反復する、という処理が必要になる(例えば、特許文献1、非特許文献1、非特許文献2参照)。
特表2017-503290号公報
岩元祐輝、菅谷保之、金谷健一、3次元復元のためのバンドル調整の実装と評価、情報処理学会研究報告、2011-CVIM-175-19、pp.1-8、2011 岡谷貴之、バンドルアジャストメント、情報処理学会研究報告、2009-CVIM167-37、pp.1-16、2009
 VSLAM技術においては、新しいキーフレームが追加されるたびに新たに再投影誤差が算出され、バンドル調整を経てマップ情報が更新される。このような処理は、マップ情報の精度を維持するには必須の処理である。
 バンドル調整時に必要となる収束のためのアルゴリズムとして、勾配法を用いたアルゴリズムが一般に使用されている。勾配法を用いたアルゴリズムとして、例えば最急降下法とガウス・ニュートン法とを組み合わせたアルゴリズムが知られている。このアルゴリズムにおいては、再投影誤差が最小値に近づくまでは最急降下法を用いて補正を行い、再投影誤差が最小値に近づいた後は、ガウス・ニュートン法で補正を行う。このようなアルゴリズムにおいては、補正の繰り返し毎に、ヘッセ行列の生成、及び、連立方程式を解くことによる補正量の算出という演算量の多い処理を実行する必要がある。このような演算量の多い処理が含まれることがVSLAM技術を用いる際に問題となる。
 本開示は、このような問題を解決するためになされたものであり、演算量を削減できるマップ情報更新方法を提供することを目的とする。
 上記目的を達成するために、本開示の一形態に係るマップ情報更新方法は、1つ以上のランドマークにそれぞれ対応付けられた1つ以上の位置情報と、1つ以上のキーフレームにそれぞれ対応付けられた1つ以上の姿勢情報と、を含むマップ情報を更新するマップ情報更新方法であって、前記1つ以上のキーフレームの各々は、前記1つ以上のランドマークの少なくとも1つを含むように撮影された撮影画像であり、前記1つ以上の姿勢情報の各々は、位置、及び向きの情報を含み、1つ以上の投影関係を取得する投影関係取得ステップであって、前記1つ以上の投影関係の各々は、前記1つ以上のランドマークの各々と、前記1つ以上のキーフレームの各々と、前記1つ以上のキーフレームの各々に前記1つ以上のランドマークの各々を投影したときの投影点の当該キーフレーム上の座標に対応する投影座標情報と、の関係である、投影関係取得ステップと、前記1つ以上の投影関係の各々に対して、前記1つ以上の位置情報のうち、当該投影関係を構成する前記1つ以上のランドマークの1つに対応付けられた位置情報と、前記1つ以上の姿勢情報のうち、当該投影関係を構成する前記1つ以上のキーフレームの1つに対応付けられた姿勢情報と、当該投影関係を構成する前記投影座標情報と、に基づいて再投影誤差情報を取得し、前記再投影誤差情報を当該投影関係に関連付ける再投影誤差情報取得ステップと、前記1つ以上のランドマークの各々に対して、当該ランドマークに関連付けられたすべての前記再投影誤差情報が集約された第1の再投影誤差情報群を生成し、前記第1の再投影誤差情報群に含まれるすべての前記再投影誤差情報に基づく第1の合計値を求めるランドマーク起点誤差集約ステップと、前記1つ以上のキーフレームの各々に対して、当該キーフレームに関連付けられたすべての前記再投影誤差情報が集約された第2の再投影誤差情報群を生成し、前記第2の再投影誤差情報群に含まれるすべての前記再投影誤差情報に基づく第2の合計値を求めるキーフレーム起点誤差集約ステップと、前記1つ以上のランドマークの各々に対して、前記第1の合計値から前記1つ以上の位置情報のうち当該ランドマークの位置情報の更新値である位置情報更新値を推論し、前記位置情報更新値を用いて当該ランドマークの位置情報を更新する位置情報更新ステップと、前記1つ以上のキーフレームの各々に対して、前記第2の合計値から前記1つ以上の姿勢情報のうち当該キーフレームの姿勢情報の更新値である姿勢情報更新値を推論し、前記姿勢情報更新値を用いて当該キーフレームの姿勢情報を更新する姿勢情報更新ステップと、を含む。
 本開示により、演算量を削減できるマップ情報更新方法を提供できる。
図1は、実施の形態1に係るマップ情報更新方法の流れを示すフローチャートである。 図2は、バンドル調整におけるマップ情報と再投影誤差との関係を示す模式的なグラフである。 図3は、実施の形態1に係る予測マップ情報の概要を説明するための模式的なグラフである。 図4は、実施の形態1に係る予測マップ情報を算出する方法を示すフローチャートである。 図5は、キーフレーム及びランドマークに係る投影関係を説明する模式図である。 図6は、実施の形態1に係る第1の再投影誤差情報群を説明するための模式図である。 図7は、実施の形態1に係る第2の再投影誤差情報群を説明するための模式図である。 図8は、実施の形態1に係るマップ情報更新装置の機能構成を示すブロック図である。 図9は、各実施の形態に係る方法をソフトウェアにより実行するためのコンピュータのハードウェア構成の一例を示す図である。
 以下、本開示の実施の形態について、図面を用いて詳細に説明する。なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示す。以下の実施の形態で示される数値、形状、材料、規格、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序等は、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、本開示の最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、各図は、必ずしも厳密に図示したものではない。各図において、実質的に同一の構成については同一の符号を付し、重複する説明は省略又は簡略化する場合がある。
 (実施の形態1)
 実施の形態1に係るマップ情報更新方法について説明する。
 [1-1.マップ情報更新方法の概要]
 まず、マップ情報更新方法の概要について説明する。マップ情報更新方法は、カメラを用いて撮影を行い、撮影された画像であるキーフレームに含まれる情報から、カメラの位置と周辺のランドマークの位置との推定を同時に行うVSLAM技術において用いられる方法である。本実施の形態に係るマップ情報更新方法は、1つ以上のランドマークにそれぞれ対応付けられた1つ以上の位置情報と、1つ以上のキーフレームにそれぞれ対応付けられた1つ以上の姿勢情報と、を含むマップ情報を更新する。1つ以上のキーフレームの各々は、1つ以上のランドマークの少なくとも1つを含むように撮影された撮影画像である。1つ以上の姿勢情報の各々は、撮影に用いられるカメラの位置、及び向きの情報を含む。
 VSLAM技術においては、まず、第1の座標系として、3次元座標系を1つ想定し、第1の座標系にカメラを配置する。第1の座標系は、カメラなどが配置される空間に対して固定された座標系であり、ワールド座標系とも称される。当該カメラにより撮影されたキーフレームからランドマークを生成する。ここで、ランドマークとは、第1の座標系に作られた3次元点であり、例えば、二つのキーフレームの各々に含まれる対応する特徴点に基づいて、三角測量によりランドマークが生成される。本実施の形態に係るマップ情報更新方法においては、カメラと、1つ以上のランドマークとの第1の座標系での推定位置を含むマップ情報を更新する。具体的には、カメラで撮影されたキーフレームの情報がマップ情報に追加された場合、かつ/またはバンドル調整をした場合に本実施の形態に係るマップ情報を更新する。
 以下、本実施の形態に係るマップ情報更新方法について、図1を用いて説明する。図1は、本実施の形態に係るマップ情報更新方法の流れを示すフローチャートである。
 図1に示されるように、本実施の形態に係るマップ情報更新方法においては、まず、マップ情報を取得する(S20)。マップ情報には、少なくとも、1つ以上のランドマークの位置情報と、1つ以上のキーフレームの姿勢情報とが含まれる。
 続いて、カメラで撮影されたキーフレームにおける第2の座標系での1つ以上のランドマークの位置を示す投影座標情報を取得する(S30)。第2の座標系は、撮影画像に対して固定された座標系であり、キーフレーム座標系とも称される。投影座標情報は、1つ以上のランドマークの位置に対応する特徴点の第2の座標系での位置である。言い換えると、投影座標情報は、1つ以上のキーフレームの各々に1つ以上のランドマークの各々を投影したときの投影点の当該キーフレーム上の座標に対応する情報である。
 続いて、ステップS20で取得されたマップ情報に投影座標情報を追加することで追加マップ情報を生成する(S40)。追加マップ情報には、投影座標情報に係る情報が追加されてもよい。例えば、投影座標情報に係る情報は、キーフレームに含まれる特徴点に基づいて生成されるランドマークの推定位置などである。投影座標情報に係る情報は、カメラの位置などから簡易的に概算された情報であってもよい。
 ステップS40の後に、ステップS40で生成された追加マップ情報に基づいて予測マップ情報を算出し、ステップS40で更新されたマップ情報を予測マップ情報に更新する(S50)。ここで、予測マップ情報の算出方法について説明する。マップ情報の更新において、一般にバンドル調整を行う。つまり、再投影誤差が0になるようなマップ情報を探索する。本実施の形態では、再投影誤差は、位置情報と、姿勢情報と、投影座標情報とに基づいて取得された情報である。より具体的には、投影座標情報と、当該投影座標における投影座標情報に対応する撮影画像上の再投影位置であって、マップ情報に基づいて算出される再投影位置との誤差を算出する関数である再投影誤差関数を用いて算出される。なお、再投影誤差は、マップ情報に含まれる1つ以上のランドマークに対して再投影誤差関数を用いて算出された誤差、及び、1つ以上のキーフレームの各々に対して再投影誤差関数を用いて算出された誤差の、一方又は両方の総和を含んでもよい。
 ここで、バンドル調整の概要について図2を用いて説明する。図2は、バンドル調整におけるマップ情報と再投影誤差との関係を示す模式的なグラフである。図2の横軸は、マップ情報を一つの変数として模式的に表現した量を示し、縦軸は、マップ情報に対する再投影誤差を示す。
 図2に示されるように、バンドル調整によって、バンドル調整前のマップ情報を、再投影誤差を最小化させるマップ情報に補正する。例えば、最急降下法とガウス・ニュートン法とを組み合わせたアルゴリズムなどの勾配法を用いたアルゴリズムによりバンドル調整を行う場合には、バンドル調整前のマップ情報に対して微小な補正量で補正を行い、補正後の再投影誤差を算出することを繰り返すことで、再投影誤差を最小化させるマップ情報を探索する。なお、以下では、再投影誤差を最小化させるマップ情報のことをマップ情報の解とも称する。ここで、勾配法を用いた空間幾何学的なアルゴリズムにおいては、補正の繰り返し毎に、ヘッセ行列の生成、及び、非線形最小二乗法を用いる連立方程式を解くことによる補正量の算出という演算量の多い処理が含まれる。特に、バンドル調整前のマップ情報と、マップ情報の解との間の誤差が大きい場合には、多数回の反復演算を行う必要がある。
 このような従来技術に対して本実施の形態では、予測マップ情報の算出の少なくとも一部に推論エンジンを用いることで演算量を削減する。本実施の形態に係る予測マップ情報の算出方法の概要について、図3を用いて説明する。図3は、本実施の形態に係る予測マップ情報の概要を説明するための模式的なグラフである。
 図3に示されるように、本実施の形態では、推論エンジンを用いて、マップ情報に基づき、再投影誤差が最小値に近いマップ情報を予測マップ情報として算出する。これにより、勾配法を用いたアルゴリズムによる演算を繰り返すことなく、再投影誤差が最小値に近いマップ情報を取得することができる。このような推論エンジンに含まれる予測用ニューラルネットワークは、学習用マップ情報を入力とし、学習用更新済マップ情報を教師データとして学習した学習済みのニューラルネットワークである。ここでの学習は、学習用更新済みマップ情報と、ニューラルネットワーク出力のマップ情報との差分に基づいた損失関数を考え、その損失関数を0にするように学習を進める。学習用マップ情報は、本実施の形態に係るマップ情報更新方法で用いる追加マップ情報と同様の情報であれば特に限定されない。
 学習用更新済マップ情報は、学習用マップ情報に基づいて生成され、かつ、再投影誤差関数を用いて算出された再投影誤差を減少させるマップ情報である。このことから、学習における損失関数はこの再投影誤差関数に基づいたものとしてもよい。再投影誤差関数は(学習用)マップ情報から直接求まるため、この場合の学習では教師データとしての学習用更新済マップ情報は不要となる。ここで、再投影誤差関数は、投影座標情報と、投影座標情報に対応する撮影画像上の再投影位置であって、マップ情報に基づいて算出される再投影位置との誤差を算出する関数である。再投影誤差関数として、具体的には、例えば、非特許文献1などに記載されているような周知の関数を用いることができる。
 学習用更新済マップ情報は、例えば、学習用投影座標情報及び学習用マップ情報に対して勾配法を用いて実際にバンドル調整を行うことで得られる。なお、再投影誤差を減少させるマップ情報は、例えば、再投影誤差を最小化させるマップ情報であってもよい。再投影誤差を最小化させるマップ情報とは、再投影誤差を厳密に最小化させるマップ情報に限定されず、再投影誤差を概ね最小化させるマップ情報も含む。例えば、マップ情報の再投影誤差と、再投影誤差の最小値との差が、当該最小値の5%以下となるマップ情報も、再投影誤差を最小化させるマップ情報に含まれる。
 本実施の形態に係る予測用ニューラルネットワークが、上記学習を行うことで、マップ情報と再投影誤差との関係を示す誤差関数の形状を学習する。予測用ニューラルネットワークの学習は、誤差関数へのフィッティングに相当する処理である。予測用ニューラルネットワークは、誤差関数の形状を学習することで、再投影誤差を最小化させるマップ情報を予測できるようになる。なお、マップ情報に含まれるカメラの位置などの情報は、マップ情報に応じて変化するが、予測用ニューラルネットワークが学習した誤差関数は変化しない。また、予測マップ情報は、再投影誤差を最小化させるマップ情報でなくてもよい。
 なお、本実施の形態に係るマップ情報更新方法において、推論エンジンを用いて算出される予測マップ情報が、マップ情報の解から遠ざかる(つまり、予測マップ情報と、マップ情報の解との差が、追加マップ情報と、マップ情報の解との差より大きくなる)ことを抑制するステップが追加されてもよい。例えば、追加マップ情報に対してマップ情報の解へ近づく補正方向を予測する推論エンジンを予め準備し、当該推論エンジンによって、予測マップ情報が追加マップ情報よりマップ情報の解へ近づいているか否かを判定してもよい。
 本実施の形態では、従来技術の勾配法における連立方程式の解計算などの演算の少なくとも一部を、推論エンジンを用いた推論に置き換えることができる。このため、本実施の形態では、勾配法に対して、計算量を削減でき、かつ、演算の並列度を高められる。したがって、本実施の形態では、マップ情報更新の高速化及び低消費電力化などの効果が得られる。さらに、推論エンジンを用いた推論では、演算精度も低減し得る。このため、マップ情報更新方法を実行するためのコンピュータなどのハード構成を簡素化することも可能となる。なお、推論エンジンを用いた予測マップ情報の算出方法の詳細については、後述する。
 続いて、図1に示されるように、ステップS50で更新されたマップ情報に対して更新済マップ情報を空間幾何学的に算出し、ステップS50で更新されたマップ情報を更新済マップ情報に更新する(S60)。つまり、従来技術と同様に、例えば、最急降下法とガウス・ニュートン法とを組み合わせたアルゴリズムを用いて、マップ情報を更新することで、マップ情報をマップ情報の解に近づける。
 続いて、マップ情報に対する再投影誤差を算出する(S70)。具体的には、上述した再投影誤差関数を用いて、マップ情報に対する再投影誤差を算出する。
 続いて、ステップS60で更新されたマップ情報に対して再投影誤差関数を用いて算出された再投影誤差に基づいてステップS60で更新されたマップ情報の更新の収束を判定し、判定の結果に基づいて、予測ステップ、若しくは更新ステップへ戻るか、又は、ステップS60で更新されたマップ情報の更新を終了するかを決定する(S80)。例えば、再投影誤差の前回の判定時から変化量(最初の判定時においては、予測マップ情報に対する再投影誤差からの変化量)ΔEが予め定められた収束閾値Scより小さい場合には(S80でΔE<Sc)、マップ情報の解が求められたと判断して、マップ情報の更新を終了する。また、再投影誤差Eが、上限値Suより大きい場合には(S80でE>Su)、予測マップ情報が適切でないと判断してステップS50に戻り、再度予測マップ情報を算出する。また、再投影誤差の前回の判定時から変化量ΔEが、収束閾値Sc以上であり、再投影誤差Eが、上限値Su以下である場合には(S80でΔE≧Sc、E≦Su)、ステップS60に戻り、再度、勾配法を用いたマップ情報の更新を行う。
 以上のようなマップ情報更新方法により、マップ情報更新に要する演算量を、従来技術を用いる場合より削減できる。
 [1-2.予測マップ情報の算出方法]
 本実施の形態に係るマップ情報更新方法における予測マップ情報の算出方法について、図4を用いて説明する。図4は、本実施の形態に係る予測マップ情報を算出する方法を示すフローチャートである。
 図4に示されるように、まず、投影関係を取得する(投影関係取得ステップS510)。ここで、投影関係について、図5を用いて説明する。図5は、キーフレーム及びランドマークに係る投影関係を説明する模式図である。投影関係とは、1つのランドマークと、1つのキーフレームと、当該1つのキーフレームに当該1つのランドマークを投影したときの投影点の当該キーフレーム上の座標に対応する投影座標情報との関係である。図5には、二つのランドマークLM1、LM2と、二つのキーフレームKF1、KF2と、が示されている。また、図5には、ランドマークLM1を、キーフレームKF1、及びKF2にそれぞれ投影した投影座標情報C11、C12が示されており、ランドマークLM2を、キーフレームKF1、及びKF2にそれぞれ投影した投影座標情報C21、C22が示されている。
 本ステップでは、1つ以上のランドマークの各々と、1つ以上のキーフレームの各々とに対する投影関係を取得する。図5に示される例では、ランドマークLM1と、キーフレームKF1と、投影座標情報C11との対応関係と、ランドマークLM1と、キーフレームKF2と、投影座標情報C12との対応関係と、ランドマークLM2と、キーフレームKF1と、投影座標情報C21との対応関係と、ランドマークLM2と、キーフレームKF2と、投影座標情報C22との対応関係と、が含まれる。また、投影座標情報とは、キーフレームに投影されたランドマークの当該キーフレーム上の実際の投影点の座標であり、マップ情報から算出された座標ではない。
 続いて、図4に示されるように、1つ以上の投影関係の各々に対して、再投影誤差情報を取得し、再投影誤差情報を当該投影関係に関連付ける(再投影誤差情報取得ステップS520)。再投影誤差情報は、1つの投影関係に対応する、1つ以上の位置情報のうちの一つ、1つ以上の姿勢情報のうちの一つ、及び、投影座標情報から再投影誤差を推論した結果を示す特徴量を含む。ここで、再投影誤差は、当該位置情報、当該姿勢情報、及び、当該投影座標情報から空間幾何学的に算出される誤差であり、本実施の形態では、この再投影誤差を算出することに代えて、この再投影誤差を推論した結果を示す特徴量を求める。再投影誤差情報に含まれる特徴量は、例えば、ランドマーク及びキーフレームに対応する投影関係に対応する重みベクトル、誤差ベクトルなどを含む。言い換えると、当該特徴量は、マップ情報の更新値を算出するために用いられるヘッセ行列の対角要素を含むブロックに共通して含まれる項を含む。
 ここで、この特徴量について、ヘッセ行列を用いて詳細に説明する。従来のガウス・ニュートン法によるマップ情報の更新値を求める方程式は、ヘッセ行列Hと、パラメータξの更新値Δξを用いて以下の式(1)で表される。
Figure JPOXMLDOC01-appb-M000001
 ここで、式(1)の行列及びベクトルの要素を記載すると以下の式(2)で表される。
Figure JPOXMLDOC01-appb-M000002
 なお、式(2)のヘッセ行列において、対角ブロック以外の記載は省略されている。
 ここで、αを1以上N以下の整数とすると、ヘッセ行列のランドマークに関するブロックと、式(1)の右辺の勾配ベクトルの各要素のうち、当該ブロックに関連する要素は以下の式(3a)、(3b)で表される。
Figure JPOXMLDOC01-appb-M000003
Figure JPOXMLDOC01-appb-M000004
 式(3a)、(3b)において、Iαjは、0又は1であり、j番目のカメラの姿勢からα番目のランドマークの視認性を示す。Rは、j番目のカメラの姿勢を示す回転行列である。Wαjは、α番目のランドマークとj番目のカメラの姿勢から計算される3×2行列である。eαjは、再投影座標と、投影座標情報(実際の投影点の座標)との差であり、2次元座標ベクトルとなる。
 また、ヘッセ行列のうち対角ブロック(diagonal blocks)と、勾配ベクトルの対角ブロックに関連する要素は、κを1以上M以下の整数とすると、以下の式(4a)~(5c)で表される。
Figure JPOXMLDOC01-appb-M000005
Figure JPOXMLDOC01-appb-M000006
Figure JPOXMLDOC01-appb-M000007
Figure JPOXMLDOC01-appb-M000008
Figure JPOXMLDOC01-appb-M000009
Figure JPOXMLDOC01-appb-M000010
 ここで、xは、i番目のランドマークの位置情報である。tκは、κ番目のカメラの姿勢の並進ベクトルで、カメラ位置である。
 ヘッセ行列などが以上のように表される場合、特徴量は、uακ、Rκακ、(xα-tκ)に基づいて算出される。ここで、uακは、再投影座標を表す。Rκακは、重み係数を表す。(xα-tκ)は、ランドマークとキーフレームとの相対位置を示す。このような特徴量は、対応関係毎に得られる。
 続いて、ランドマーク起点誤差を集約する(ランドマーク起点誤差集約ステップS530)。つまり、1つ以上のランドマークの各々に対して、当該ランドマークに関連付けられたすべての再投影誤差情報が集約された第1の再投影誤差情報群を生成し、第1の再投影誤差情報群に含まれるすべての再投影誤差情報に基づく第1の合計値を求める。ここで、第1の再投影誤差情報群について、図6を用いて説明する。図6は、本実施の形態に係る第1の再投影誤差情報群を説明するための模式図である。図6には、ランドマークLM1が3つのキーフレームKF1、KF2、及びKF3だけに投影されている構成例が示されている。図6に示されるように、あるランドマークLM1が、3つのキーフレームKF1、KF2、及びKF3だけに投影されている場合について説明する。この場合、ランドマークLM1の位置情報、キーフレームKF1の姿勢情報、及び、ランドマークLM1のキーフレームKF1への投影座標情報から、再投影誤差情報が算出される。このような再投影誤差情報の算出を、他のキーフレームKF2及びKF3についても行い、これらの3つの再投影誤差を集約する。他のランドマークについてもそれぞれ再投影誤差を集約する。
 具体的には、上述した対応関係毎に得られる特徴量が要素毎に合計される。このような誤差が集約されることで、上記式(3a)に示されるランドマークに関するブロック、及び、上記式(3b)に示される勾配ベクトルの当該ブロックに関連する要素が得られる。
 続いて、図4に示されるように、キーフレーム起点誤差を集約する(キーフレーム起点誤差集約ステップS540)。つまり、1つ以上のキーフレームの各々に対して、当該キーフレームに関連付けられたすべての再投影誤差情報が集約された第2の再投影誤差情報群を生成し、第2の再投影誤差情報群に含まれるすべての再投影誤差情報に基づく第2の合計値を求める。ここで、第2の再投影誤差情報群について、図7を用いて説明する。図7は、本実施の形態に係る第2の再投影誤差情報群を説明するための模式図である。図7には、キーフレームKF1に、3つのランドマークLM1、LM2、及びLM3だけが投影されている構成例が示されている。図7に示されるように、あるキーフレームKF1に、ランドマークLM1、LM2、及びLM3だけが投影されている場合について説明する。この場合、キーフレームKF1の姿勢情報、ランドマークLM1の位置情報、及び、ランドマークLM1のキーフレームKF1への投影座標情報から、再投影誤差情報が算出される。このような再投影誤差情報の算出を、他のランドマークLM2及びLM3についても行い、これらの3つの再投影誤差を集約する。他のキーフレームについてもそれぞれ再投影誤差を集約する。
 具体的には、上述した対応関係毎に得られる特徴量が要素毎に合計される。このような誤差が集約されることで、上記式(4a)~(4c)、(5a)~(5c)に示されるヘッセ行列の対角ブロック、及び、勾配ベクトルの上記式(3b)に示される勾配ベクトルの当該ブロックに関連する要素が得られる。
 続いて、図4に示されるように、位置情報を更新する(位置情報更新ステップS550)。本ステップでは、1つ以上のランドマークの各々に対して、ランドマーク起点誤差集約ステップS530で算出した第1の合計値から当該ランドマークの位置情報の更新値である位置情報更新値を推論し、当該位置情報更新値を用いて当該ランドマークの位置情報を更新する。
 続いて、姿勢情報を更新する(姿勢情報更新ステップS560)。本ステップでは、1つ以上のキーフレームの各々に対して、キーフレーム起点誤差集約ステップS540で算出した第2の合計値から当該キーフレームの姿勢情報の更新値である姿勢情報更新値を推論し、当該姿勢情報更新値を用いて当該キーフレームの姿勢情報を更新する。
 以上のように、1つ以上のランドマークの各々の位置情報更新値、及び、1つ以上のキーフレームの姿勢情報更新値を求めることができる。これらの位置情報更新値及び姿勢情報更新値に基づいて予測マップ情報を得ることができる。
 本実施の形態では、上述したように、位置情報更新値及び姿勢情報更新値を推論することによって求められるため、空間幾何学的に算出する場合より、大幅に演算量を削減できる。また、本実施の形態では、位置情報の推論と、姿勢情報の推論とを分離することで、推論における解の自由度を低減できるため、より正確に推論することが可能となる。
 また、本実施の形態では、位置情報の推論と、姿勢情報の推論とを分離すること、さらには姿勢情報の推論を、向きと位置に分離することで、各推論エンジンの解の自由度を低減できるため、より確実に学習させることができる。なお、各推論エンジンの学習方法については後述する。
 また、本実施の形態では、再投影誤差情報も推論によって求めるため、さらに演算量を削減できる。
 [1-3.マップ情報更新装置]
 本実施の形態に係るマップ情報更新方法の予測マップ情報算出方法を実現できるマップ情報更新装置の一例について、図8を用いて説明する。図8は、本実施の形態に係るマップ情報更新装置10の機能構成を示すブロック図である。図8に示されるように、マップ情報更新装置10は、位置情報、姿勢情報、及び投影関係を含む入力情報が入力されて、位置情報更新値及び姿勢情報更新値を含む出力情報を出力する装置である。
 図8に示されるように、マップ情報更新装置10は、誤差推論エンジン20と、第1の集約部21と、第2の集約部22と、位置推論エンジン23と、姿勢推論エンジン24とを備える。
 誤差推論エンジン20は、マップ情報更新方法の再投影誤差情報取得ステップを実行する推論エンジンである。誤差推論エンジン20は、1つ以上の投影関係の各々に対して、当該投影関係を構成する1つのランドマークに対応付けられた位置情報と、当該投影関係を構成する1つのキーフレームに対応付けられた姿勢情報と、当該投影関係を構成する投影座標情報と、に基づいて再投影誤差情報を取得し、再投影誤差情報を当該投影関係に関連付ける。
 本実施の形態では、再投影誤差情報は、1つ以上の投影関係の一つに対応する、1つの位置情報、1つの姿勢情報、及び、投影座標情報から再投影誤差を推論した結果を示す特徴量を含む。上述したとおり、再投影誤差は、当該位置情報、当該姿勢情報、及び、当該投影座標情報から空間幾何学的に算出される誤差である。
 第1の集約部21は、マップ情報更新方法のランドマーク起点誤差集約ステップを実行する処理部である。第1の集約部21は、1つ以上のランドマークの各々に対して、当該ランドマークに関連付けられたすべての再投影誤差情報が集約された第1の再投影誤差情報群を生成し、第1の再投影誤差情報群に含まれるすべての再投影誤差情報に基づく第1の合計値を求める。
 第2の集約部22は、マップ情報更新方法のキーフレーム起点誤差集約ステップを実行するステップである。第2の集約部22は、1つ以上のキーフレームの各々に対して、当該キーフレームに関連付けられたすべての再投影誤差情報が集約された第2の再投影誤差情報群を生成し、第2の再投影誤差情報群に含まれるすべての再投影誤差情報に基づく第2の合計値を求める。
 位置推論エンジン23と、マップ情報更新方法の位置情報更新ステップを実行する推論エンジンである。1つ以上のランドマークの各々に対して、第1の合計値から当該ランドマークの位置情報の更新値である位置情報更新値を推論し、位置情報更新値を用いて当該ランドマークの位置情報を更新する。
 姿勢推論エンジン24は、マップ情報更新方法の姿勢情報更新ステップを実行する推論エンジンである。姿勢推論エンジン24は、1つ以上のキーフレームの各々に対して、第2の合計値から当該キーフレームの姿勢情報の更新値である姿勢情報更新値を推論し、姿勢情報更新値を用いて当該キーフレームの姿勢情報を更新する。
 以上のようなマップ情報更新装置10により、上述したマップ情報更新方法の予測マップ情報算出方法を実現できる。
 [1-4.推論エンジン学習方法]
 上述した各推論エンジンの学習方法について図8を用いて説明する。上述したように、本実施の形態では、位置情報更新値は、位置推論エンジン23によって推論され、姿勢情報更新値は、姿勢推論エンジン24によって推論され、再投影誤差情報は、誤差推論エンジン20によって推論される。
 位置推論エンジン23、姿勢推論エンジン24、及び、誤差推論エンジン20は、マップ情報の更新値に基づいて空間幾何学的に求められた再投影誤差の和を損失関数として、学習したエンジンである。マップ情報の更新値は、マップ情報に基づいて誤差推論エンジン20によって推論された再投影誤差情報に基づいて、位置推論エンジン23及び姿勢推論エンジン24が推論することで求められる。
 本実施の形態に係るマップ情報更新方法において用いる推論エンジンによれば、位置情報及び姿勢情報を、それぞれ別の推論エンジンで推論することで、マップ情報全体の更新値をまとめて推論する場合と比較して、大幅に推論の自由度を削減できる。つまり、マップ情報全体の更新値を演算するためのヘッセ行列全体で定まる規模と、ヘッセ行列のうち、位置情報に対応する部分行列の規模、及び、姿勢情報に対応する部分行列の規模との違いに相当する推論の自由度を削減できる。したがって、各推論エンジンの学習に要する工数を大幅に削減できる。また、推論の自由度を削減できることで、推論エンジンの学習の確実性を高めることができる。これにより、必要な推論精度を得るために必要なモデルの規模(言い換えると計算量)を削減できる。
 また、本実施の形態に係るマップ情報更新方法に関して、一般に任意の数値の組み合わせで構成されたヘッセ行列を用いた解法を推論で行う場合、単純なパーセプトロンや畳み込みニューラルネットワークのような構造では、それらの数値と解との組み合わせを獲得する際の自由度が非常に大きくなってしまい、結果、推論モデルの規模、及び計算量が大きくなる。これに伴い、その推論モデルの学習も同様に規模及び計算量が大きくなるため、学習の工数、困難度が増す。
 一方で本実施の形態に係るマップ情報更新方法によれば、推論モデルを、1つの投影関係において再投影誤差情報を推論する誤差推論エンジン20と、誤差推論エンジン20から出力される再投影誤差情報の和から位置情報及び姿勢情報の更新値をそれぞれ推論する位置推論エンジン23、及び姿勢推論エンジン24とに分割している。このように推論エンジンを分割することで、ヘッセ行列の大きさの変化を投影関係の個数(誤差推論エンジン20の使用回数に関係)と、位置情報及び姿勢情報の個数(位置推論エンジン23及び姿勢推論エンジン24の使用回数に関係)との変化で吸収できる。つまり、ヘッセ行列の規模は、同じ推論エンジンの使用回数に帰着され、分割された各推論エンジンの規模は、一定で、かつ、小さくすることができる。したがって、分割された各推論エンジンの学習を容易化できる。
 [1-5.実験結果]
 本実施の形態に係るマップ情報更新方法を用いて実際にマップ情報を更新する実験を行った。本実験では、本実施の形態に係るマップ情報更新方法を用いてバンドル調整を行った結果と、従来のマップ情報更新方法を用いてバンドル調整を行った結果とを比較した。ここで、従来のマップ情報更新方法として、推論を用いずに空間幾何学的に更新値を算出する方法を用いる公開されたソフトウェアであるg2oを用いた。
 実験結果から、本実施の形態に係るマップ情報更新方法によれば、従来のマップ情報更新方法と同様に、入力情報における再投影誤差より、出力情報における再投影誤差を低減できた。また、本実施の形態に係るマップ情報更新方法によれば、演算量を削減できるため、バンドル調整に要する時間を1/10以下に削減できた。また、本実施の形態に係るマップ情報更新方法によれば、従来のマップ情報更新方法より、再投影誤差の平均値を低減できた。
 したがって、本実施の形態に係るマップ情報更新方法によれば、従来のマップ情報更新方法と比較して、正確にかつ短時間でバンドル調整を行うことができる。
 (実施の形態2)
 実施の形態2に係るマップ情報更新方法について説明する。本実施の形態に係るマップ情報更新方法は、主に、再投影誤差情報取得ステップにおいて、実施の形態1に係るマップ情報更新方法と相違する。以下、本実施の形態に係るマップ情報更新方法について実施の形態1に係るマップ情報更新方法との相違点を中心に説明する。
 本実施の形態に係るマップ情報更新方法の再投影誤差情報取得ステップにおいて算出される再投影誤差情報は、1つ以上の投影関係の一つに対応する、1つの位置情報、1つの姿勢情報、及び、投影座標情報、から空間幾何学的に算出される再投影誤差である。つまり、本実施の形態では、実施の形態1に係るマップ情報更新方法のように、再投影誤差を推論するのでなく、再投影誤差を空間幾何学的に算出する。
 これにより、本実施の形態では、再投影誤差を正確に算出することができる。また、本実施の形態においても、位置情報更新値及び姿勢情報更新値は、推論によって算出されるため、この点については、実施の形態1に係るマップ情報更新方法と同様の効果が奏される。
 また、本実施の形態では、位置情報更新値は、位置推論エンジンによって推論され、姿勢情報更新値は、姿勢推論エンジンによって推論され、再投影誤差は、空間幾何学的に算出される。位置推論エンジン、及び、姿勢推論エンジンは、実施の形態1に係る各推論エンジンと同様に、マップ情報の更新値に基づいて空間幾何学的に求められた再投影誤差の和を損失関数として、学習したエンジンである。マップ情報の更新値は、マップ情報に基づいて空間幾何学的に求められた再投影誤差に基づいて、位置推論エンジン及び姿勢推論エンジンが推論することで求められる。
 本実施の形態に係る位置推論エンジン及び姿勢推論エンジンにおいても、実施の形態1に係る位置推論エンジン23及び姿勢推論エンジン24と同様の効果が奏される。
 (ハードウェア構成)
 上記各実施の形態に係る方法を実行するためのハードウェア構成について、図9を用いて説明する。図9は、上記各実施の形態に係る方法をソフトウェアにより実行するためのコンピュータ1000のハードウェア構成の一例を示す図である。つまり、コンピュータ1000により、実施の形態1及び実施の形態2に係る各マップ情報更新方法を実行するマップ情報更新装置を実現できる。
 コンピュータ1000は、図9に示されるように、入力装置1001、出力装置1002、CPU1003、内蔵ストレージ1004、RAM1005、読取装置1007、送受信装置1008及びバス1009を備える。入力装置1001、出力装置1002、CPU1003、内蔵ストレージ1004、RAM1005、読取装置1007及び送受信装置1008は、バス1009により接続される。
 入力装置1001はキーボード、マウス、入力ボタン、タッチパッド、タッチパネルディスプレイなどといったユーザインタフェースとなる装置であり、ユーザの操作を受け付ける。なお、入力装置1001は、ユーザの接触操作を受け付ける他、音声での操作、リモコン等での遠隔操作を受け付ける構成であってもよい。
 出力装置1002は、コンピュータ1000からの信号を出力する装置であり、信号出力端子の他、ディスプレイ、スピーカなどのユーザインタフェースとなる装置であってもよい。
 内蔵ストレージ1004は、フラッシュメモリなどである。また、内蔵ストレージ1004には、実施の形態1及び2に係る各方法のステップを実行するためのプログラムなどが、予め記憶されていてもよい。
 RAM1005は、ランダムアクセスメモリ(Random Access Memory)であり、プログラム又はアプリケーションの実行に際して算出されたデータ等の記憶に利用される。
 読取装置1007は、USB(Universal Serial Bus)メモリなどの記録媒体から情報を読み取る。読取装置1007は、上記のようなプログラムやアプリケーションが記録された記録媒体からそのプログラムやアプリケーションを読み取り、内蔵ストレージ1004に記憶させる。
 送受信装置1008は、無線又は有線で通信を行うための通信回路である。送受信装置1008は、例えばネットワークに接続されたサーバ装置と通信を行い、サーバ装置から上記のようなプログラムやアプリケーションをダウンロードして内蔵ストレージ1004に記憶させる。
 CPU1003は、中央演算処理装置(Central Processing Unit)であり、内蔵ストレージ1004に記憶されたプログラム、アプリケーションなどをRAM1005にコピーし、コピーしたプログラム、アプリケーションなどに含まれる命令をRAM1005から順次読み出して実行する。
 (変形例など)
 以上、本開示に係る各方法について、各実施の形態に基づいて説明したが、本開示は、これらの実施の形態に限定されるものではない。本開示の主旨を逸脱しない限り、当業者が思いつく各種変形を各実施の形態に施したものや、各実施の形態における一部の構成要素を組み合わせて構築される別の形態も、本開示の範囲内に含まれる。
 また、以下に示す形態も、本開示の一つ又は複数の態様の範囲内に含まれてもよい。
 本開示に係る各方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、当該コンピュータプログラムからなるデジタル信号であるとしてもよい。さらに、本開示は、そのコンピュータプログラムを記録したCD-ROM等である非一時的なコンピュータ読み取り可能な記録媒体として実現してもよい。
 また、本開示は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、当該メモリは、上記コンピュータプログラムを記憶しており、上記マイクロプロセッサは、上記コンピュータプログラムにしたがって動作するとしてもよい。
 また、上記プログラム又は上記デジタル信号を上記記録媒体に記録して移送することにより、又は上記プログラム又は上記デジタル信号を、ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
 上記実施の形態をそれぞれ組み合わせるとしてもよい。
 本開示は、例えば、VSLAM技術などにおいて利用できる。
 10 マップ情報更新装置
 20 誤差推論エンジン
 21 第1の集約部
 22 第2の集約部
 23 位置推論エンジン
 24 姿勢推論エンジン
 1000 コンピュータ
 1001 入力装置
 1002 出力装置
 1003 CPU
 1004 内蔵ストレージ
 1005 RAM
 1007 読取装置
 1008 送受信装置
 1009 バス
 C11、C12、C21、C22 投影座標情報
 KF1、KF2、KF3 キーフレーム
 LM1、LM2、LM3 ランドマーク

Claims (6)

  1.  1つ以上のランドマークにそれぞれ対応付けられた1つ以上の位置情報と、1つ以上のキーフレームにそれぞれ対応付けられた1つ以上の姿勢情報と、を含むマップ情報を更新するマップ情報更新方法であって、
     前記1つ以上のキーフレームの各々は、前記1つ以上のランドマークの少なくとも1つを含むように撮影された撮影画像であり、
     前記1つ以上の姿勢情報の各々は、位置、及び向きの情報を含み、
     1つ以上の投影関係を取得する投影関係取得ステップであって、前記1つ以上の投影関係の各々は、前記1つ以上のランドマークの各々と、前記1つ以上のキーフレームの各々と、前記1つ以上のキーフレームの各々に前記1つ以上のランドマークの各々を投影したときの投影点の当該キーフレーム上の座標に対応する投影座標情報と、の関係である、投影関係取得ステップと、
     前記1つ以上の投影関係の各々に対して、前記1つ以上の位置情報のうち、当該投影関係を構成する前記1つ以上のランドマークの1つに対応付けられた位置情報と、前記1つ以上の姿勢情報のうち、当該投影関係を構成する前記1つ以上のキーフレームの1つに対応付けられた姿勢情報と、当該投影関係を構成する前記投影座標情報と、に基づいて再投影誤差情報を取得し、前記再投影誤差情報を当該投影関係に関連付ける再投影誤差情報取得ステップと、
     前記1つ以上のランドマークの各々に対して、当該ランドマークに関連付けられたすべての前記再投影誤差情報が集約された第1の再投影誤差情報群を生成し、前記第1の再投影誤差情報群に含まれるすべての前記再投影誤差情報に基づく第1の合計値を求めるランドマーク起点誤差集約ステップと、
     前記1つ以上のキーフレームの各々に対して、当該キーフレームに関連付けられたすべての前記再投影誤差情報が集約された第2の再投影誤差情報群を生成し、前記第2の再投影誤差情報群に含まれるすべての前記再投影誤差情報に基づく第2の合計値を求めるキーフレーム起点誤差集約ステップと、
     前記1つ以上のランドマークの各々に対して、前記第1の合計値から前記1つ以上の位置情報のうち当該ランドマークの位置情報の更新値である位置情報更新値を推論し、前記位置情報更新値を用いて当該ランドマークの位置情報を更新する位置情報更新ステップと、
     前記1つ以上のキーフレームの各々に対して、前記第2の合計値から前記1つ以上の姿勢情報のうち当該キーフレームの姿勢情報の更新値である姿勢情報更新値を推論し、前記姿勢情報更新値を用いて当該キーフレームの姿勢情報を更新する姿勢情報更新ステップと、を含む
     マップ情報更新方法。
  2.  前記再投影誤差情報は、前記1つ以上の投影関係の一つに対応する、前記1つ以上の位置情報のうちの一つ、前記1つ以上の姿勢情報のうちの一つ、及び、前記投影座標情報から再投影誤差を推論した結果を示す特徴量を含み、前記再投影誤差は、当該位置情報、当該姿勢情報、及び、前記投影座標情報から空間幾何学的に算出される
     請求項1に記載のマップ情報更新方法。
  3.  前記再投影誤差情報は、前記1つ以上の投影関係の一つに対応する、前記1つ以上の位置情報のうちの一つ、前記1つ以上の姿勢情報のうちの一つ、及び、前記投影座標情報から空間幾何学的に算出される再投影誤差である
     請求項1に記載のマップ情報更新方法。
  4.  前記位置情報更新値は、位置推論エンジンによって推論され、
     前記姿勢情報更新値は、姿勢推論エンジンによって推論され、
     前記再投影誤差情報は、誤差推論エンジンによって推論され、
     前記位置推論エンジン、前記姿勢推論エンジン、及び、前記誤差推論エンジンは、前記マップ情報の更新値に基づいて空間幾何学的に求められた再投影誤差の和を損失関数として、学習したエンジンであり、
     前記マップ情報の更新値は、前記マップ情報に基づいて前記誤差推論エンジンによって推論された前記再投影誤差情報に基づいて、前記位置推論エンジン及び前記姿勢推論エンジンが推論することで求められる
     請求項2に記載のマップ情報更新方法。
  5.  前記位置情報更新値は、位置推論エンジンによって推論され、
     前記姿勢情報更新値は、姿勢推論エンジンによって推論され、
     前記再投影誤差は、空間幾何学的に算出され、
     前記位置推論エンジン、及び、前記姿勢推論エンジンは、前記マップ情報の更新値に基づいて空間幾何学的に求められた前記再投影誤差の和を損失関数として、学習したエンジンであり、
     前記マップ情報の更新値は、前記マップ情報に基づいて空間幾何学的に求められた前記再投影誤差に基づいて、前記位置推論エンジン及び前記姿勢推論エンジンが推論することで求められる
     請求項3に記載のマップ情報更新方法。
  6.  前記特徴量は、前記マップ情報の更新値を算出するために用いられるヘッセ行列の対角要素を含むブロックに共通して含まれる項を含む
     請求項2に記載のマップ情報更新方法。
PCT/JP2022/008794 2021-03-04 2022-03-02 マップ情報更新方法 WO2022186256A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2023503896A JPWO2022186256A1 (ja) 2021-03-04 2022-03-02
US18/341,466 US20230335016A1 (en) 2021-03-04 2023-06-26 Map information update method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202163156795P 2021-03-04 2021-03-04
US63/156,795 2021-03-04

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/341,466 Continuation US20230335016A1 (en) 2021-03-04 2023-06-26 Map information update method

Publications (1)

Publication Number Publication Date
WO2022186256A1 true WO2022186256A1 (ja) 2022-09-09

Family

ID=83154606

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/008794 WO2022186256A1 (ja) 2021-03-04 2022-03-02 マップ情報更新方法

Country Status (3)

Country Link
US (1) US20230335016A1 (ja)
JP (1) JPWO2022186256A1 (ja)
WO (1) WO2022186256A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018131165A1 (ja) * 2017-01-16 2018-07-19 富士通株式会社 情報処理プログラム、情報処理方法および情報処理装置
JP2020516853A (ja) * 2016-12-09 2020-06-11 トムトム グローバル コンテント ベスローテン フエンノートシャップ ビデオベースの位置決め及びマッピングの方法及びシステム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020516853A (ja) * 2016-12-09 2020-06-11 トムトム グローバル コンテント ベスローテン フエンノートシャップ ビデオベースの位置決め及びマッピングの方法及びシステム
WO2018131165A1 (ja) * 2017-01-16 2018-07-19 富士通株式会社 情報処理プログラム、情報処理方法および情報処理装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
PETER W. BATTAGLIA; JESSICA B. HAMRICK; VICTOR BAPST; ALVARO SANCHEZ-GONZALEZ; VINICIUS ZAMBALDI; MATEUSZ MALINOWSKI; ANDREA TACCH: "Relational inductive biases, deep learning, and graph networks", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 4 June 2018 (2018-06-04), 201 Olin Library Cornell University Ithaca, NY 14853 , XP080886921 *
SHINDOH, TOMONORI: "Google innovates with deep learning-based monocular SLAM technology, achieving self-position estimation accuracy that surpasses existing vSLAM", NIKKEI ROBOTICS, no. 48, 10 June 2019 (2019-06-10), pages 5 - 13, XP009539343, ISSN: 2189-5783 *

Also Published As

Publication number Publication date
US20230335016A1 (en) 2023-10-19
JPWO2022186256A1 (ja) 2022-09-09

Similar Documents

Publication Publication Date Title
US11900547B2 (en) Cross reality system for large scale environments
US20240087258A1 (en) Cross reality system with prioritization of geolocation information for localization
CN107990899B (zh) 一种基于slam的定位方法和系统
US20240062491A1 (en) Cross reality system with accurate shared maps
CN111311685B (zh) 一种基于imu与单目图像的运动场景重构无监督方法
US11532124B2 (en) Cross reality system with WIFI/GPS based map merge
CN109658445A (zh) 网络训练方法、增量建图方法、定位方法、装置及设备
US11417095B2 (en) Image recognition method and apparatus, electronic device, and readable storage medium using an update on body extraction parameter and alignment parameter
JP2006260527A (ja) 画像マッチング方法およびこれを用いた画像補間方法
CN108491763B (zh) 三维场景识别网络的无监督训练方法、装置及存储介质
CN109063584B (zh) 基于级联回归的面部特征点定位方法、装置、设备及介质
JP2022533464A (ja) 三次元モデルの生成方法及び装置、コンピュータ機器並びに記憶媒体
US11443481B1 (en) Reconstructing three-dimensional scenes portrayed in digital images utilizing point cloud machine-learning models
JP2015507272A (ja) 3dモデル・モーフィングのための方法および装置
CN114782661B (zh) 下半身姿态预测模型的训练方法及装置
CN115349140A (zh) 基于多种特征类型的有效定位
CN114820935A (zh) 三维重建方法、装置、设备及存储介质
CN115362478A (zh) 用于标记图像之间的空间关系的强化学习模型
CN110428461B (zh) 结合深度学习的单目slam方法及装置
CN112750155B (zh) 基于卷积神经网络的全景深度估计方法
WO2022186256A1 (ja) マップ情報更新方法
US11557099B2 (en) Cross reality system with buffering for localization accuracy
CN115294280A (zh) 三维重建方法、装置、设备、存储介质和程序产品
WO2023185241A1 (zh) 数据处理方法、装置、设备以及介质
CN109325962A (zh) 信息处理方法、装置、设备以及计算机可读存储介质

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2023503896

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22763310

Country of ref document: EP

Kind code of ref document: A1