Intel® Integrated Performance Primitives (Intel® IPP) Developer Guide and Reference

ID 790148
Date 3/22/2024
Public
Document Table of Contents

Normalize

Normalizes elements of a real or complex vector using offset and division operations.

Syntax

Case 1: Not-in-place operations on floating point and integer data

IppStatus ippsNormalize_32f(const Ipp32f* pSrc, Ipp32f* pDst, int len, Ipp32f vSub, Ipp32f vDiv);

IppStatus ippsNormalize_64f(const Ipp64f* pSrc, Ipp64f* pDst, int len, Ipp64f vSub, Ipp64f vDiv);

IppStatus ippsNormalize_32fc(const Ipp32fc* pSrc, Ipp32fc* pDst, int len, Ipp32fc vSub, Ipp32f vDiv);

IppStatus ippsNormalize_64fc(const Ipp64fc* pSrc, Ipp64fc* pDst, int len, Ipp64fc vSub, Ipp64f vDiv);

IppStatus ippsNormalize_16s_Sfs(const Ipp16s* pSrc, Ipp16s* pDst, int len, Ipp16s vSub, int vDiv, int scaleFactor);

IppStatus ippsNormalize_16sc_Sfs(const Ipp16sc* pSrc, Ipp16sc* pDst, int len, Ipp16sc vSub, int vDiv, int scaleFactor);

Case 2: In-place operations on floating point and integer data

IppStatus ippsNormalize_32f_I(Ipp32f* pSrcDst, int len, Ipp32f vSub, Ipp32f vDiv);

IppStatus ippsNormalize_64f_I(Ipp64f* pSrcDst, int len, Ipp64f vSub, Ipp64f vDiv);

IppStatus ippsNormalize_32fc_I(Ipp32fc* pSrcDst, int len, Ipp32fc vSub, Ipp32f vDiv);

IppStatus ippsNormalize_64fc_I(Ipp64fc* pSrcDst, int len, Ipp64fc vSub, Ipp64f vDiv);

IppStatus ippsNormalize_16s_ISfs(Ipp16s* pSrcDst, int len, Ipp16s vSub, int vDiv, int scaleFactor);

IppStatus ippsNormalize_16sc_ISfs(Ipp16sc* pSrcDst, int len, Ipp16sc vSub, int vDiv, int scaleFactor);

Include Files

ipps.h

Domain Dependencies

Headers: ippcore.h, ippvm.h

Libraries: ippcore.lib, ippvm.lib

Parameters

pSrc

Pointer to the source vector.

pSrcDst

Pointer to the source and destination vector for in-place operations.

vSub

Subtrahend value.

vDiv

Denominator value.

pDst

Pointer to the vector which stores the normalized elements.

len

Number of elements in the vector

scaleFactor

Scale factor, refer to Integer Scaling.

Description

This function subtracts vSub from elements of the input vector pSrc (pSrcDst for in-place operations), divides the differences by vDiv, and stores the result in pDst (pSrcDst for in-place operations). The computation is performed as follows:

pDst[n] = (pSrc[n] - vSub)/vDiv.

Return Values

ippStsNoErr

Indicates no error.

ippStsNullPtrErr

Indicates an error when the pSrc or pDst pointer is NULL.

ippStsSizeErr

Indicates an error when len is less than or equal to 0.

ippStsDivByZeroErr

Indicates an error when vDiv is equal to 0 or less than the minimum floating-point positive number.