Hello@Michael. I am testing SSA on my own mapping system. I can successfully build ssa on Ubuntu18.04, generate vertex and edge smoothly. When come to ssa.graph().optimize(), it broke down with "segmentation fault". GDB shows below. I found out that function linearizeOplus() in edge_se3_xyzcov.h is not implemented. What is wrong with all this? Hope you can see this issue. Thank you.
// -----------------------------------------GDB bt ---------------------------------------------------------
(gdb) bt
#0 0x0000555555716229 in void std::vector<Eigen::Transform<double, 3, 1, 0>, Eigen::aligned_allocator<Eigen::Transform<double, 3, 1, 0> > >::_M_realloc_insert<Eigen::Transform<double, 3, 1, 0> const&>(__gnu_cxx::__normal_iterator<Eigen::Transform<double, 3, 1, 0>, std::vector<Eigen::Transform<double, 3, 1, 0>, Eigen::aligned_allocator<Eigen::Transform<double, 3, 1, 0> > > >, Eigen::Transform<double, 3, 1, 0> const&) ()
#1 0x00007ffff2d8f088 in g2o::SparseOptimizer::push(std::vector<g2o::OptimizableGraph::Vertex, std::allocatorg2o::OptimizableGraph::Vertex* >&) ()
from /usr/local/lib/libg2o_core.so
#2 0x00007ffff2d983a3 in g2o::OptimizationAlgorithmLevenberg::solve(int, bool) () from /usr/local/lib/libg2o_core.so
#3 0x00007ffff2d9014d in g2o::SparseOptimizer::optimize(int, bool) () from /usr/local/lib/libg2o_core.so
#4 0x0000555555730a5f in ssa::SparseSurfaceAdjustmentT<g2o::EdgeSE3, ssa::EdgeSE3PointXYZCov, ssa::EdgePointXYZCovPointXYZCov>::optimize(int) ()
#5 0x00005555556d3676 in ssaSmooth(std::vector<boost::shared_ptr<pcl::PointCloudpcl::PointXYZI >, std::allocator<boost::shared_ptr<pcl::PointCloudpcl::PointXYZI > > >, std::vector<poseGraph::StampedTransform, std::allocatorposeGraph::StampedTransform >) ()
#6 0x00005555556c3965 in main ()
// -----------------------------------------GDB bt ---------------------------------------------------------
Hello@Michael. I am testing SSA on my own mapping system. I can successfully build ssa on Ubuntu18.04, generate vertex and edge smoothly. When come to ssa.graph().optimize(), it broke down with "segmentation fault". GDB shows below. I found out that function linearizeOplus() in edge_se3_xyzcov.h is not implemented. What is wrong with all this? Hope you can see this issue. Thank you.
// -----------------------------------------GDB bt ---------------------------------------------------------
(gdb) bt
#0 0x0000555555716229 in void std::vector<Eigen::Transform<double, 3, 1, 0>, Eigen::aligned_allocator<Eigen::Transform<double, 3, 1, 0> > >::_M_realloc_insert<Eigen::Transform<double, 3, 1, 0> const&>(__gnu_cxx::__normal_iterator<Eigen::Transform<double, 3, 1, 0>, std::vector<Eigen::Transform<double, 3, 1, 0>, Eigen::aligned_allocator<Eigen::Transform<double, 3, 1, 0> > > >, Eigen::Transform<double, 3, 1, 0> const&) ()
#1 0x00007ffff2d8f088 in g2o::SparseOptimizer::push(std::vector<g2o::OptimizableGraph::Vertex, std::allocatorg2o::OptimizableGraph::Vertex* >&) ()
from /usr/local/lib/libg2o_core.so
#2 0x00007ffff2d983a3 in g2o::OptimizationAlgorithmLevenberg::solve(int, bool) () from /usr/local/lib/libg2o_core.so
#3 0x00007ffff2d9014d in g2o::SparseOptimizer::optimize(int, bool) () from /usr/local/lib/libg2o_core.so
#4 0x0000555555730a5f in ssa::SparseSurfaceAdjustmentT<g2o::EdgeSE3, ssa::EdgeSE3PointXYZCov, ssa::EdgePointXYZCovPointXYZCov>::optimize(int) ()
#5 0x00005555556d3676 in ssaSmooth(std::vector<boost::shared_ptr<pcl::PointCloudpcl::PointXYZI >, std::allocator<boost::shared_ptr<pcl::PointCloudpcl::PointXYZI > > >, std::vector<poseGraph::StampedTransform, std::allocatorposeGraph::StampedTransform >) ()
#6 0x00005555556c3965 in main ()
// -----------------------------------------GDB bt ---------------------------------------------------------