OpenCV  3.4.20-dev
Open Source Computer Vision
Namespaces | Classes | Typedefs | Enumerations | Functions
cv::ximgproc Namespace Reference

Namespaces

 segmentation
 

Classes

class  AdaptiveManifoldFilter
 Interface for Adaptive Manifold Filter realizations. More...
 
struct  Box
 
class  ContourFitting
 Class for ContourFitting algorithms. ContourFitting match two contours \( z_a \) and \( z_b \) minimizing distance

\[ d(z_a,z_b)=\sum (a_n - s b_n e^{j(n \alpha +\phi )})^2 \]

where \( a_n \) and \( b_n \) are Fourier descriptors of \( z_a \) and \( z_b \) and s is a scaling factor and \( \phi \) is angle rotation and \( \alpha \) is starting point factor adjustement. More...

  class  DisparityFilter  Main interface for all disparity map filters. More...
  class  DisparityWLSFilter  Disparity map filter based on Weighted Least Squares filter (in form of Fast Global Smoother that is a lot faster than traditional Weighted Least Squares filter implementations) and optional use of left-right-consistency-based confidence to refine the results in half-occlusions and uniform areas. More...
  class  DTFilter  Interface for realizations of Domain Transform filter. More...
  class  EdgeAwareInterpolator  Sparse match interpolation algorithm based on modified locally-weighted affine estimator from [182] and Fast Global Smoother as post-processing filter. More...
  class  EdgeBoxes  Class implementing EdgeBoxes algorithm from [258] : More...
  class  EdgeDrawing  Class implementing the ED (EdgeDrawing) [214], EDLines [4], EDPF [5] and EDCircles [6] algorithms. More...
  class  FastBilateralSolverFilter  Interface for implementations of Fast Bilateral Solver. More...
  class  FastGlobalSmootherFilter  Interface for implementations of Fast Global Smoother filter. More...
  class  FastLineDetector  Class implementing the FLD (Fast Line Detector) algorithm described in [126] . More...
  class  GuidedFilter  Interface for realizations of Guided Filter. More...
  class  RFFeatureGetter   class  RidgeDetectionFilter  Applies Ridge Detection Filter to an input image. Implements Ridge detection similar to the one in Mathematica using the eigen values from the Hessian Matrix of the input image using Sobel Derivatives. Additional refinement can be done using Skeletonization and Binarization. Adapted from [64] and [151]. More...
  class  SparseMatchInterpolator  Main interface for all filters, that take sparse matches as an input and produce a dense per-pixel matching (optical flow) as an output. More...
  class  StructuredEdgeDetection  Class implementing edge detection algorithm from [57] : More...
  class  SuperpixelLSC  Class implementing the LSC (Linear Spectral Clustering) superpixels algorithm described in [130]. More...
  class  SuperpixelSEEDS  Class implementing the SEEDS (Superpixels Extracted via Energy-Driven Sampling) superpixels algorithm described in [223] . More...
  class  SuperpixelSLIC  Class implementing the SLIC (Simple Linear Iterative Clustering) superpixels algorithm described in [1]. More...
 

Typedefs

typedef std::vector< BoxBoxes
 
typedef enum SLIC SLICType
 

Enumerations

enum  AngleRangeOption {
  ARO_0_45 = 0,
  ARO_45_90 = 1,
  ARO_90_135 = 2,
  ARO_315_0 = 3,
  ARO_315_45 = 4,
  ARO_45_135 = 5,
  ARO_315_135 = 6,
  ARO_CTR_HOR = 7,
  ARO_CTR_VER = 8
}
 Specifies the part of Hough space to calculate. More...
 
enum  EdgeAwareFiltersList {
  DTF_NC,
  DTF_IC,
  DTF_RF,
  GUIDED_FILTER,
  AM_FILTER
}
 
enum  HoughDeskewOption {
  HDO_RAW = 0,
  HDO_DESKEW = 1
}
 Specifies to do or not to do skewing of Hough transform image. More...
 
