Subtracts a constant from pixel values of an image.
Case 1: Not-in-place operation on one-channel integer or complex data
IppStatus ippiSubC_<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 ippiSubC_<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 ippiSubC_<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 ippiSubC_<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 ippiSubC_<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 ippiSubC_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 ippiSubC_<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 ippiSubC_<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 ippiSubC_<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 ippiSubC_<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 ippiSubC_<mod>(const Ipp<datatype> value[3], Ipp<datatype>* pSrcDst, int srcDstStep, IppiSize roiSize);
Supported values for mod:
32f_C3IR |
32fc_C3IR |
32f_AC4IR |
2fc_AC4IR |
IppStatus ippiSubC_32f_C4IR(const Ipp32f value[4], Ipp32f* pSrcDst, int srcDstStep, IppiSize roiSize);
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 subtract from each pixel value in a source image (constant vector in case of multi-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 Integer Result Scaling). |
The function ippiSubC is declared in the ippi.h file. It operates with ROI (see Regions of Interest in Intel IPP).
This function changes image intensity by subtracting the constant value from pixel values of an image buffer. For multi-channel images, the components of a constant vector value are subtracted from pixel channel values. For complex data, the function processes both real and imaginary parts of pixel values.
Step values must be positive for functions that operate on complex data.
In case of operations on integer data, the resulting values are scaled by scaleFactor.
Note that the functions with the AC4 descriptor do not process alpha channelss.
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 any of the specified buffer step values is zero or negative for functions that operate on complex data. |
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.