Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

how to use the ippsSVD_64f_D2?

dengfuqin
Beginner
387 Views

/*
IppStatus ippsSVD_64f_D2(const Ipp64f* pSrcA, Ipp64f* pDstU, int height,
Ipp64f* pDstW, Ipp64f* pDstV, int width, int step, int nIter);
IppStatus ippsSVD_64f_D2_I(Ipp64f* pSrcDstA, int height, Ipp64f* pDstW,
Ipp64f* pDstV, int width, int step, int nIter);
IppStatus ippsSVD_64f_D2L(const Ipp64f** mSrcA, Ipp64f** mDstU, int height,
Ipp64f* pDstW, Ipp64f** mDstV, int width, int nIter);
IppStatus ippsSVD_64f_D2L_I(Ipp64f** mSrcDstA, int height, Ipp64f* pDstW,
Ipp64f** mDstV, int width, int nIter);
*/

What dose the parementstep mean?

Ipp64f SrcA[9]={-1,-2,-1,0,0,0,1,2,1};
Ipp64f DstU[9];
Ipp64f DstW[3];
Ipp64f DstV[9];
int height=3;
int width=3;
int step=3; //Question: step is always equal to width?
int nIter=100;
IppStatus status=ippsSVD_64f_D2(SrcA,DstU,height,DstW,DstV,width,step,nIter);

for the 3*3 matrix the above codes can get the correct result? but the sigular value is not in decreasing order,is there any good way to let the anygood way to let sigular value in deceasing order?

for the 3*4 matrix ,the following codes will not get the right answer? Can anyone help me to correct the error in the following codes?

Ipp64f SrcA[12]={1,1-1,-1,2,1,0,2,1,-1,0,1}; (A is 3*4 2D matrix)
Ipp64f DstU[9];
Ipp64f DstW[4];
Ipp64f DstV[16];
int height=3;
int width=4;
int step=4; //Question: stepshould be?
int nIter=100;
IppStatus status=ippsSVD_64f_D2(SrcA,DstU,height,DstW,DstV,width,step,nIter);

0 Kudos
3 Replies
Intel_C_Intel
Employee
387 Views

Hi,

inthe description of ippSVD* function arguments:

pDstU

Pointer to the output vector U [height*step].

height*step is 12 in you case, if you define DstU[12] you get the correct result

For singular values in sorted order you can use function ippsSVDSort_64f_* functions

Thanks,

Alexander

0 Kudos
dengfuqin
Beginner
387 Views

Hi

Thanks for your help!

What the version of your IPP? I don't find the function ippsSVDSort_64f_*,

Is it in the Manual: Volume 1: Signal Processing?

0 Kudos
Vladimir_Dudnik
Employee
387 Views

This function was first introduced in IPP v4.1, see Speech Recognition functionality (ippsr.h)

Vladimir

0 Kudos
Reply