enum  HoughOp {
  FHT_MIN = 0,
  FHT_MAX = 1,
  FHT_ADD = 2,
  FHT_AVE = 3
}
 Specifies binary operations. More...
 
enum  LocalBinarizationMethods {
  BINARIZATION_NIBLACK = 0,
  BINARIZATION_SAUVOLA = 1,
  BINARIZATION_WOLF = 2,
  BINARIZATION_NICK = 3
}
 Specifies the binarization method to use in cv::ximgproc::niBlackThreshold. More...
 
enum  RulesOption {
  RO_STRICT = 0x00,
  RO_IGNORE_BORDERS = 0x01
}
 Specifies the degree of rules validation. More...
 
enum  SLIC {
  SLIC = 100,
  SLICO = 101,
  MSLIC = 102
}
 
enum  ThinningTypes {
  THINNING_ZHANGSUEN = 0,
  THINNING_GUOHALL = 1
}
 
enum  WMFWeightType {
  WMF_EXP = 1,
  WMF_IV1 = 1 << 1,
  WMF_IV2 = 1 << 2,
  WMF_COS = 1 << 3,
  WMF_JAC = 1 << 4,
  WMF_OFF = 1 << 5
}
 Specifies weight types of weighted median filter. More...
 

Functions

void amFilter (InputArray joint, InputArray src, OutputArray dst, double sigma_s, double sigma_r, bool adjust_outliers=false)
 Simple one-line Adaptive Manifold Filter call. More...
 
void anisotropicDiffusion (InputArray src, OutputArray dst, float alpha, float K, int niters)
 Performs anisotropic diffusion on an image. More...
 
void bilateralTextureFilter (InputArray src, OutputArray dst, int fr=3, int numIter=1, double sigmaAlpha=-1., double sigmaAvg=-1.)
 Applies the bilateral texture filter to an image. It performs structure-preserving texture filter. For more details about this filter see [47]. More...
 
void BrightEdges (Mat &_original, Mat &_edgeview, int contrast=1, int shortrange=3, int longrange=9)
 
double computeBadPixelPercent (InputArray GT, InputArray src, Rect ROI, int thresh=24)
 Function for computing the percent of "bad" pixels in the disparity map (pixels where error is higher than a specified threshold) More...
 
double computeMSE (InputArray GT, InputArray src, Rect ROI)
 Function for computing mean square error for disparity maps. More...
 
void contourSampling (InputArray src, OutputArray out, int nbElt)
 Contour sampling . More...
 
void covarianceEstimation (InputArray src, OutputArray dst, int windowRows, int windowCols)
 Computes the estimated covariance matrix of an image using the sliding window forumlation. More...
 
Ptr< AdaptiveManifoldFiltercreateAMFilter (double sigma_s, double sigma_r, bool adjust_outliers=false)
 Factory method, create instance of AdaptiveManifoldFilter and produce some initialization routines. More...
 
Ptr< ContourFittingcreateContourFitting (int ctr=1024, int fd=16)
 create ContourFitting algorithm object More...
 
Ptr< DisparityWLSFiltercreateDisparityWLSFilter (Ptr< StereoMatcher > matcher_left)
 Convenience factory method that creates an instance of DisparityWLSFilter and sets up all the relevant filter parameters automatically based on the matcher instance. Currently supports only StereoBM and StereoSGBM. More...
 
Ptr< DisparityWLSFiltercreateDisparityWLSFilterGeneric (bool use_confidence)
 More generic factory method, create instance of DisparityWLSFilter and execute basic initialization routines. When using this method you will need to set-up the ROI, matchers and other parameters by yourself. More...
 
Ptr< DTFiltercreateDTFilter (InputArray guide, double sigmaSpatial, double sigmaColor, int mode=DTF_NC, int numIters=3)
 Factory method, create instance of DTFilter and produce initialization routines. More...
 
Ptr< EdgeAwareInterpolatorcreateEdgeAwareInterpolator ()
 Factory method that creates an instance of the EdgeAwareInterpolator. More...
 
