Package boofcv.alg.structure.expand
Class EstimateViewKnownCalibration
java.lang.Object
boofcv.alg.structure.expand.EstimateViewKnownCalibration
- All Implemented Interfaces:
VerbosePrint
Expands to a new view using know camera intrinsics for all views. Inliers from 3-view are triangulated
using the two known views. Then the 3rd view (the one being added) has its pose estimated using PNP + RANSAC. Then
all the points and views are refined using bundle adjustment. The cameras will not be optimized as they are
considered to be known.
-
Field Summary
Modifier and TypeFieldDescriptionfinal EstimateViewUtils
double
If less than this number of features fail the physical constraint test, attempt to recover by removing themfinal DogArray_I32
Minimum number of inliers for it to accept the solutionfinal CameraPinhole
Estimates the new view's locationTriangulate from the two known views -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
configure
(ConfigTriangulation configTriangulate, ConfigPnP configPnP, ConfigRansac configRansac) Use Configuration classes to initialize triangulate and RANSACvoid
Instantiates triangulation and RANSAC using default parametersboolean
process
(PairwiseGraphUtils pairwiseUtils, SceneWorkingGraph workGraph, MetricExpandByOneView.Solution solution) Estimates the pose of a view and which features are in its inlier set.void
setVerbose
(@Nullable PrintStream out, @Nullable Set<String> configuration)
-
Field Details
-
fractionBadFeaturesRecover
public double fractionBadFeaturesRecoverIf less than this number of features fail the physical constraint test, attempt to recover by removing them -
minimumInliers
Minimum number of inliers for it to accept the solution -
estimateUtils
-
triangulate2
Triangulate from the two known views -
ransacPnP
Estimates the new view's location -
inputPnP_to_inliersThreeView
-
pinhole
-
-
Constructor Details
-
EstimateViewKnownCalibration
public EstimateViewKnownCalibration()
-
-
Method Details
-
defaultConfiguration
public void defaultConfiguration()Instantiates triangulation and RANSAC using default parameters -
configure
public void configure(ConfigTriangulation configTriangulate, ConfigPnP configPnP, ConfigRansac configRansac) Use Configuration classes to initialize triangulate and RANSAC -
process
public boolean process(PairwiseGraphUtils pairwiseUtils, SceneWorkingGraph workGraph, MetricExpandByOneView.Solution solution) Estimates the pose of a view and which features are in its inlier set.- Parameters:
pairwiseUtils
- (Input) Pairwise information and specifies which view is being estimatedworkGraph
- (Input) Working graph with metric informationsolution
- (Output) The estimated state of the new view- Returns:
- true if successful or false if it failed
-
setVerbose
public void setVerbose(@Nullable @Nullable PrintStream out, @Nullable @Nullable Set<String> configuration) - Specified by:
setVerbose
in interfaceVerbosePrint
-