CvInvokeDenoiseTVL1 Method |
http://www.emgu.com
Primal-dual algorithm is an algorithm for solving special types of variational problems (that is, finding a function to minimize some functional).
As the image denoising, in particular, may be seen as the variational problem, primal-dual algorithm then can be used to perform
denoising and this is exactly what is implemented.
Namespace: Emgu.CVAssembly: Emgu.CV.World (in Emgu.CV.World.dll) Version: 3.2.0.2682 (3.2.0.2682)
Syntax public static void DenoiseTVL1(
Mat[] observations,
Mat result,
double lambda,
int niters
)
Public Shared Sub DenoiseTVL1 (
observations As Mat(),
result As Mat,
lambda As Double,
niters As Integer
)
public:
static void DenoiseTVL1(
array<Mat^>^ observations,
Mat^ result,
double lambda,
int niters
)
static member DenoiseTVL1 :
observations : Mat[] *
result : Mat *
lambda : float *
niters : int -> unit
Parameters
- observations
- Type: Emgu.CVMat
This array should contain one or more noised versions of the image that is to be restored. - result
- Type: Emgu.CVMat
Here the denoised image will be stored. There is no need to do pre-allocation of storage space, as it will be automatically allocated, if necessary. - lambda
- Type: SystemDouble
Corresponds to in the formulas above. As it is enlarged, the smooth (blurred) images are treated more favorably than detailed (but maybe more noised) ones. Roughly speaking, as it becomes smaller, the result will be more blur but more sever outliers will be removed. - niters
- Type: SystemInt32
Number of iterations that the algorithm will run. Of course, as more iterations as better, but it is hard to quantitatively refine this statement, so just use the default and increase it if the results are poor.
See Also