Computes the inverse spherical harmonic transform.
IppStatus ipprSHTInv_32f_C1(const Ipp32f* pSrcClm, Ipp32u L, const Ipp32f* pX, const Ipp32f* pY, const Ipp32f* pZ, Ipp32f* pDst, Ipp32u N, IppSHState* pSHState);
IppStatus ipprSHTInv_32f_P3C3(const Ipp32f* pSrcClm[3], Ipp32u L, const Ipp32f* pX, const Ipp32f* pY, const Ipp32f* pZ, Ipp32f* pDst, Ipp32u N, IppSHState* pSHState);
IppStatus ipprSHTInv_32f_P3(const Ipp32f* pSrcClm[3], Ipp32u L, const Ipp32f* pX, const Ipp32f* pY, const Ipp32f* pZ, Ipp32f* pDst[3], Ipp32u N, IppSHState* pSHState);
pSrcClm |
Pointer to the source vector or an array of pointers to the source vectors of pre-computed SHT coefficients of length (L+1)(L+1). |
L |
Order, can not be greater than maximum order specified in the function ipprSHInit. |
pX, pY, pZ |
Pointers to the source vectors representing a unit sphere points in Cartesians coordinates. |
pDst |
Pointer to the destination vector or array pointers to the destination vectors containing the function values reconstructed for each input point. |
N |
Number of Cartesians points, that is the length of the source vectors pX, pY, pZ and destination vector (or vectors). |
pSHState |
Pointer to the external buffer for the SHT state structure that must be initialized with maximum order not less than L. |
The function ipprSHTInv is declared in the ippr.h file.
All function flavors perform inverse spherical harmonic transform (SHT), that is they reconstruct the function f(x, y, z) defined on a unit sphere by use of its pre-computed SHT coefficients {Clm:0 ≤ l ≤ L, |m| ≤ L}, that are stored in the source vector or array of vectors pSrcClm in order in which they are produced by the function ipprSHTFwd.
For each input point (pX[I], pY[I], pZ[I]), 0 ≤ I < N, it is supposed that pX[I]2 + pY[I]2 + pZ[I]2 =1.
The functions perform the following steps:
1. Compute the SH functions for each input point {Ylm (pX[I], pY[I], pZ[I]) :0 ≤ l ≤ L, |m| ≤ L}
2. Approximate a unit sphere function f(x, y, z) for each input point by (pX[I], pY[I], pZ[I]) .
The function ipprSHTInv_32f_C1 calculates
The function ipprSHTInv_32f_P3C3 calculates
for 0 ≤ k ≤ 3.
The function ipprSHTInv_32f_P3 calculates
for 0 ≤ k ≤ 3.
The functions ipprSHTInv_32f_P3C3 and ipprSHTInv_32f_P3 are suitable to reconstruct a color function, for example f:(x, y, z) --> R, G, B, for both pixel-ordered or planar images respectively.
ippStsNoErr |
Indicates no error. Any other value indicates an error. |
ippStsNullPtrErr |
Indicates an error if one of the specified pointers is NULL. |
ippStsSizeErr |
Indicates an error if N is equal to 0. |
ippStsRangeErr |
Indicates an error condition if L is greater that maximum order specified in the function ipprSHInit. |
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.