Raises every element of input array to p: dst(I)=src(I)p, if p is integer dst(I)=abs(src(I))p, otherwise That is, for non-integer power exponent the absolute values of input array elements are used. However, it is possible to get true values for negative values using some extra operations, as the following sample, computing cube root of array elements, shows: CvSize size = cvGetSize(src); CvMat* mask = cvCreateMat( size.height, size.width, CV_8UC1 ); cvCmpS( src, 0, mask, CV_CMP_LT ); /* find negative elements */ cvPow( src, dst, 1./3 ); cvSubRS( dst, cvScalarAll(0), dst, mask ); /* negate the results of negative inputs */ cvReleaseMat( &mask ); For some values of power, such as integer values, 0.5 and -0.5, specialized faster algorithms are used.

Namespace: Emgu.CV
Assembly: Emgu.CV (in Emgu.CV.dll) Version: 2.2.1.1150 (2.2.1.1150)

Syntax

         
 C#  Visual Basic  Visual C++ 
public static void cvPow(
	IntPtr src,
	IntPtr dst,
	double power
)
Public Shared Sub cvPow ( _
	src As IntPtr, _
	dst As IntPtr, _
	power As Double _
)
public:
static void cvPow(
	IntPtr src, 
	IntPtr dst, 
	double power
)

Parameters

src
IntPtr
The source array
dst
IntPtr
The destination array, should be the same type as the source
power
Double
The exponent of power

See Also