Line segment detector class. More...
#include <imgproc.hpp>
Public Member Functions | |
virtual CV_WRAP void | detect (InputArray image, OutputArray lines, OutputArray width=noArray(), OutputArray prec=noArray(), OutputArray nfa=noArray())=0 |
Finds lines in the input image. More... | |
virtual CV_WRAP void | drawSegments (InputOutputArray image, InputArray lines)=0 |
Draws the line segments on a given image. More... | |
virtual CV_WRAP int | compareSegments (const Size &size, InputArray lines1, InputArray lines2, InputOutputArray image=noArray())=0 |
Draws two groups of lines in blue and red, counting the non overlapping (mismatching) pixels. More... | |
virtual | ~LineSegmentDetector () |
Public Member Functions inherited from cv::Algorithm | |
Algorithm () | |
virtual | ~Algorithm () |
virtual CV_WRAP void | clear () |
Clears the algorithm state. More... | |
virtual CV_WRAP void | write (FileStorage &fs) const |
Stores algorithm parameters in a file storage. More... | |
CV_WRAP void | write (FileStorage &fs, const String &name) const |
void | write (const Ptr< FileStorage > &fs, const String &name=String()) const |
virtual CV_WRAP void | read (const FileNode &fn) |
Reads algorithm parameters from a file storage. More... | |
virtual CV_WRAP bool | empty () const |
Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read. More... | |
virtual CV_WRAP void | save (const String &filename) const |
virtual CV_WRAP String | getDefaultName () const |
Additional Inherited Members | |
Static Public Member Functions inherited from cv::Algorithm | |
template<typename _Tp > | |
static Ptr< _Tp > | read (const FileNode &fn) |
Reads algorithm from the file node. More... | |
template<typename _Tp > | |
static Ptr< _Tp > | load (const String &filename, const String &objname=String()) |
Loads algorithm from the file. More... | |
template<typename _Tp > | |
static Ptr< _Tp > | loadFromString (const String &strModel, const String &objname=String()) |
Loads algorithm from a String. More... | |
Protected Member Functions inherited from cv::Algorithm | |
void | writeFormat (FileStorage &fs) const |
Line segment detector class.
following the algorithm described at [Rafael12] .
|
inlinevirtual |
|
pure virtual |
Draws two groups of lines in blue and red, counting the non overlapping (mismatching) pixels.
size | The size of the image, where lines1 and lines2 were found. |
lines1 | The first group of lines that needs to be drawn. It is visualized in blue color. |
lines2 | The second group of lines. They visualized in red color. |
image | Optional image, where the lines will be drawn. The image should be color(3-channel) in order for lines1 and lines2 to be drawn in the above mentioned colors. |
|
pure virtual |
Finds lines in the input image.
This is the output of the default parameters of the algorithm on the above shown image.
image | A grayscale (CV_8UC1) input image. If only a roi needs to be selected, use: lsd_ptr-\>detect(image(roi), lines, ...); lines += Scalar(roi.x, roi.y, roi.x, roi.y); |
lines | A vector of Vec4f elements specifying the beginning and ending point of a line. Where Vec4f is (x1, y1, x2, y2), point 1 is the start, point 2 - end. Returned lines are strictly oriented depending on the gradient. |
width | Vector of widths of the regions, where the lines are found. E.g. Width of line. |
prec | Vector of precisions with which the lines are found. |
nfa | Vector containing number of false alarms in the line region, with precision of 10%. The bigger the value, logarithmically better the detection.
|
|
pure virtual |
Draws the line segments on a given image.
image | The image, where the lines will be drawn. Should be bigger or equal to the image, where the lines were found. |
lines | A vector of the lines that needed to be drawn. |