Ptr< EdgeBoxescreateEdgeBoxes (float alpha=0.65f, float beta=0.75f, float eta=1, float minScore=0.01f, int maxBoxes=10000, float edgeMinMag=0.1f, float edgeMergeThr=0.5f, float clusterMinMag=0.5f, float maxAspectRatio=3, float minBoxArea=1000, float gamma=2, float kappa=1.5f)
 Creates a Edgeboxes. More...
 
Ptr< EdgeDrawingcreateEdgeDrawing ()
 Creates a smart pointer to a EdgeDrawing object and initializes it. More...
 
Ptr< FastBilateralSolverFiltercreateFastBilateralSolverFilter (InputArray guide, double sigma_spatial, double sigma_luma, double sigma_chroma, double lambda=128.0, int num_iter=25, double max_tol=1e-5)
 Factory method, create instance of FastBilateralSolverFilter and execute the initialization routines. More...
 
Ptr< FastGlobalSmootherFiltercreateFastGlobalSmootherFilter (InputArray guide, double lambda, double sigma_color, double lambda_attenuation=0.25, int num_iter=3)
 Factory method, create instance of FastGlobalSmootherFilter and execute the initialization routines. More...
 
Ptr< FastLineDetectorcreateFastLineDetector (int length_threshold=10, float distance_threshold=1.414213562f, double canny_th1=50.0, double canny_th2=50.0, int canny_aperture_size=3, bool do_merge=false)
 Creates a smart pointer to a FastLineDetector object and initializes it. More...
 
Ptr< GuidedFiltercreateGuidedFilter (InputArray guide, int radius, double eps)
 Factory method, create instance of GuidedFilter and produce initialization routines. More...
 
Ptr< RFFeatureGettercreateRFFeatureGetter ()
 
Ptr< StereoMatchercreateRightMatcher (Ptr< StereoMatcher > matcher_left)
 Convenience method to set up the matcher for computing the right-view disparity map that is required in case of filtering with confidence. More...
 
Ptr< StructuredEdgeDetectioncreateStructuredEdgeDetection (const String &model, Ptr< const RFFeatureGetter > howToGetFeatures=Ptr< RFFeatureGetter >())
 
Ptr< SuperpixelLSCcreateSuperpixelLSC (InputArray image, int region_size=10, float ratio=0.075f)
 Class implementing the LSC (Linear Spectral Clustering) superpixels. More...
 
Ptr< SuperpixelSEEDScreateSuperpixelSEEDS (int image_width, int image_height, int image_channels, int num_superpixels, int num_levels, int prior=2, int histogram_bins=5, bool double_step=false)
 Initializes a SuperpixelSEEDS object. More...
 
Ptr< SuperpixelSLICcreateSuperpixelSLIC (InputArray image, int algorithm=SLICO, int region_size=10, float ruler=10.0f)
 Initialize a SuperpixelSLIC object. More...
 
void dtFilter (InputArray guide, InputArray src, OutputArray dst, double sigmaSpatial, double sigmaColor, int mode=DTF_NC, int numIters=3)
 Simple one-line Domain Transform filter call. If you have multiple images to filter with the same guided image then use DTFilter interface to avoid extra computations on initialization stage. More...
 
void fastBilateralSolverFilter (InputArray guide, InputArray src, InputArray confidence, OutputArray dst, double sigma_spatial=8, double sigma_luma=8, double sigma_chroma=8, double lambda=128.0, int num_iter=25, double max_tol=1e-5)
 Simple one-line Fast Bilateral Solver filter call. If you have multiple images to filter with the same guide then use FastBilateralSolverFilter interface to avoid extra computations. More...
 
void fastGlobalSmootherFilter (InputArray guide, InputArray src, OutputArray dst, double lambda, double sigma_color, double lambda_attenuation=0.25, int num_iter=3)
 Simple one-line Fast Global Smoother filter call. If you have multiple images to filter with the same guide then use FastGlobalSmootherFilter interface to avoid extra computations. More...
 
void FastHoughTransform (InputArray src, OutputArray dst, int dstMatDepth, int angleRange=ARO_315_135, int op=FHT_ADD, int makeSkew=HDO_DESKEW)
 Calculates 2D Fast Hough transform of an image. More...
 
