DivC

Divides pixel values of an image by a constant.

Syntax

Case 1: Not-in-place operation on one-channel integer or complex data

IppStatus ippiDivC_<mod>(const Ipp<datatype>* pSrc, int srcStep, Ipp<datatype> value, Ipp<datatype>* pDst, int dstStep, IppiSize roiSize, int scaleFactor);

Supported values for mod:

8u_C1RSfs

16u_C1RSfs

16s_C1RSfs

16sc_C1RSfs

32sc_C1RSfs

Case 2: Not-in-place operation on multi-channel integer or complex data

IppStatus ippiDivC_<mod>(const Ipp<datatype>* pSrc, int srcStep, const Ipp<datatype> value[3], Ipp<datatype>* pDst, int dstStep, IppiSize roiSize, int scaleFactor);

Supported values for mod:

8u_C3RSfs

16u_C3RSfs

16s_C3RSfs

16sc_C3RSfs

32sc_C3RSfs

8u_AC4RSfs

16u_AC4RSfs

16s_AC4RSfs

16sc_AC4RSfs

32sc_AC4RSfs

IppStatus ippiDivC_<mod>(const Ipp<datatype>* pSrc, int srcStep, const Ipp<datatype> value[4], Ipp<datatype>* pDst, int dstStep, IppiSize roiSize, int scaleFactor);

Supported values for mod:

8u_C4RSfs

16u_C4RSfs

16s_C4RSfs

Case 3: Not-in-place operation on one-channel floating-point or complex data

IppStatus ippiDivC_<mod>(const Ipp<datatype>* pSrc, int srcStep, Ipp<datatype> value, Ipp<datatype>* pDst, int dstStep, IppiSize roiSize);

Supported values for mod:

32f_C1R

32fc_C1R

Case 4: Not-in-place operation on multi-channel floating-point or complex data

IppStatus ippiDivC_<mod>(const Ipp<datatype>* pSrc, int srcStep, const Ipp<datatype> value[3], Ipp<datatype>* pDst, int dstStep, IppiSize roiSize);

Supported values for mod:

32f_C3R

32fc_C3R

32f_AC4R

32fc_AC4R

IppStatus ippiDivC_32f_C4R(const Ipp32f* pSrc, int srcStep, const Ipp32f value[4], Ipp32f* pDst, int dstStep, IppiSize roiSize);

Case 5: In-place operation on one-channel integer or complex data

IppStatus ippiDivC_<mod>(Ipp<datatype> value, Ipp<datatype>* pSrcDst, int srcDstStep, IppiSize roiSize, int scaleFactor);

Supported values for mod:

8u_C1IRSfs

16u_C1IRSfs

16s_C1IRSfs

16sc_C1IRSfs

32sc_C1IRSfs

Case 6: In-place operation on multi-channel integer or complex data

IppStatus ippiDivC_<mod>(const Ipp<datatype> value[3], Ipp<datatype>* pSrcDst, int srcDstStep, IppiSize roiSize, int scaleFactor);

Supported values for mod:

8u_C3IRSfs

16u_C3IRSfs

16s_C3IRSfs

16sc_C3IRSfs

32sc_C3IRSfs

8u_AC4IRSfs

16u_AC4IRSfs

16s_AC4IRSfs

16sc_AC4IRSfs

32sc_AC4IRSfs

IppStatus ippiDivC_<mod>(const Ipp<datatype> value[4], Ipp<datatype>* pSrcDst, int srcDstStep, IppiSize roiSize, int scaleFactor);

Supported values for mod:

8u_C4IRSfs

16u_C4IRSfs

16s_C4IRSfs

Case 7: In-place operation on one-channel floating-point or complex data

IppStatus ippiDivC_<mod>(Ipp<datatype> value, Ipp<datatype>* pSrcDst, int srcDstStep, IppiSize roiSize);

Supported values for mod:

32f_C1IR

32fc_C1IR

Case 8: In-place operation on multi-channel floating-point or complex data

IppStatus ippiDivC_<mod>(const Ipp<datatype> value[3], Ipp<datatype>* pSrcDst, int srcDstStep, IppiSize roiSize);

Supported values for mod:

32f_C3IR

32fc_C3IR

32f_AC4IR

32fc_AC4IR

IppStatus ippiDivC_32f_C4IR(const Ipp32f value[4], Ipp32f* pSrcDst, int srcDstStep, IppiSize roiSize);

Parameters

pSrc

Pointer to the source image ROI.

srcStep

Distance in bytes between starts of consecutive lines in the source image.

value

The constant value to divide each pixel value in a source buffer (constant vector in case of 3- or four-channel images).

pDst

Pointer to the destination image ROI.

dstStep

Distance in bytes between starts of consecutive lines in the destination image.

pSrcDst

Pointer to the source and destination image ROI for the in-place operation.

srcDstStep

Distance in bytes between starts of consecutive lines in the source and destination image for the in-place operation.

roiSize

Size of the source and destination ROI in pixels.

scaleFactor

Scale factor (see InInteger Result Scaling).

Description

The function ippiDivС is declared in the ippi.h file. It operates with ROI (see Regions of Interest in Intel IPP).

This function changes image intensity by dividing pixel values of an image buffer by the constant value. For multi-channel images, pixel channel values are divided by the components of a constant vector value. For complex data, the function processes both real and imaginary parts of pixel values. In case of operations on integer data, the resulting values are scaled by scaleFactor and rounded (not truncated).

When the divisor value is zero, the function execution is aborted and the ippStsDivByZeroErr error status is set. Note that in the alpha channel case (AC4), the alpha channels are not processed.

Return Values

ippStsNoErr

Indicates no error. Any other value indicates an error or a warning.

ippStsNullPtrErr

Indicates an error condition if one of the specified pointers is NULL.

ippStsSizeErr

Indicates an error condition if roiSize has a field with zero or negative value.

ippStsStepErr

Indicates an error condition if srcStep, dstStep, orsrcDstStep has a zero or negative value.

ippStsDivByZeroErr

Indicates an error condition if the divisor value is zero.

Submit feedback on this help topic

Copyright © 2000 - 2011, Intel Corporation. All rights reserved.