Table of Contents

Class RICInterpolator

Namespace
OpenCvSharp.XImgProc
Assembly
OpenCvSharp.dll

Sparse match interpolation algorithm based on modified piecewise locally-weighted affine estimator called Robust Interpolation method of Correspondences (RIC), and Variational and Fast Global Smoother as post-processing filter. RICInterpolator is an extension of EdgeAwareInterpolator; its main concept is a piece-wise affine model based on over-segmentation via SLIC superpixel estimation, with an efficient propagation mechanism to estimate among the piece-wise models.

public class RICInterpolator : SparseMatchInterpolator, IDisposable
Inheritance
RICInterpolator
Implements
Inherited Members

Properties

Alpha

A global weight for transforming geodesic distance into weight.

public float Alpha { get; set; }

Property Value

float

FGSLambda

The respective fastGlobalSmootherFilter() lambda parameter.

public float FGSLambda { get; set; }

Property Value

float

FGSSigma

The respective fastGlobalSmootherFilter() sigma parameter.

public float FGSSigma { get; set; }

Property Value

float

K

K is a number of nearest-neighbor matches considered, when fitting a locally affine model for a superpixel segment. Lower values would make the interpolation noticeably faster. The original implementation uses 32.

public int K { get; set; }

Property Value

int

MaxFlow

A threshold to validate the predictions using a certain piece-wise affine model. If the prediction exceeds the threshold the translational model will be applied instead.

public float MaxFlow { get; set; }

Property Value

float

ModelIter

The number of iterations for piece-wise affine model estimation.

public int ModelIter { get; set; }

Property Value

int

RefineModels

Whether additional refinement of the piece-wise affine models is employed.

public bool RefineModels { get; set; }

Property Value

bool

SuperpixelMode

Chooses the superpixel algorithm variant to use: SLIC (100) segments the image using a desired region size, SLICO (101) optimizes using an adaptive compactness factor, and MSLIC (102) optimizes using manifold methods resulting in more content-sensitive superpixels.

public int SuperpixelMode { get; set; }

Property Value

int

SuperpixelNNCnt

The number of nearest-neighbor matches for each superpixel considered, when fitting a locally affine model.

public int SuperpixelNNCnt { get; set; }

Property Value

int

SuperpixelRuler

Tunes the enforcement of the superpixel smoothness factor used for oversegmentation.

public float SuperpixelRuler { get; set; }

Property Value

float

SuperpixelSize

The approximate size of the superpixel used for oversegmentation.

public int SuperpixelSize { get; set; }

Property Value

int

UseGlobalSmootherFilter

Whether the fastGlobalSmootherFilter() post-processing is employed.

public bool UseGlobalSmootherFilter { get; set; }

Property Value

bool

UseVariationalRefinement

Whether the VariationalRefinement post-processing is employed.

public bool UseVariationalRefinement { get; set; }

Property Value

bool

Methods

Create()

Factory method that creates an instance of the RICInterpolator.

public static RICInterpolator Create()

Returns

RICInterpolator

SetCostMap(Mat)

Interface to provide a more elaborated cost map, i.e. edge map, for the edge-aware term. This implementation is based on a rather simple gradient-based edge map estimation. To use a more complex edge map estimator (e.g. StructuredEdgeDetection) that may lead to improved accuracies, the internal edge map estimation can be bypassed here.

public void SetCostMap(Mat costMap)

Parameters

costMap Mat

a type CV_32FC1 Mat is required.