线段检测器类。 更多…
#include <opencv2/imgproc.hpp>
|
virtual | ~LineSegmentDetector () |
|
virtual int | compareSegments (const Size &size, InputArray lines1, InputArray lines2, InputOutputArray image=noArray())=0 |
| 绘制两组线段,蓝色和红色,计算非重叠(不匹配)像素。
|
|
virtual void | detect (InputArray image, OutputArray lines, OutputArray width=noArray(), OutputArray prec=noArray(), OutputArray nfa=noArray())=0 |
| 在输入图像中查找线段。
|
|
virtual void | drawSegments (InputOutputArray image, InputArray lines)=0 |
| 在给定的图像上绘制线段。
|
|
| Algorithm () |
|
virtual | ~Algorithm () |
|
virtual void | clear () |
| 清除算法状态。
|
|
virtual bool | empty () const |
| 如果 Algorithm 为空(例如,在开始时或读取失败后),则返回 true。
|
|
virtual String | getDefaultName () const |
|
virtual void | read (const FileNode &fn) |
| 从文件存储中读取算法参数。
|
|
virtual void | save (const String &filename) const |
|
void | write (const Ptr< FileStorage > &fs, const String &name=String()) const |
|
virtual void | write (FileStorage &fs) const |
| 将算法参数存储到文件存储中。
|
|
void | write (FileStorage &fs, const String &name) const |
|
线段检测器类。
遵循[290]中描述的算法。
- 注意
- 由于原始代码许可证冲突,OpenCV 3.4.6 到 3.4.15 版本和 4.1.0 到 4.5.3 版本已删除实现。在 计算 NFA 代码以 MIT 许可证发布后,再次恢复。
◆ ~LineSegmentDetector()
virtual cv::LineSegmentDetector::~LineSegmentDetector |
( |
| ) |
|
|
inlinevirtual |
◆ compareSegments()
Python |
---|
| cv.LineSegmentDetector.compareSegments( | size, lines1, lines2[, image] | ) -> | retval, image |
绘制两组线段,蓝色和红色,计算非重叠(不匹配)像素。
- 参数
-
size | 图像的大小,其中找到 lines1 和 lines2。 |
lines1 | 需要绘制的第一组线段。以蓝色显示。 |
lines2 | 第二组线段。以红色显示。 |
image | 可选图像,将在其中绘制线段。为了使 lines1 和 lines2 以上述颜色绘制,图像应为彩色(3 通道)。 |
◆ detect()
Python |
---|
| cv.LineSegmentDetector.detect( | image[, lines[, width[, prec[, nfa]]]] | ) -> | lines, width, prec, nfa |
在输入图像中查找线段。
这是算法在上面显示的图像上使用默认参数的输出。
image
- 参数
-
image | 一个灰度 (CV_8UC1) 输入图像。如果只需要选择一个感兴趣区域 (roi),请使用:lsd_ptr-\>detect(image(roi), lines, ...); lines += Scalar(roi.x, roi.y, roi.x, roi.y); |
lines | 一个 Vec4f 元素向量,指定一条线的起点和终点。其中 Vec4f 为 (x1, y1, x2, y2),点 1 为起点,点 2 为终点。返回的线根据梯度严格定向。 |
width | 找到线的区域的宽度向量。例如,线的宽度。 |
prec | 找到线的精度向量。 |
nfa | 包含线区域中误报数量的向量,精度为 10%。值越大,检测结果越好(对数关系)。
- -1 对应于 10 个平均误报
- 0 对应于 1 个平均误报
- 1 对应于 0.1 个平均误报。只有当对象类型为 LSD_REFINE_ADV 时,才会计算此向量。
|
◆ drawSegments()
Python |
---|
| cv.LineSegmentDetector.drawSegments( | image, lines | ) -> | image |
在给定的图像上绘制线段。
- 参数
-
image | 将绘制线的图像。应大于或等于找到线的图像。 |
lines | 需要绘制的线向量。 |
此类的文档是从以下文件生成的