void fourierDescriptor (InputArray src, OutputArray dst, int nbElt=-1, int nbFD=-1)
 Fourier descriptors for planed closed curves. More...
 
void getDisparityVis (InputArray src, OutputArray dst, double scale=1.0)
 Function for creating a disparity map visualization (clamped CV_8U image) More...
 
void GradientDericheX (InputArray op, OutputArray dst, double alpha, double omega)
 Applies X Deriche filter to an image. More...
 
void GradientDericheY (InputArray op, OutputArray dst, double alpha, double omega)
 Applies Y Deriche filter to an image. More...
 
void GradientPaillouX (InputArray op, OutputArray _dst, double alpha, double omega)
 
void GradientPaillouY (InputArray op, OutputArray _dst, double alpha, double omega)
 Applies Paillou filter to an image. More...
 
void guidedFilter (InputArray guide, InputArray src, OutputArray dst, int radius, double eps, int dDepth=-1)
 Simple one-line Guided Filter call. More...
 
Vec4i HoughPoint2Line (const Point &houghPoint, InputArray srcImgInfo, int angleRange=ARO_315_135, int makeSkew=HDO_DESKEW, int rules=RO_IGNORE_BORDERS)
 Calculates coordinates of line segment corresponded by point in Hough space. More...
 
void jointBilateralFilter (InputArray joint, InputArray src, OutputArray dst, int d, double sigmaColor, double sigmaSpace, int borderType=BORDER_DEFAULT)
 Applies the joint bilateral filter to an image. More...
 
void l0Smooth (InputArray src, OutputArray dst, double lambda=0.02, double kappa=2.0)
 Global image smoothing via L0 gradient minimization. More...
 
void niBlackThreshold (InputArray _src, OutputArray _dst, double maxValue, int type, int blockSize, double k, int binarizationMethod=BINARIZATION_NIBLACK)
 Performs thresholding on input images using Niblack's technique or some of the popular variations it inspired. More...
 
Matx23d PeiLinNormalization (InputArray I)
 Calculates an affine transformation that normalize given image using Pei&Lin Normalization. More...
 
void PeiLinNormalization (InputArray I, OutputArray T)
 
int readGT (String src_path, OutputArray dst)
 Function for reading ground truth disparity maps. Supports basic Middlebury and MPI-Sintel formats. Note that the resulting disparity map is scaled by 16. More...
 
void rollingGuidanceFilter (InputArray src, OutputArray dst, int d=-1, double sigmaColor=25, double sigmaSpace=3, int numOfIter=4, int borderType=BORDER_DEFAULT)
 Applies the rolling guidance filter to an image. More...
 
void thinning (InputArray src, OutputArray dst, int thinningType=THINNING_ZHANGSUEN)
 Applies a binary blob thinning operation, to achieve a skeletization of the input image. More...
 
void transformFD (InputArray src, InputArray t, OutputArray dst, bool fdContour=true)
 transform a contour More...
 
void weightedMedianFilter (InputArray joint, InputArray src, OutputArray dst, int r, double sigma=25.5, int weightType=WMF_EXP, InputArray mask=noArray())
 Applies weighted median filter to an image. More...
 

Enumeration Type Documentation

◆ AngleRangeOption

enum cv::ximgproc::AngleRangeOption

Specifies the part of Hough space to calculate.

The enum specifies the part of Hough space to calculate. Each member specifies primarily direction of lines (horizontal or vertical) and the direction of angle changes. Direction of angle changes is from multiples of 90 to odd multiples of 45. The image considered to be written top-down and left-to-right. Angles are started from vertical line and go clockwise. Separate quarters and halves are written in orientation they should be in full Hough space.

