直线检测算法 LSD 的相关介绍及其在 OpenCV 和 MATLAB 中的可视化
2014-09-25 15:32
2346 查看
所谓 LSD ,即 Line Segment Detector ,它是一种用于快速检测图像中直线段的图像处理方法,由 Rafael Grompone von Gioi 等人于 2012 年发表于论文《LSD:a
Line Segment Detector》,由于 CSDN 网友 polly_yang 已对该算法进行过 详细介绍 ,所以我这里不再对算法的理论和具体步骤进行介绍,而着重于如何通过 OpenCV 和 MTLAB 对该算法的实际效果进行可视化表达。
LSD 算法的结果中,一条直线包含了 7 个信息, 分别为 x1, y1, x2, y2, width, p, -log_nfa, 用前四个就可以得到图像方程。因此,我利用 OpenCV 和 MATLAB 对该算法所得到的结果进行了封装,使得可以直接可视化地显示其实际效果。封装后的代码可以在 这里
下载,编译过程可以参考其中的 README.md 文件。
代码中包括了测试的实例,对该实例在 OpenCV 和 MATLAB 中的可视化效果分别如下图所示。对于检测出的直线显示于新图像还是显示于原图像可通过自行修改示例代码进行调整。
1. 测试原图
2. OpenCV 可视化效果图
3. MATLAB 可视化效果图
使用过程中如果遇到问题,可直接在评论中回复或者发送邮件至 tanggefu@gmail.com 。
Line Segment Detector》,由于 CSDN 网友 polly_yang 已对该算法进行过 详细介绍 ,所以我这里不再对算法的理论和具体步骤进行介绍,而着重于如何通过 OpenCV 和 MTLAB 对该算法的实际效果进行可视化表达。
LSD 算法的结果中,一条直线包含了 7 个信息, 分别为 x1, y1, x2, y2, width, p, -log_nfa, 用前四个就可以得到图像方程。因此,我利用 OpenCV 和 MATLAB 对该算法所得到的结果进行了封装,使得可以直接可视化地显示其实际效果。封装后的代码可以在 这里
下载,编译过程可以参考其中的 README.md 文件。
代码中包括了测试的实例,对该实例在 OpenCV 和 MATLAB 中的可视化效果分别如下图所示。对于检测出的直线显示于新图像还是显示于原图像可通过自行修改示例代码进行调整。
1. 测试原图
2. OpenCV 可视化效果图
3. MATLAB 可视化效果图
使用过程中如果遇到问题,可直接在评论中回复或者发送邮件至 tanggefu@gmail.com 。
相关文章推荐
- Hough变换 直线检测原理及其Matlab实现
- otsu自适应阈值分割的算法描述和opencv实现,及其在肤色检测中的应用
- OpenCV: Canny边缘检测算法原理及其VC实现详解(转载)
- 名片、身份证、银行卡定位矫正算法:基于LSD直线检测,角点确定,透视变换
- otsu自适应阈值分割的算法描述和opencv实现,及其在肤色检测中的应用
- LSD快速直线检测的原理概要及OpenCV代码实现(CV类LineSegmentDetector)
- otsu自适应阈值分割的算法描述和opencv实现,及其在肤色检测中的应用
- OpenCV: Canny边缘检测算法原理及其VC实现详解
- LSD:一种直线检测算法简介
- otsu自适应阈值分割的算法描述和opencv实现,及其在肤色检测中的应用
- LSD:一种直线检测算法
- Qt基于opencv的人脸检测及相关算法测试工具
- otsu自适应阈值分割的算法描述和opencv实现,及其在肤色检测中的应用[转]
- OpenCV: Canny边缘检测算法原理及其VC实现详解
- LSD:一种直线检测算法简介
- otsu自适应阈值分割的算法描述和opencv实现,及其在肤色检测中的应用
- Opencv学习——LSD直线检测
- OpenCV自学笔记29. lsd直线检测算法(未完)
- OpenCV: Canny边缘检测算法原理及其VC实现详解
- LSD 直线检测分割算法