前言
最近想试着在ORB_SLAM2添加线特征,所以先学习了一下如何使用OpenCV提取LSD线特征。
一、OpenCV提取LSD(简单)
OpenCV在imgproc模块实现了一个LineSegmentDetector,实现原理就是常用的LSD算法,使用方法也很简单。
#include <iostream>
#include <string>
#include "opencv2/imgproc.hpp"
#include "opencv2/highgui.hpp"
int main() {
// 换成自己的图像路径
std::string image_1_dir = "../data/image1.png";
// 以灰度图读取图像
cv::Mat image_1 = cv::imread(image_1_dir, cv::IMREAD_GRAYSCALE);
// 先看看图像有没有读取到
if(image_1.empty()) {
std::cout << "Unable to load " << image_1_dir << std::endl;
return 1;
}
// 显示原图像
cv::imshow("Source Image 1&#