public class PairwiseImageMatching<T extends boofcv.struct.image.ImageBase<T>>
extends java.lang.Object
implements org.ddogleg.struct.Stoppable
| Modifier and Type | Field and Description |
|---|---|
protected boofcv.abst.feature.associate.AssociateDescription<boofcv.struct.feature.TupleDesc> |
associate |
protected boofcv.factory.geo.ConfigEssential |
configEssential |
protected boofcv.factory.geo.ConfigFundamental |
configFundamental |
protected boofcv.factory.geo.ConfigRansac |
configRansac |
protected boofcv.abst.feature.detdesc.DetectDescribePoint<T,boofcv.struct.feature.TupleDesc> |
detDesc |
protected PairwiseImageGraph |
graph |
protected double |
MIN_ASSOCIATE_FRACTION |
protected int |
MIN_FEATURE_ASSOCIATED |
protected org.ddogleg.struct.FastQueue<boofcv.struct.geo.AssociatedPair> |
pairs |
protected boofcv.alg.geo.robust.RansacMultiView<georegression.struct.se.Se3_F64,boofcv.struct.geo.AssociatedPair> |
ransacEssential |
protected org.ddogleg.fitting.modelset.ransac.Ransac<org.ejml.data.DMatrixRMaj,boofcv.struct.geo.AssociatedPair> |
ransacFundamental |
protected java.io.PrintStream |
verbose |
protected int |
verboseLevel |
| Modifier | Constructor and Description |
|---|---|
protected |
PairwiseImageMatching() |
|
PairwiseImageMatching(boofcv.abst.feature.detdesc.DetectDescribePoint<T,boofcv.struct.feature.TupleDesc> detDesc,
boofcv.abst.feature.associate.AssociateDescription<boofcv.struct.feature.TupleDesc> associate) |
| Modifier and Type | Method and Description |
|---|---|
void |
addCamera(java.lang.String cameraName) |
void |
addCamera(java.lang.String cameraName,
boofcv.struct.distort.Point2Transform2_F64 pixelToNorm,
boofcv.struct.calib.CameraPinhole pinhole) |
void |
addImage(T image,
java.lang.String cameraName)
Adds a new observation from a camera.
|
void |
configure(int minFeatureAssociate,
double minFeatureAssociateFraction)
Specifies magic numbers for pruning connections
|
protected boolean |
connectViews(boofcv.alg.sfm.structure.PairwiseImageGraph.View viewA,
boofcv.alg.sfm.structure.PairwiseImageGraph.View viewB,
org.ddogleg.struct.FastQueue<boofcv.struct.feature.AssociatedIndex> matches)
Associate features between the two views.
|
protected void |
declareModelFitting() |
boofcv.factory.geo.ConfigEssential |
getConfigEssential() |
boofcv.factory.geo.ConfigFundamental |
getConfigFundamental() |
boofcv.factory.geo.ConfigRansac |
getConfigRansac() |
java.lang.Class<boofcv.struct.feature.TupleDesc> |
getDescriptionType() |
PairwiseImageGraph |
getGraph()
Returns the found graph
|
boolean |
isStopRequested() |
boolean |
process()
Determines connectivity between images.
|
void |
requestStop() |
void |
reset() |
void |
setVerbose(java.io.PrintStream verbose,
int level) |
protected double MIN_ASSOCIATE_FRACTION
protected int MIN_FEATURE_ASSOCIATED
protected boofcv.abst.feature.detdesc.DetectDescribePoint<T extends boofcv.struct.image.ImageBase<T>,boofcv.struct.feature.TupleDesc> detDesc
protected boofcv.abst.feature.associate.AssociateDescription<boofcv.struct.feature.TupleDesc> associate
protected PairwiseImageGraph graph
protected boofcv.factory.geo.ConfigRansac configRansac
protected boofcv.factory.geo.ConfigEssential configEssential
protected boofcv.factory.geo.ConfigFundamental configFundamental
protected org.ddogleg.struct.FastQueue<boofcv.struct.geo.AssociatedPair> pairs
protected boofcv.alg.geo.robust.RansacMultiView<georegression.struct.se.Se3_F64,boofcv.struct.geo.AssociatedPair> ransacEssential
protected org.ddogleg.fitting.modelset.ransac.Ransac<org.ejml.data.DMatrixRMaj,boofcv.struct.geo.AssociatedPair> ransacFundamental
protected java.io.PrintStream verbose
protected int verboseLevel
public PairwiseImageMatching(boofcv.abst.feature.detdesc.DetectDescribePoint<T,boofcv.struct.feature.TupleDesc> detDesc, boofcv.abst.feature.associate.AssociateDescription<boofcv.struct.feature.TupleDesc> associate)
protected PairwiseImageMatching()
protected void declareModelFitting()
public void configure(int minFeatureAssociate,
double minFeatureAssociateFraction)
minFeatureAssociate - Minimum number of features a connection needs to haveminFeatureAssociateFraction - Fraction of total features for edge and both images.public void addCamera(java.lang.String cameraName)
public void addCamera(java.lang.String cameraName,
boofcv.struct.distort.Point2Transform2_F64 pixelToNorm,
boofcv.struct.calib.CameraPinhole pinhole)
public void addImage(T image, java.lang.String cameraName)
image - The imagepublic boolean process()
getGraph().public PairwiseImageGraph getGraph()
protected boolean connectViews(boofcv.alg.sfm.structure.PairwiseImageGraph.View viewA,
boofcv.alg.sfm.structure.PairwiseImageGraph.View viewB,
org.ddogleg.struct.FastQueue<boofcv.struct.feature.AssociatedIndex> matches)
public void requestStop()
requestStop in interface org.ddogleg.struct.Stoppablepublic boolean isStopRequested()
isStopRequested in interface org.ddogleg.struct.Stoppablepublic java.lang.Class<boofcv.struct.feature.TupleDesc> getDescriptionType()
public boofcv.factory.geo.ConfigEssential getConfigEssential()
public boofcv.factory.geo.ConfigFundamental getConfigFundamental()
public boofcv.factory.geo.ConfigRansac getConfigRansac()
public void reset()
public void setVerbose(java.io.PrintStream verbose,
int level)