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
FieldsModifier and TypeFieldDescriptionfinal EstimateViewUtilsdoubleIf less than this number of features fail the physical constraint test, attempt to recover by removing themfinal DogArray_I32Minimum number of inliers for it to accept the solutionfinal CameraPinholeEstimates the new view's locationTriangulate from the two known views -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidconfigure(ConfigTriangulation configTriangulate, ConfigPnP configPnP, ConfigRansac configRansac) Use Configuration classes to initialize triangulate and RANSACvoidInstantiates triangulation and RANSAC using default parametersbooleanprocess(PairwiseGraphUtils pairwiseUtils, SceneWorkingGraph workGraph, MetricExpandByOneView.Solution solution) Estimates the pose of a view and which features are in its inlier set.voidsetVerbose(@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:
setVerbosein interfaceVerbosePrint
-