MulScale
Multiplies pixel values of two images and scales the products.
Syntax
Case 1: Not-in-place operation
IppStatus ippiMulScale_<mod>
(
const Ipp<datatype>*
pSrc1
,
int
src1Step
,
const Ipp<datatype>*
pSrc2
,
int
src2Step
,
Ipp<datatype>*
pDst
,
int
dstStep
,
IppiSize
roiSize
);
Supported values for
mod
:8u_C1R | 16u_C1R |
8u_C3R | 16u_C3R |
8u_C4R | 16u_C4R |
8u_AC4R | 16u_AC4R |
Case 2: In-place operation
IppStatus ippiMulScale_<mod>
(
const Ipp<datatype>*
pSrc
,
int
srcStep
,
Ipp<datatype>*
pSrcDst
,
int
srcDstStep
,
IppiSize
roiSize
);
Supported values for
mod
:8u_C1IR | 16u_C1IR |
8u_C3IR | 16u_C3IR |
8u_C4IR | 16u_C4IR |
8u_AC4IR | 16u_AC4IR |
Include Files
ippi.h
Domain Dependencies
Headers:
ippcore.h
,
ippvm.h
,
ipps.h
Libraries:
ippcore.lib
,
ippvm.lib
,
ipps.lib
Parameters
- pSrc,pSrc1,pSrc2
- Pointers to the source images ROI.
- srcStep,src1Step,src2Step
- Distances in bytes between starts of consecutive lines in the source 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.
Description
This function operates with ROI (see Regions of Regions of Interest in Intel IPP).
This function multiplies corresponding pixel values of two input buffers and scales the products using the following formula:
dst_pixel
= src1_pixel
* src2_pixel
/ max_val
,where
src1_pixel
and src2_pixel
are pixel values of the source buffers, dst_pixel
is the resultant pixel value, and max_val
is the maximum value of the pixel data range (see Table “Image Data Types and Ranges”
for details). The function is implemented for 8-bit and 16-bit unsigned data types only.Note that the functions with
AC4
descriptor do not process alpha channelss.Return Values
- ippStsNoErr
- Indicates no error. Any other value indicates an error or a warning.
- ippStsNullPtrErr
- Indicates an error condition if any of the specified pointers isNULL.
- ippStsSizeErr
- Indicates an error condition ifroiSizehas a field with zero or negative value.
- ippStsStepErr
- Indicates an error condition if any of the specified buffer step values is zero or negative.