OpenCV  3.4.18
Open Source Computer Vision
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
cv::ximgproc::EdgeDrawing Class Referenceabstract

Class implementing the ED (EdgeDrawing) [213], EDLines [4], EDPF [5] and EDCircles [6] algorithms. More...

#include <opencv2/ximgproc/edge_drawing.hpp>

Inheritance diagram for cv::ximgproc::EdgeDrawing:
cv::Algorithm

Classes

struct  Params
 

Public Types

enum  GradientOperator {
  PREWITT = 0,
  SOBEL = 1,
  SCHARR = 2,
  LSD = 3
}
 

Public Member Functions

virtual ~EdgeDrawing ()
 
virtual void detectEdges (InputArray src)=0
 Detects edges in a grayscale image and prepares them to detect lines and ellipses. More...
 
virtual void detectEllipses (OutputArray ellipses)=0
 Detects circles and ellipses. More...
 
virtual void detectLines (OutputArray lines)=0
 Detects lines. More...
 
virtual void getEdgeImage (OutputArray dst)=0
 returns Edge Image prepared by detectEdges() function. More...
 
virtual void getGradientImage (OutputArray dst)=0
 returns Gradient Image prepared by detectEdges() function. More...
 
virtual std::vector< std::vector< Point > > getSegments ()=0
 Returns std::vector<std::vector<Point>> of detected edge segments, see detectEdges() More...
 
void setParams (const EdgeDrawing::Params &parameters)
 sets parameters. More...
 
- Public Member Functions inherited from cv::Algorithm
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 Clears the algorithm state. More...
 
virtual bool empty () const
 Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read. More...
 
virtual String getDefaultName () const
 
virtual void read (const FileNode &fn)
 Reads algorithm parameters from a file storage. More...
 
virtual void save (const String &filename) const
 
virtual void write (FileStorage &fs) const
 Stores algorithm parameters in a file storage. More...
 
void write (const Ptr< FileStorage > &fs, const String &name=String()) const
 simplified API for language bindings This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 

Public Attributes

Params params
 

Additional Inherited Members

- Static Public Member Functions inherited from cv::Algorithm
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...
 
template<typename _Tp >
static Ptr< _Tp > read (const FileNode &fn)
 Reads algorithm from the file node. More...
 
- Protected Member Functions inherited from cv::Algorithm
void writeFormat (FileStorage &fs) const
 

Detailed Description

Class implementing the ED (EdgeDrawing) [213], EDLines [4], EDPF [5] and EDCircles [6] algorithms.

Member Enumeration Documentation

◆ GradientOperator

Enumerator
PREWITT 
SOBEL 
SCHARR 
LSD 

Constructor & Destructor Documentation

◆ ~EdgeDrawing()

virtual cv::ximgproc::EdgeDrawing::~EdgeDrawing ( )
inlinevirtual

Member Function Documentation

◆ detectEdges()

virtual void cv::ximgproc::EdgeDrawing::detectEdges ( InputArray  src)
pure virtual
Python:
cv.ximgproc.EdgeDrawing.detectEdges(src) -> None

Detects edges in a grayscale image and prepares them to detect lines and ellipses.

Parameters
src8-bit, single-channel, grayscale input image.
Examples:
fld_lines.cpp.

◆ detectEllipses()

virtual void cv::ximgproc::EdgeDrawing::detectEllipses ( OutputArray  ellipses)
pure virtual
Python:
cv.ximgproc.EdgeDrawing.detectEllipses([, ellipses]) -> ellipses

Detects circles and ellipses.

Parameters
ellipsesoutput Vec<6d> contains center point and perimeter for circles, center point, axes and angle for ellipses.
Note
you should call detectEdges() before calling this function.
Examples:
fld_lines.cpp.

◆ detectLines()

virtual void cv::ximgproc::EdgeDrawing::detectLines ( OutputArray  lines)
pure virtual
Python:
cv.ximgproc.EdgeDrawing.detectLines([, lines]) -> lines

Detects lines.

Parameters
linesoutput Vec<4f> contains the start point and the end point of detected lines.
Note
you should call detectEdges() before calling this function.
Examples:
fld_lines.cpp.

◆ getEdgeImage()

virtual void cv::ximgproc::EdgeDrawing::getEdgeImage ( OutputArray  dst)
pure virtual
Python:
cv.ximgproc.EdgeDrawing.getEdgeImage([, dst]) -> dst

returns Edge Image prepared by detectEdges() function.

Parameters
dstreturns 8-bit, single-channel output image.

◆ getGradientImage()

virtual void cv::ximgproc::EdgeDrawing::getGradientImage ( OutputArray  dst)
pure virtual
Python:
cv.ximgproc.EdgeDrawing.getGradientImage([, dst]) -> dst

returns Gradient Image prepared by detectEdges() function.

Parameters
dstreturns 16-bit, single-channel output image.

◆ getSegments()

virtual std::vector<std::vector<Point> > cv::ximgproc::EdgeDrawing::getSegments ( )
pure virtual
Python:
cv.ximgproc.EdgeDrawing.getSegments() -> retval

Returns std::vector<std::vector<Point>> of detected edge segments, see detectEdges()

Examples:
fld_lines.cpp.

◆ setParams()

void cv::ximgproc::EdgeDrawing::setParams ( const EdgeDrawing::Params parameters)
Python:
cv.ximgproc.EdgeDrawing.setParams(parameters) -> None

sets parameters.

this function is meant to be used for parameter setting in other languages than c++ like python.

Parameters
parameters

Member Data Documentation

◆ params

Params cv::ximgproc::EdgeDrawing::params
Examples:
fld_lines.cpp.

The documentation for this class was generated from the following file: