Fixed compile problems with NonlinearOptimizationParameters, removed redundant typedef
parent
93b1619c81
commit
67aa0bf63d
285
.cproject
285
.cproject
|
@ -258,14 +258,6 @@
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
<runAllBuilders>true</runAllBuilders>
|
<runAllBuilders>true</runAllBuilders>
|
||||||
</target>
|
</target>
|
||||||
<target name="testGaussianFactor.run" path="linear/tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>testGaussianFactor.run</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="all" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="all" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments>-j2</buildArguments>
|
<buildArguments>-j2</buildArguments>
|
||||||
|
@ -292,6 +284,7 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="tests/testBayesTree.run" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="tests/testBayesTree.run" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments/>
|
||||||
<buildTarget>tests/testBayesTree.run</buildTarget>
|
<buildTarget>tests/testBayesTree.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -299,6 +292,7 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testBinaryBayesNet.run" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testBinaryBayesNet.run" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments/>
|
||||||
<buildTarget>testBinaryBayesNet.run</buildTarget>
|
<buildTarget>testBinaryBayesNet.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -346,6 +340,7 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testSymbolicBayesNet.run" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testSymbolicBayesNet.run" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments/>
|
||||||
<buildTarget>testSymbolicBayesNet.run</buildTarget>
|
<buildTarget>testSymbolicBayesNet.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -353,6 +348,7 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="tests/testSymbolicFactor.run" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="tests/testSymbolicFactor.run" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments/>
|
||||||
<buildTarget>tests/testSymbolicFactor.run</buildTarget>
|
<buildTarget>tests/testSymbolicFactor.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -360,6 +356,7 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testSymbolicFactorGraph.run" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testSymbolicFactorGraph.run" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments/>
|
||||||
<buildTarget>testSymbolicFactorGraph.run</buildTarget>
|
<buildTarget>testSymbolicFactorGraph.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -375,11 +372,20 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="tests/testBayesTree" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="tests/testBayesTree" path="inference" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments/>
|
||||||
<buildTarget>tests/testBayesTree</buildTarget>
|
<buildTarget>tests/testBayesTree</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
<runAllBuilders>true</runAllBuilders>
|
<runAllBuilders>true</runAllBuilders>
|
||||||
</target>
|
</target>
|
||||||
|
<target name="testGaussianFactor.run" path="linear/tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>testGaussianFactor.run</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
<target name="check" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="check" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments>-j2</buildArguments>
|
<buildArguments>-j2</buildArguments>
|
||||||
|
@ -406,7 +412,6 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testGraph.run" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testGraph.run" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments/>
|
|
||||||
<buildTarget>testGraph.run</buildTarget>
|
<buildTarget>testGraph.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -478,7 +483,6 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testInference.run" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testInference.run" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments/>
|
|
||||||
<buildTarget>testInference.run</buildTarget>
|
<buildTarget>testInference.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -486,7 +490,6 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testGaussianFactor.run" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testGaussianFactor.run" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments/>
|
|
||||||
<buildTarget>testGaussianFactor.run</buildTarget>
|
<buildTarget>testGaussianFactor.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -494,7 +497,6 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testJunctionTree.run" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testJunctionTree.run" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments/>
|
|
||||||
<buildTarget>testJunctionTree.run</buildTarget>
|
<buildTarget>testJunctionTree.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -502,7 +504,6 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testSymbolicBayesNet.run" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testSymbolicBayesNet.run" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments/>
|
|
||||||
<buildTarget>testSymbolicBayesNet.run</buildTarget>
|
<buildTarget>testSymbolicBayesNet.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -510,7 +511,6 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testSymbolicFactorGraph.run" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testSymbolicFactorGraph.run" path="tests" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments/>
|
|
||||||
<buildTarget>testSymbolicFactorGraph.run</buildTarget>
|
<buildTarget>testSymbolicFactorGraph.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -580,22 +580,6 @@
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
<runAllBuilders>true</runAllBuilders>
|
<runAllBuilders>true</runAllBuilders>
|
||||||
</target>
|
</target>
|
||||||
<target name="all" path="CppUnitLite" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>all</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="clean" path="CppUnitLite" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>clean</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="tests/testPose2.run" path="build_retract/gtsam/geometry" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="tests/testPose2.run" path="build_retract/gtsam/geometry" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments>-j2</buildArguments>
|
<buildArguments>-j2</buildArguments>
|
||||||
|
@ -612,6 +596,22 @@
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
<runAllBuilders>true</runAllBuilders>
|
<runAllBuilders>true</runAllBuilders>
|
||||||
</target>
|
</target>
|
||||||
|
<target name="all" path="CppUnitLite" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>all</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
|
<target name="clean" path="CppUnitLite" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>clean</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
<target name="all" path="spqr_mini" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="all" path="spqr_mini" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments>-j2</buildArguments>
|
<buildArguments>-j2</buildArguments>
|
||||||
|
@ -636,7 +636,15 @@
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
<runAllBuilders>true</runAllBuilders>
|
<runAllBuilders>true</runAllBuilders>
|
||||||
</target>
|
</target>
|
||||||
<target name="check" path="build/gtsam/nonlinear" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="all" path="build_wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>all</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
|
<target name="check" path="build_wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments>-j2</buildArguments>
|
<buildArguments>-j2</buildArguments>
|
||||||
<buildTarget>check</buildTarget>
|
<buildTarget>check</buildTarget>
|
||||||
|
@ -644,6 +652,14 @@
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
<runAllBuilders>true</runAllBuilders>
|
<runAllBuilders>true</runAllBuilders>
|
||||||
</target>
|
</target>
|
||||||
|
<target name="clean" path="build_wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>clean</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
<target name="tests/testGeneralSFMFactor.run" path="build/gtsam/slam" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="tests/testGeneralSFMFactor.run" path="build/gtsam/slam" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments>-j2</buildArguments>
|
<buildArguments>-j2</buildArguments>
|
||||||
|
@ -684,15 +700,7 @@
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
<runAllBuilders>true</runAllBuilders>
|
<runAllBuilders>true</runAllBuilders>
|
||||||
</target>
|
</target>
|
||||||
<target name="all" path="build_wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="check" path="build/gtsam/nonlinear" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>all</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="check" path="build_wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments>-j2</buildArguments>
|
<buildArguments>-j2</buildArguments>
|
||||||
<buildTarget>check</buildTarget>
|
<buildTarget>check</buildTarget>
|
||||||
|
@ -700,14 +708,6 @@
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
<runAllBuilders>true</runAllBuilders>
|
<runAllBuilders>true</runAllBuilders>
|
||||||
</target>
|
</target>
|
||||||
<target name="clean" path="build_wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>clean</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="check" path="build/geometry" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="check" path="build/geometry" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments>-j2</buildArguments>
|
<buildArguments>-j2</buildArguments>
|
||||||
|
@ -1038,6 +1038,7 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testErrors.run" path="linear" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testErrors.run" path="linear" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments/>
|
||||||
<buildTarget>testErrors.run</buildTarget>
|
<buildTarget>testErrors.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -1493,7 +1494,6 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testSimulated2DOriented.run" path="slam" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testSimulated2DOriented.run" path="slam" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments/>
|
|
||||||
<buildTarget>testSimulated2DOriented.run</buildTarget>
|
<buildTarget>testSimulated2DOriented.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -1533,7 +1533,6 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testSimulated2D.run" path="slam" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testSimulated2D.run" path="slam" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments/>
|
|
||||||
<buildTarget>testSimulated2D.run</buildTarget>
|
<buildTarget>testSimulated2D.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -1541,7 +1540,6 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="testSimulated3D.run" path="slam" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testSimulated3D.run" path="slam" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments/>
|
|
||||||
<buildTarget>testSimulated3D.run</buildTarget>
|
<buildTarget>testSimulated3D.run</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -1908,7 +1906,6 @@
|
||||||
</target>
|
</target>
|
||||||
<target name="tests/testGaussianISAM2" path="build/slam" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="tests/testGaussianISAM2" path="build/slam" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments/>
|
|
||||||
<buildTarget>tests/testGaussianISAM2</buildTarget>
|
<buildTarget>tests/testGaussianISAM2</buildTarget>
|
||||||
<stopOnError>true</stopOnError>
|
<stopOnError>true</stopOnError>
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
|
@ -1930,6 +1927,46 @@
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
<runAllBuilders>true</runAllBuilders>
|
<runAllBuilders>true</runAllBuilders>
|
||||||
</target>
|
</target>
|
||||||
|
<target name="install" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>install</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
|
<target name="clean" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>clean</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
|
<target name="check" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>check</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
|
<target name="all" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>all</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
|
<target name="dist" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>dist</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
<target name="testRot3.run" path="geometry" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="testRot3.run" path="geometry" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments>-j2</buildArguments>
|
<buildArguments>-j2</buildArguments>
|
||||||
|
@ -2026,94 +2063,6 @@
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
<runAllBuilders>true</runAllBuilders>
|
<runAllBuilders>true</runAllBuilders>
|
||||||
</target>
|
</target>
|
||||||
<target name="install" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>install</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="clean" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>clean</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="check" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>check</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="all" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>all</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="dist" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>dist</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="check" path="build/wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>check</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="install" path="build/wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>install</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="tests/testSpirit.run" path="build/wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>tests/testSpirit.run</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="tests/testWrap.run" path="build/wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>tests/testWrap.run</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="clean" path="build/wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>clean</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="all" path="build/wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments>-j2</buildArguments>
|
|
||||||
<buildTarget>all</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="check" path="build" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
<target name="check" path="build" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
<buildCommand>make</buildCommand>
|
<buildCommand>make</buildCommand>
|
||||||
<buildArguments>-j2</buildArguments>
|
<buildArguments>-j2</buildArguments>
|
||||||
|
@ -2178,6 +2127,62 @@
|
||||||
<useDefaultCommand>false</useDefaultCommand>
|
<useDefaultCommand>false</useDefaultCommand>
|
||||||
<runAllBuilders>true</runAllBuilders>
|
<runAllBuilders>true</runAllBuilders>
|
||||||
</target>
|
</target>
|
||||||
|
<target name="check install" path="build" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>check install</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
|
<target name="check" path="build/wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>check</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
|
<target name="install" path="build/wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>install</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
|
<target name="tests/testSpirit.run" path="build/wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>tests/testSpirit.run</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
|
<target name="tests/testWrap.run" path="build/wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>tests/testWrap.run</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
|
<target name="clean" path="build/wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>clean</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
|
<target name="all" path="build/wrap" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||||
|
<buildCommand>make</buildCommand>
|
||||||
|
<buildArguments>-j2</buildArguments>
|
||||||
|
<buildTarget>all</buildTarget>
|
||||||
|
<stopOnError>true</stopOnError>
|
||||||
|
<useDefaultCommand>true</useDefaultCommand>
|
||||||
|
<runAllBuilders>true</runAllBuilders>
|
||||||
|
</target>
|
||||||
</buildTargets>
|
</buildTargets>
|
||||||
</storageModule>
|
</storageModule>
|
||||||
</cproject>
|
</cproject>
|
||||||
|
|
|
@ -68,7 +68,7 @@ int main(int argc, char** argv) {
|
||||||
Ordering::shared_ptr ordering = graph->orderingCOLAMD(*initial);
|
Ordering::shared_ptr ordering = graph->orderingCOLAMD(*initial);
|
||||||
|
|
||||||
/* 4.2.2 set up solver and optimize */
|
/* 4.2.2 set up solver and optimize */
|
||||||
NonlinearOptimizationParameters::sharedThis params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-15, 1e-15);
|
NonlinearOptimizationParameters::shared_ptr params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-15, 1e-15);
|
||||||
Optimizer optimizer(graph, initial, ordering, params);
|
Optimizer optimizer(graph, initial, ordering, params);
|
||||||
Optimizer optimizer_result = optimizer.levenbergMarquardt();
|
Optimizer optimizer_result = optimizer.levenbergMarquardt();
|
||||||
|
|
||||||
|
|
|
@ -146,7 +146,7 @@ int main(int argc, char* argv[]) {
|
||||||
|
|
||||||
// Optimize the graph
|
// Optimize the graph
|
||||||
cout << "*******************************************************" << endl;
|
cout << "*******************************************************" << endl;
|
||||||
NonlinearOptimizationParameters::sharedThis params = NonlinearOptimizationParameters::newVerbosity(Optimizer::Parameters::DAMPED);
|
NonlinearOptimizationParameters::shared_ptr params = NonlinearOptimizationParameters::newVerbosity(Optimizer::Parameters::DAMPED);
|
||||||
visualSLAM::Optimizer::shared_values result = visualSLAM::Optimizer::optimizeGN(graph, initialEstimates, params);
|
visualSLAM::Optimizer::shared_values result = visualSLAM::Optimizer::optimizeGN(graph, initialEstimates, params);
|
||||||
|
|
||||||
// Print final results
|
// Print final results
|
||||||
|
|
|
@ -18,7 +18,7 @@ sources += Point2.cpp Rot2.cpp Pose2.cpp Point3.cpp Pose3.cpp
|
||||||
check_PROGRAMS += tests/testPoint2 tests/testRot2 tests/testPose2 tests/testPoint3 tests/testRot3M tests/testRot3Q tests/testPose3
|
check_PROGRAMS += tests/testPoint2 tests/testRot2 tests/testPose2 tests/testPoint3 tests/testRot3M tests/testRot3Q tests/testPose3
|
||||||
|
|
||||||
# Cameras
|
# Cameras
|
||||||
headers += GeneralCameraT.h Cal3_S2Stereo.h
|
headers += GeneralCameraT.h Cal3_S2Stereo.h PinholeCamera.h
|
||||||
sources += Cal3_S2.cpp Cal3DS2.cpp Cal3Bundler.cpp CalibratedCamera.cpp SimpleCamera.cpp
|
sources += Cal3_S2.cpp Cal3DS2.cpp Cal3Bundler.cpp CalibratedCamera.cpp SimpleCamera.cpp
|
||||||
check_PROGRAMS += tests/testCal3DS2 tests/testCal3_S2 tests/testCal3Bundler tests/testCalibratedCamera tests/testSimpleCamera
|
check_PROGRAMS += tests/testCal3DS2 tests/testCal3_S2 tests/testCal3Bundler tests/testCalibratedCamera tests/testSimpleCamera
|
||||||
|
|
||||||
|
|
|
@ -120,7 +120,7 @@ namespace gtsam {
|
||||||
|
|
||||||
/// move a cameras according to d
|
/// move a cameras according to d
|
||||||
PinholeCamera retract(const Vector& d) const {
|
PinholeCamera retract(const Vector& d) const {
|
||||||
if ( d.size() == pose_.dim() )
|
if ((size_t) d.size() == pose_.dim() )
|
||||||
return PinholeCamera(pose().retract(d), calibration()) ;
|
return PinholeCamera(pose().retract(d), calibration()) ;
|
||||||
else
|
else
|
||||||
return PinholeCamera(pose().retract(d.head(pose().dim())),
|
return PinholeCamera(pose().retract(d.head(pose().dim())),
|
||||||
|
|
|
@ -22,9 +22,9 @@ check_PROGRAMS += tests/testValues tests/testKey tests/testOrdering
|
||||||
# Nonlinear nonlinear
|
# Nonlinear nonlinear
|
||||||
headers += Key.h
|
headers += Key.h
|
||||||
headers += NonlinearFactorGraph.h NonlinearFactorGraph-inl.h
|
headers += NonlinearFactorGraph.h NonlinearFactorGraph-inl.h
|
||||||
headers += NonlinearOptimizer-inl.h NonlinearOptimization.h NonlinearOptimization-inl.h NonlinearOptimizationParameters.h
|
headers += NonlinearOptimizer-inl.h NonlinearOptimization.h NonlinearOptimization-inl.h
|
||||||
headers += NonlinearFactor.h
|
headers += NonlinearFactor.h
|
||||||
sources += NonlinearOptimizer.cpp Ordering.cpp DoglegOptimizerImpl.cpp
|
sources += NonlinearOptimizer.cpp Ordering.cpp DoglegOptimizerImpl.cpp NonlinearOptimizationParameters.cpp
|
||||||
headers += DoglegOptimizer.h DoglegOptimizer-inl.h
|
headers += DoglegOptimizer.h DoglegOptimizer-inl.h
|
||||||
|
|
||||||
# Nonlinear iSAM(2)
|
# Nonlinear iSAM(2)
|
||||||
|
|
|
@ -0,0 +1,121 @@
|
||||||
|
/* ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
* GTSAM Copyright 2010, Georgia Tech Research Corporation,
|
||||||
|
* Atlanta, Georgia 30332-0415
|
||||||
|
* All Rights Reserved
|
||||||
|
* Authors: Frank Dellaert, et al. (see THANKS for the full author list)
|
||||||
|
|
||||||
|
* See LICENSE for the license information
|
||||||
|
|
||||||
|
* -------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @file NonlinearOptimizationParameters.cpp
|
||||||
|
* @date Jan 28, 2012
|
||||||
|
* @author Alex Cunningham
|
||||||
|
* @brief Implements parameters structure
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <iostream>
|
||||||
|
|
||||||
|
#include <boost/make_shared.hpp>
|
||||||
|
|
||||||
|
#include <gtsam/nonlinear/NonlinearOptimizationParameters.h>
|
||||||
|
|
||||||
|
namespace gtsam {
|
||||||
|
|
||||||
|
using namespace std;
|
||||||
|
|
||||||
|
/* ************************************************************************* */
|
||||||
|
NonlinearOptimizationParameters::NonlinearOptimizationParameters() :
|
||||||
|
absDecrease_(1e-6), relDecrease_(1e-6), sumError_(0.0), maxIterations_(
|
||||||
|
100), lambda_(1e-5), lambdaFactor_(10.0), verbosity_(SILENT), lambdaMode_(
|
||||||
|
BOUNDED), useQR_(false) {
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ************************************************************************* */
|
||||||
|
NonlinearOptimizationParameters::NonlinearOptimizationParameters(double absDecrease, double relDecrease,
|
||||||
|
double sumError, int iIters, double lambda,
|
||||||
|
double lambdaFactor, verbosityLevel v,
|
||||||
|
LambdaMode lambdaMode, bool useQR) :
|
||||||
|
absDecrease_(absDecrease), relDecrease_(relDecrease), sumError_(
|
||||||
|
sumError), maxIterations_(iIters), lambda_(lambda), lambdaFactor_(
|
||||||
|
lambdaFactor), verbosity_(v), lambdaMode_(lambdaMode), useQR_(useQR) {
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ************************************************************************* */
|
||||||
|
NonlinearOptimizationParameters::NonlinearOptimizationParameters(
|
||||||
|
const NonlinearOptimizationParameters ¶meters) :
|
||||||
|
absDecrease_(parameters.absDecrease_), relDecrease_(
|
||||||
|
parameters.relDecrease_), sumError_(parameters.sumError_), maxIterations_(
|
||||||
|
parameters.maxIterations_), lambda_(parameters.lambda_), lambdaFactor_(
|
||||||
|
parameters.lambdaFactor_), verbosity_(parameters.verbosity_), lambdaMode_(
|
||||||
|
parameters.lambdaMode_), useQR_(parameters.useQR_) {
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ************************************************************************* */
|
||||||
|
void NonlinearOptimizationParameters::print(const std::string& s) const {
|
||||||
|
cout << "NonlinearOptimizationParameters " << s << endl;
|
||||||
|
cout << "absolute decrease threshold: " << absDecrease_ << endl;
|
||||||
|
cout << "relative decrease threshold: " << relDecrease_ << endl;
|
||||||
|
cout << " error sum threshold: " << sumError_ << endl;
|
||||||
|
cout << " maximum nr. of iterations: " << maxIterations_ << endl;
|
||||||
|
cout << " initial lambda value: " << lambda_ << endl;
|
||||||
|
cout << " factor to multiply lambda: " << lambdaFactor_ << endl;
|
||||||
|
cout << " verbosity level: " << verbosity_ << endl;
|
||||||
|
cout << " lambda mode: " << lambdaMode_ << endl;
|
||||||
|
cout << " use QR: " << useQR_ << endl;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ************************************************************************* */
|
||||||
|
NonlinearOptimizationParameters::shared_ptr
|
||||||
|
NonlinearOptimizationParameters::newLambda_(double lambda) const {
|
||||||
|
shared_ptr ptr(
|
||||||
|
boost::make_shared < NonlinearOptimizationParameters > (*this));
|
||||||
|
ptr->lambda_ = lambda;
|
||||||
|
return ptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ************************************************************************* */
|
||||||
|
NonlinearOptimizationParameters::shared_ptr
|
||||||
|
NonlinearOptimizationParameters::newVerbosity(verbosityLevel verbosity) {
|
||||||
|
shared_ptr ptr(boost::make_shared<NonlinearOptimizationParameters>());
|
||||||
|
ptr->verbosity_ = verbosity;
|
||||||
|
return ptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ************************************************************************* */
|
||||||
|
NonlinearOptimizationParameters::shared_ptr
|
||||||
|
NonlinearOptimizationParameters::newMaxIterations(int maxIterations) {
|
||||||
|
shared_ptr ptr(boost::make_shared<NonlinearOptimizationParameters>());
|
||||||
|
ptr->maxIterations_ = maxIterations;
|
||||||
|
return ptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ************************************************************************* */
|
||||||
|
NonlinearOptimizationParameters::shared_ptr
|
||||||
|
NonlinearOptimizationParameters::newLambda(double lambda) {
|
||||||
|
shared_ptr ptr(boost::make_shared<NonlinearOptimizationParameters>());
|
||||||
|
ptr->lambda_ = lambda;
|
||||||
|
return ptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ************************************************************************* */
|
||||||
|
NonlinearOptimizationParameters::shared_ptr
|
||||||
|
NonlinearOptimizationParameters::newDrecreaseThresholds(double absDecrease,
|
||||||
|
double relDecrease) {
|
||||||
|
shared_ptr ptr(boost::make_shared<NonlinearOptimizationParameters>());
|
||||||
|
ptr->absDecrease_ = absDecrease;
|
||||||
|
ptr->relDecrease_ = relDecrease;
|
||||||
|
return ptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ************************************************************************* */
|
||||||
|
NonlinearOptimizationParameters::shared_ptr
|
||||||
|
NonlinearOptimizationParameters::newFactorization(bool useQR) {
|
||||||
|
shared_ptr ptr(boost::make_shared<NonlinearOptimizationParameters>());
|
||||||
|
ptr->useQR_ = useQR;
|
||||||
|
return ptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
} // \namespace gtsam
|
|
@ -18,8 +18,8 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include <string>
|
||||||
#include <boost/shared_ptr.hpp>
|
#include <boost/shared_ptr.hpp>
|
||||||
#include <boost/make_shared.hpp>
|
|
||||||
#include <boost/serialization/nvp.hpp>
|
#include <boost/serialization/nvp.hpp>
|
||||||
|
|
||||||
namespace gtsam {
|
namespace gtsam {
|
||||||
|
@ -32,7 +32,6 @@ namespace gtsam {
|
||||||
|
|
||||||
typedef boost::shared_ptr<NonlinearOptimizationParameters> shared_ptr;
|
typedef boost::shared_ptr<NonlinearOptimizationParameters> shared_ptr;
|
||||||
typedef NonlinearOptimizationParameters This;
|
typedef NonlinearOptimizationParameters This;
|
||||||
typedef boost::shared_ptr<NonlinearOptimizationParameters> sharedThis;
|
|
||||||
|
|
||||||
double absDecrease_; ///< threshold for the absolute decrease per iteration
|
double absDecrease_; ///< threshold for the absolute decrease per iteration
|
||||||
|
|
||||||
|
@ -75,98 +74,47 @@ namespace gtsam {
|
||||||
/// @{
|
/// @{
|
||||||
|
|
||||||
/// Default constructor
|
/// Default constructor
|
||||||
NonlinearOptimizationParameters() :
|
NonlinearOptimizationParameters();
|
||||||
absDecrease_(1e-6), relDecrease_(1e-6), sumError_(0.0), maxIterations_(
|
|
||||||
100), lambda_(1e-5), lambdaFactor_(10.0), verbosity_(SILENT), lambdaMode_(
|
|
||||||
BOUNDED), useQR_(false) {
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Constructor from doubles
|
/// Constructor from doubles
|
||||||
NonlinearOptimizationParameters(double absDecrease, double relDecrease,
|
NonlinearOptimizationParameters(double absDecrease, double relDecrease,
|
||||||
double sumError, int iIters = 100, double lambda = 1e-5,
|
double sumError, int iIters = 100, double lambda = 1e-5,
|
||||||
double lambdaFactor = 10, verbosityLevel v = SILENT,
|
double lambdaFactor = 10, verbosityLevel v = SILENT,
|
||||||
LambdaMode lambdaMode = BOUNDED, bool useQR = false) :
|
LambdaMode lambdaMode = BOUNDED, bool useQR = false);
|
||||||
absDecrease_(absDecrease), relDecrease_(relDecrease), sumError_(
|
|
||||||
sumError), maxIterations_(iIters), lambda_(lambda), lambdaFactor_(
|
|
||||||
lambdaFactor), verbosity_(v), lambdaMode_(lambdaMode), useQR_(useQR) {
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Copy constructor
|
/// Copy constructor
|
||||||
NonlinearOptimizationParameters(
|
NonlinearOptimizationParameters(
|
||||||
const NonlinearOptimizationParameters ¶meters) :
|
const NonlinearOptimizationParameters ¶meters);
|
||||||
absDecrease_(parameters.absDecrease_), relDecrease_(
|
|
||||||
parameters.relDecrease_), sumError_(parameters.sumError_), maxIterations_(
|
|
||||||
parameters.maxIterations_), lambda_(parameters.lambda_), lambdaFactor_(
|
|
||||||
parameters.lambdaFactor_), verbosity_(parameters.verbosity_), lambdaMode_(
|
|
||||||
parameters.lambdaMode_), useQR_(parameters.useQR_) {
|
|
||||||
}
|
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
/// @name Standard Interface
|
/// @name Standard Interface
|
||||||
/// @{
|
/// @{
|
||||||
|
|
||||||
/// print
|
/// print
|
||||||
void print(const std::string& s="") const {
|
void print(const std::string& s="") const;
|
||||||
cout << "NonlinearOptimizationParameters " << s << endl;
|
|
||||||
cout << "absolute decrease threshold: " << absDecrease_ << endl;
|
|
||||||
cout << "relative decrease threshold: " << relDecrease_ << endl;
|
|
||||||
cout << " error sum threshold: " << sumError_ << endl;
|
|
||||||
cout << " maximum nr. of iterations: " << maxIterations_ << endl;
|
|
||||||
cout << " initial lambda value: " << lambda_ << endl;
|
|
||||||
cout << " factor to multiply lambda: " << lambdaFactor_ << endl;
|
|
||||||
cout << " verbosity level: " << verbosity_ << endl;
|
|
||||||
cout << " lambda mode: " << lambdaMode_ << endl;
|
|
||||||
cout << " use QR: " << useQR_ << endl;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// a copy of old instance except new lambda
|
/// a copy of old instance except new lambda
|
||||||
sharedThis newLambda_(double lambda) const {
|
shared_ptr newLambda_(double lambda) const;
|
||||||
sharedThis ptr(
|
|
||||||
boost::make_shared < NonlinearOptimizationParameters > (*this));
|
|
||||||
ptr->lambda_ = lambda;
|
|
||||||
return ptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
/// @name Advanced Interface
|
/// @name Advanced Interface
|
||||||
/// @{
|
/// @{
|
||||||
|
|
||||||
/// a copy of old instance except new verbosity
|
/// a copy of old instance except new verbosity
|
||||||
static sharedThis newVerbosity(verbosityLevel verbosity) {
|
static shared_ptr newVerbosity(verbosityLevel verbosity);
|
||||||
sharedThis ptr(boost::make_shared<NonlinearOptimizationParameters>());
|
|
||||||
ptr->verbosity_ = verbosity;
|
|
||||||
return ptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// a copy of old instance except new maxIterations
|
/// a copy of old instance except new maxIterations
|
||||||
static sharedThis newMaxIterations(int maxIterations) {
|
static shared_ptr newMaxIterations(int maxIterations);
|
||||||
sharedThis ptr(boost::make_shared<NonlinearOptimizationParameters>());
|
|
||||||
ptr->maxIterations_ = maxIterations;
|
|
||||||
return ptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// a copy of old instance except new lambda
|
/// a copy of old instance except new lambda
|
||||||
static sharedThis newLambda(double lambda) {
|
static shared_ptr newLambda(double lambda);
|
||||||
sharedThis ptr(boost::make_shared<NonlinearOptimizationParameters>());
|
|
||||||
ptr->lambda_ = lambda;
|
|
||||||
return ptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// a copy of old instance except new thresholds
|
/// a copy of old instance except new thresholds
|
||||||
static sharedThis newDrecreaseThresholds(double absDecrease,
|
static shared_ptr newDrecreaseThresholds(double absDecrease,
|
||||||
double relDecrease) {
|
double relDecrease);
|
||||||
sharedThis ptr(boost::make_shared<NonlinearOptimizationParameters>());
|
|
||||||
ptr->absDecrease_ = absDecrease;
|
|
||||||
ptr->relDecrease_ = relDecrease;
|
|
||||||
return ptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// a copy of old instance except new QR flag
|
/// a copy of old instance except new QR flag
|
||||||
static sharedThis newFactorization(bool useQR) {
|
static shared_ptr newFactorization(bool useQR);
|
||||||
sharedThis ptr(boost::make_shared<NonlinearOptimizationParameters>());
|
|
||||||
ptr->useQR_ = useQR;
|
|
||||||
return ptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
|
|
||||||
|
|
|
@ -187,7 +187,7 @@ TEST( GeneralSFMFactor, optimize_defaultK ) {
|
||||||
|
|
||||||
// Create an ordering of the variables
|
// Create an ordering of the variables
|
||||||
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
||||||
NonlinearOptimizationParameters::sharedThis params (
|
NonlinearOptimizationParameters::shared_ptr params (
|
||||||
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-5, 10, NonlinearOptimizationParameters::SILENT));
|
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-5, 10, NonlinearOptimizationParameters::SILENT));
|
||||||
Optimizer optimizer(graph, values, ordering, params);
|
Optimizer optimizer(graph, values, ordering, params);
|
||||||
Optimizer optimizer2 = optimizer.levenbergMarquardt();
|
Optimizer optimizer2 = optimizer.levenbergMarquardt();
|
||||||
|
@ -232,7 +232,7 @@ TEST( GeneralSFMFactor, optimize_varK_SingleMeasurementError ) {
|
||||||
const double reproj_error = 1e-5;
|
const double reproj_error = 1e-5;
|
||||||
|
|
||||||
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
||||||
NonlinearOptimizationParameters::sharedThis params (
|
NonlinearOptimizationParameters::shared_ptr params (
|
||||||
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-5, 10, NonlinearOptimizationParameters::SILENT));
|
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-5, 10, NonlinearOptimizationParameters::SILENT));
|
||||||
Optimizer optimizer(graph, values, ordering, params);
|
Optimizer optimizer(graph, values, ordering, params);
|
||||||
Optimizer optimizer2 = optimizer.levenbergMarquardt();
|
Optimizer optimizer2 = optimizer.levenbergMarquardt();
|
||||||
|
@ -275,7 +275,7 @@ TEST( GeneralSFMFactor, optimize_varK_FixCameras ) {
|
||||||
const double reproj_error = 1e-5 ;
|
const double reproj_error = 1e-5 ;
|
||||||
|
|
||||||
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
||||||
NonlinearOptimizationParameters::sharedThis params (
|
NonlinearOptimizationParameters::shared_ptr params (
|
||||||
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-3, 10, NonlinearOptimizationParameters::SILENT));
|
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-3, 10, NonlinearOptimizationParameters::SILENT));
|
||||||
Optimizer optimizer(graph, values, ordering, params);
|
Optimizer optimizer(graph, values, ordering, params);
|
||||||
|
|
||||||
|
@ -335,7 +335,7 @@ TEST( GeneralSFMFactor, optimize_varK_FixLandmarks ) {
|
||||||
const double reproj_error = 1e-5 ;
|
const double reproj_error = 1e-5 ;
|
||||||
|
|
||||||
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
||||||
NonlinearOptimizationParameters::sharedThis params (
|
NonlinearOptimizationParameters::shared_ptr params (
|
||||||
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-3, 10, NonlinearOptimizationParameters::SILENT));
|
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-3, 10, NonlinearOptimizationParameters::SILENT));
|
||||||
Optimizer optimizer(graph, values, ordering, params);
|
Optimizer optimizer(graph, values, ordering, params);
|
||||||
|
|
||||||
|
@ -378,7 +378,7 @@ TEST( GeneralSFMFactor, optimize_varK_BA ) {
|
||||||
const double reproj_error = 1e-5 ;
|
const double reproj_error = 1e-5 ;
|
||||||
|
|
||||||
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
||||||
NonlinearOptimizationParameters::sharedThis params (
|
NonlinearOptimizationParameters::shared_ptr params (
|
||||||
new NonlinearOptimizationParameters(1e-2, 1e-2, 0.0, 100, 1e-5, 10, NonlinearOptimizationParameters::SILENT));
|
new NonlinearOptimizationParameters(1e-2, 1e-2, 0.0, 100, 1e-5, 10, NonlinearOptimizationParameters::SILENT));
|
||||||
Optimizer optimizer(graph, values, ordering, params);
|
Optimizer optimizer(graph, values, ordering, params);
|
||||||
|
|
||||||
|
|
|
@ -188,7 +188,7 @@ TEST( GeneralSFMFactor, optimize_defaultK ) {
|
||||||
|
|
||||||
// Create an ordering of the variables
|
// Create an ordering of the variables
|
||||||
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
||||||
NonlinearOptimizationParameters::sharedThis params (
|
NonlinearOptimizationParameters::shared_ptr params (
|
||||||
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-5, 10, NonlinearOptimizationParameters::SILENT));
|
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-5, 10, NonlinearOptimizationParameters::SILENT));
|
||||||
Optimizer optimizer(graph, values, ordering, params);
|
Optimizer optimizer(graph, values, ordering, params);
|
||||||
Optimizer optimizer2 = optimizer.levenbergMarquardt();
|
Optimizer optimizer2 = optimizer.levenbergMarquardt();
|
||||||
|
@ -233,7 +233,7 @@ TEST( GeneralSFMFactor, optimize_varK_SingleMeasurementError ) {
|
||||||
const double reproj_error = 1e-5;
|
const double reproj_error = 1e-5;
|
||||||
|
|
||||||
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
||||||
NonlinearOptimizationParameters::sharedThis params (
|
NonlinearOptimizationParameters::shared_ptr params (
|
||||||
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-5, 10, NonlinearOptimizationParameters::SILENT));
|
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-5, 10, NonlinearOptimizationParameters::SILENT));
|
||||||
Optimizer optimizer(graph, values, ordering, params);
|
Optimizer optimizer(graph, values, ordering, params);
|
||||||
Optimizer optimizer2 = optimizer.levenbergMarquardt();
|
Optimizer optimizer2 = optimizer.levenbergMarquardt();
|
||||||
|
@ -276,7 +276,7 @@ TEST( GeneralSFMFactor, optimize_varK_FixCameras ) {
|
||||||
const double reproj_error = 1e-5 ;
|
const double reproj_error = 1e-5 ;
|
||||||
|
|
||||||
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
||||||
NonlinearOptimizationParameters::sharedThis params (
|
NonlinearOptimizationParameters::shared_ptr params (
|
||||||
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-3, 10, NonlinearOptimizationParameters::SILENT));
|
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-3, 10, NonlinearOptimizationParameters::SILENT));
|
||||||
Optimizer optimizer(graph, values, ordering, params);
|
Optimizer optimizer(graph, values, ordering, params);
|
||||||
|
|
||||||
|
@ -332,7 +332,7 @@ TEST( GeneralSFMFactor, optimize_varK_FixLandmarks ) {
|
||||||
const double reproj_error = 1e-5 ;
|
const double reproj_error = 1e-5 ;
|
||||||
|
|
||||||
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
||||||
NonlinearOptimizationParameters::sharedThis params (
|
NonlinearOptimizationParameters::shared_ptr params (
|
||||||
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-3, 10, NonlinearOptimizationParameters::SILENT));
|
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-3, 10, NonlinearOptimizationParameters::SILENT));
|
||||||
Optimizer optimizer(graph, values, ordering, params);
|
Optimizer optimizer(graph, values, ordering, params);
|
||||||
|
|
||||||
|
@ -374,7 +374,7 @@ TEST( GeneralSFMFactor, optimize_varK_BA ) {
|
||||||
const double reproj_error = 1e-5 ;
|
const double reproj_error = 1e-5 ;
|
||||||
|
|
||||||
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
shared_ptr<Ordering> ordering = getOrdering(X,L);
|
||||||
NonlinearOptimizationParameters::sharedThis params (
|
NonlinearOptimizationParameters::shared_ptr params (
|
||||||
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-5, 10, NonlinearOptimizationParameters::SILENT));
|
new NonlinearOptimizationParameters(1e-5, 1e-5, 0.0, 100, 1e-5, 10, NonlinearOptimizationParameters::SILENT));
|
||||||
Optimizer optimizer(graph, values, ordering, params);
|
Optimizer optimizer(graph, values, ordering, params);
|
||||||
|
|
||||||
|
|
|
@ -162,7 +162,7 @@ TEST(Pose2Graph, optimize) {
|
||||||
*ordering += "x0","x1";
|
*ordering += "x0","x1";
|
||||||
typedef NonlinearOptimizer<pose2SLAM::Graph, pose2SLAM::Values> Optimizer;
|
typedef NonlinearOptimizer<pose2SLAM::Graph, pose2SLAM::Values> Optimizer;
|
||||||
|
|
||||||
NonlinearOptimizationParameters::sharedThis params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-15, 1e-15);
|
NonlinearOptimizationParameters::shared_ptr params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-15, 1e-15);
|
||||||
Optimizer optimizer0(fg, initial, ordering, params);
|
Optimizer optimizer0(fg, initial, ordering, params);
|
||||||
Optimizer optimizer = optimizer0.levenbergMarquardt();
|
Optimizer optimizer = optimizer0.levenbergMarquardt();
|
||||||
|
|
||||||
|
@ -200,7 +200,7 @@ TEST(Pose2Graph, optimizeThreePoses) {
|
||||||
*ordering += "x0","x1","x2";
|
*ordering += "x0","x1","x2";
|
||||||
|
|
||||||
// optimize
|
// optimize
|
||||||
NonlinearOptimizationParameters::sharedThis params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-15, 1e-15);
|
NonlinearOptimizationParameters::shared_ptr params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-15, 1e-15);
|
||||||
pose2SLAM::Optimizer optimizer0(fg, initial, ordering, params);
|
pose2SLAM::Optimizer optimizer0(fg, initial, ordering, params);
|
||||||
pose2SLAM::Optimizer optimizer = optimizer0.levenbergMarquardt();
|
pose2SLAM::Optimizer optimizer = optimizer0.levenbergMarquardt();
|
||||||
|
|
||||||
|
@ -243,7 +243,7 @@ TEST_UNSAFE(Pose2SLAM, optimizeCircle) {
|
||||||
*ordering += "x0","x1","x2","x3","x4","x5";
|
*ordering += "x0","x1","x2","x3","x4","x5";
|
||||||
|
|
||||||
// optimize
|
// optimize
|
||||||
NonlinearOptimizationParameters::sharedThis params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-15, 1e-15);
|
NonlinearOptimizationParameters::shared_ptr params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-15, 1e-15);
|
||||||
pose2SLAM::Optimizer optimizer0(fg, initial, ordering, params);
|
pose2SLAM::Optimizer optimizer0(fg, initial, ordering, params);
|
||||||
pose2SLAM::Optimizer optimizer = optimizer0.levenbergMarquardt();
|
pose2SLAM::Optimizer optimizer = optimizer0.levenbergMarquardt();
|
||||||
|
|
||||||
|
|
|
@ -76,7 +76,7 @@ TEST(Pose3Graph, optimizeCircle) {
|
||||||
// Choose an ordering and optimize
|
// Choose an ordering and optimize
|
||||||
shared_ptr<Ordering> ordering(new Ordering);
|
shared_ptr<Ordering> ordering(new Ordering);
|
||||||
*ordering += "x0","x1","x2","x3","x4","x5";
|
*ordering += "x0","x1","x2","x3","x4","x5";
|
||||||
NonlinearOptimizationParameters::sharedThis params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-15, 1e-15);
|
NonlinearOptimizationParameters::shared_ptr params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-15, 1e-15);
|
||||||
pose3SLAM::Optimizer optimizer0(fg, initial, ordering, params);
|
pose3SLAM::Optimizer optimizer0(fg, initial, ordering, params);
|
||||||
pose3SLAM::Optimizer optimizer = optimizer0.levenbergMarquardt();
|
pose3SLAM::Optimizer optimizer = optimizer0.levenbergMarquardt();
|
||||||
|
|
||||||
|
|
|
@ -201,7 +201,7 @@ TEST ( NonlinearEquality, allow_error_optimize ) {
|
||||||
// optimize
|
// optimize
|
||||||
boost::shared_ptr<Ordering> ord(new Ordering());
|
boost::shared_ptr<Ordering> ord(new Ordering());
|
||||||
ord->push_back(key1);
|
ord->push_back(key1);
|
||||||
NonlinearOptimizationParameters::sharedThis params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-5, 1e-5);
|
NonlinearOptimizationParameters::shared_ptr params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-5, 1e-5);
|
||||||
PoseOptimizer optimizer(graph, init, ord, params);
|
PoseOptimizer optimizer(graph, init, ord, params);
|
||||||
PoseOptimizer result = optimizer.levenbergMarquardt();
|
PoseOptimizer result = optimizer.levenbergMarquardt();
|
||||||
|
|
||||||
|
@ -237,7 +237,7 @@ TEST ( NonlinearEquality, allow_error_optimize_with_factors ) {
|
||||||
// optimize
|
// optimize
|
||||||
boost::shared_ptr<Ordering> ord(new Ordering());
|
boost::shared_ptr<Ordering> ord(new Ordering());
|
||||||
ord->push_back(key1);
|
ord->push_back(key1);
|
||||||
NonlinearOptimizationParameters::sharedThis params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-5, 1e-5);
|
NonlinearOptimizationParameters::shared_ptr params = NonlinearOptimizationParameters::newDrecreaseThresholds(1e-5, 1e-5);
|
||||||
PoseOptimizer optimizer(graph, init, ord, params);
|
PoseOptimizer optimizer(graph, init, ord, params);
|
||||||
PoseOptimizer result = optimizer.levenbergMarquardt();
|
PoseOptimizer result = optimizer.levenbergMarquardt();
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue