视觉SLAM十四讲 第九讲前端实践 运行报错核心已转储
程序员文章站
2024-03-24 23:48:22
...
在学习十四讲第九讲前端实践中,project0.2版本,编译可以通过,运行时发现一直报错 段错误(核心已转储)。
debug后发现问题出在初始化阶段,在函数
void VisualOdometry::extractKeyPoints()
{
orb_->detect ( curr_->color_, keypoints_curr_ );
}
中,keypoints_curr_的长度始终是0,无法提取到有效的关键点,输入的curr_->color_正常,于是将这段提取特征点的代码更换成第七章的代码
void VisualOdometry::extractKeyPoints()
{
// orb_->detect(curr_->color_, keypoints_curr_);
cv::Ptr<cv::FeatureDetector> detector = cv::ORB::create();
detector->detect(curr_->color_, keypoints_curr_);
}
再次编译运行,发现结果正常了。
但是按照slambook的代码编译后运行是没有这个错误的,所以问题的具体原因还要再仔细分析。