Enumerator
ARO_0_45 
Python: cv.ximgproc.ARO_0_45
ARO_45_90 
Python: cv.ximgproc.ARO_45_90
ARO_90_135 
Python: cv.ximgproc.ARO_90_135
ARO_315_0 
Python: cv.ximgproc.ARO_315_0
ARO_315_45 
Python: cv.ximgproc.ARO_315_45
ARO_45_135 
Python: cv.ximgproc.ARO_45_135
ARO_315_135 
Python: cv.ximgproc.ARO_315_135
ARO_CTR_HOR 
Python: cv.ximgproc.ARO_CTR_HOR
ARO_CTR_VER 
Python: cv.ximgproc.ARO_CTR_VER

◆ HoughDeskewOption

enum cv::ximgproc::HoughDeskewOption

Specifies to do or not to do skewing of Hough transform image.

The enum specifies to do or not to do skewing of Hough transform image so it would be no cycling in Hough transform image through borders of image.

Enumerator
HDO_RAW 
Python: cv.ximgproc.HDO_RAW
HDO_DESKEW 
Python: cv.ximgproc.HDO_DESKEW

◆ HoughOp

enum cv::ximgproc::HoughOp

Specifies binary operations.

The enum specifies binary operations, that is such ones which involve two operands. Formally, a binary operation \( f \) on a set \( S \) is a binary relation that maps elements of the Cartesian product \( S \times S \) to \( S \):

\[ f: S \times S \to S \]

Enumerator
FHT_MIN 
Python: cv.ximgproc.FHT_MIN
FHT_MAX 
Python: cv.ximgproc.FHT_MAX
FHT_ADD 
Python: cv.ximgproc.FHT_ADD
FHT_AVE 
Python: cv.ximgproc.FHT_AVE

◆ LocalBinarizationMethods

enum cv::ximgproc::LocalBinarizationMethods

Specifies the binarization method to use in cv::ximgproc::niBlackThreshold.

Enumerator
BINARIZATION_NIBLACK 
Python: cv.ximgproc.BINARIZATION_NIBLACK

Classic Niblack binarization. See [165] .

BINARIZATION_SAUVOLA 
Python: cv.ximgproc.BINARIZATION_SAUVOLA

Sauvola's technique. See [192] .

BINARIZATION_WOLF 
Python: cv.ximgproc.BINARIZATION_WOLF

Wolf's technique. See [239] .

BINARIZATION_NICK 
Python: cv.ximgproc.BINARIZATION_NICK

NICK technique. See [118] .

◆ RulesOption

enum cv::ximgproc::RulesOption

Specifies the degree of rules validation.

The enum specifies the degree of rules validation. This can be used, for example, to choose a proper way of input arguments validation.

Enumerator
RO_STRICT 

Validate each rule in a proper way.

RO_IGNORE_BORDERS 

Skip validations of image borders.

◆ ThinningTypes

enum cv::ximgproc::ThinningTypes
Enumerator
THINNING_ZHANGSUEN 
Python: cv.ximgproc.THINNING_ZHANGSUEN
THINNING_GUOHALL 
Python: cv.ximgproc.THINNING_GUOHALL

◆ WMFWeightType

enum cv::ximgproc::WMFWeightType

Specifies weight types of weighted median filter.

Enumerator
WMF_EXP 
Python: cv.ximgproc.WMF_EXP

\(exp(-|I1-I2|^2/(2*sigma^2))\)

WMF_IV1 
Python: cv.ximgproc.WMF_IV1

\((|I1-I2|+sigma)^-1\)

WMF_IV2 
Python: cv.ximgproc.WMF_IV2

\((|I1-I2|^2+sigma^2)^-1\)

WMF_COS 
Python: cv.ximgproc.WMF_COS

\(dot(I1,I2)/(|I1|*|I2|)\)

WMF_JAC 
Python: cv.ximgproc.WMF_JAC

\((min(r1,r2)+min(g1,g2)+min(b1,b2))/(max(r1,r2)+max(g1,g2)+max(b1,b2))\)

WMF_OFF 
Python: cv.ximgproc.WMF_OFF

unweighted

Function Documentation

◆ BrightEdges()

void cv::ximgproc::BrightEdges ( Mat _original,
Mat _edgeview,
int  contrast = 1,
int  shortrange = 3,
int  longrange = 9 
)

◆ covarianceEstimation()

void cv::ximgproc::covarianceEstimation ( InputArray  src,
OutputArray  dst,
int  windowRows,
int  windowCols 
)
Python:
cv.ximgproc.covarianceEstimation(src, windowRows, windowCols[, dst]) -> dst

Computes the estimated covariance matrix of an image using the sliding window forumlation.

Parameters
srcThe source image. Input image must be of a complex type.
dstThe destination estimated covariance matrix. Output matrix will be size (windowRows*windowCols, windowRows*windowCols).
windowRowsThe number of rows in the window.
windowColsThe number of cols in the window. The window size parameters control the accuracy of the estimation. The sliding window moves over the entire image from the top-left corner to the bottom right corner. Each location of the window represents a sample. If the window is the size of the image, then this gives the exact covariance matrix. For all other cases, the sizes of the window will impact the number of samples and the number of elements in the estimated covariance matrix.

◆ FastHoughTransform()

void cv::ximgproc::FastHoughTransform ( InputArray  src,
OutputArray  dst,
int  dstMatDepth,
int  angleRange = ARO_315_135,
int  op = FHT_ADD,
int  makeSkew = HDO_DESKEW 
)
Python:
cv.ximgproc.FastHoughTransform(src, dstMatDepth[, dst[, angleRange[, op[, makeSkew]]]]) -> dst

Calculates 2D Fast Hough transform of an image.

Parameters
dstThe destination image, result of transformation.
srcThe source (input) image.
dstMatDepthThe depth of destination image
opThe operation to be applied, see cv::HoughOp
angleRangeThe part of Hough space to calculate, see cv::AngleRangeOption
makeSkewSpecifies to do or not to do image skewing, see cv::HoughDeskewOption

The function calculates the fast Hough transform for full, half or quarter range of angles.

◆ HoughPoint2Line()

Vec4i cv::ximgproc::HoughPoint2Line ( const Point houghPoint,
InputArray  srcImgInfo,
int  angleRange = ARO_315_135,
int  makeSkew = HDO_DESKEW,
int  rules = RO_IGNORE_BORDERS 
)
Python:
cv.ximgproc.HoughPoint2Line(houghPoint, srcImgInfo[, angleRange[, makeSkew[, rules]]]) -> retval

Calculates coordinates of line segment corresponded by point in Hough space.

Parameters
houghPointPoint in Hough space.
srcImgInfoThe source (input) image of Hough transform.
angleRangeThe part of Hough space where point is situated, see cv::AngleRangeOption
makeSkewSpecifies to do or not to do image skewing, see cv::HoughDeskewOption
rulesSpecifies strictness of line segment calculating, see cv::RulesOption
Return values
[Vec4i]Coordinates of line segment corresponded by point in Hough space.
Remarks
If rules parameter set to RO_STRICT then returned line cut along the border of source image.
If rules parameter set to RO_WEAK then in case of point, which belongs the incorrect part of Hough image, returned line will not intersect source image.

The function calculates coordinates of line segment corresponded by point in Hough space.

◆ weightedMedianFilter()

void cv::ximgproc::weightedMedianFilter ( InputArray  joint,
InputArray  src,
OutputArray  dst,
int  r,
double  sigma = 25.5,
int  weightType = WMF_EXP,
InputArray  mask = noArray() 
)
Python:
cv.ximgproc.weightedMedianFilter(joint, src, r[, dst[, sigma[, weightType[, mask]]]]) -> dst

Applies weighted median filter to an image.

For more details about this implementation, please see [253]

Parameters
jointJoint 8-bit, 1-channel or 3-channel image.
srcSource 8-bit or floating-point, 1-channel or 3-channel image.
dstDestination image.
rRadius of filtering kernel, should be a positive integer.
sigmaFilter range standard deviation for the joint image.
weightTypeweightType The type of weight definition, see WMFWeightType
maskA 0-1 mask that has the same size with I. This mask is used to ignore the effect of some pixels. If the pixel value on mask is 0, the pixel will be ignored when maintaining the joint-histogram. This is useful for applications like optical flow occlusion handling.
See also
medianBlur, jointBilateralFilter