Developer Reference

  • 2020
  • 07/15/2020
  • Public Content
Contents

Filter

Filters a volume using a general cuboidal kernel.

Syntax

IppStatus ipprFilter_16s_C1PV(const Ipp16s* const
pSrc
[], int
srcStep
, const Ipp16s*
pDst
[], int
dstStep
, IpprVolume
dstVolume
, const Ipp32s*
pKernel
, IpprVolume
kernelVolume
, IpprPoint
anchor
, int
divisor
, Ipp8u*
pBuffer
);
IppStatus ipprFilter_16s_C1V(const Ipp16s*
pSrc
, int
srcStep
, int
srcPlaneStep
, Ipp16s*
pDst
, int
dstStep
, int
dstPlaneStep
, IpprVolume
dstVolume
, const Ipp32s*
pKernel
, IpprVolume
kernelVolume
, IpprPoint
anchor
, int
divisor
, Ipp8u*
pBuffer
);
Include Files
ippi.h
Domain Dependencies
Headers:
ippcore.h
,
ippvm.h
,
ipps.h
Libraries:
ippcore.lib
,
ippvm.lib
,
ipps.lib
Parameters
pSrc
Array of pointers to the planes in the source volume.
srcStep
Distance, in bytes, between the starting points of consecutive lines in each plane of the source volume.
srcPlaneStep
Distance, in bytes, between the starting points of consecutive lines in every plane of the source volume (for the
16s_C1V
flavor).
pDst
Array of pointers to the planes in the destination volume.
dstStep
Distance, in bytes, between the starting points of consecutive lines in each plane of the destination volume.
dstPlaneStep
Distance, in bytes, between the starting points of consecutive lines in every plane of the destination volume (for the
16s_C1V
flavor).
dstVolume
Size of the processed volume.
pKernel
Pointers to the kernel values.
kernelVolume
Size of the kernel volume.
anchor
Anchor 3d-cell specifying the cuboidal kernel alignment with respect to the position of the input voxel.
divisor
The integer value by which the computed result is divided.
pBuffer
Pointer to the external buffer.
Description
This function operates with VOI. This function uses the general cuboidal kernel of size
kernelVolume
to filter a volume VOI. This function sums the products between the kernel coefficients
pKernel
and voxel values taken over the source voxel neighborhood defined by
kernelVolume
and
anchor
. The anchor 3d-cell is specified by its coordinates
anchor.x
,
anchor.y
and
anchor.z
in the coordinate system associated with the right bottom back corner of the kernel. Note the kernel coefficients are used in inverse order. The sum is written to the destination voxel. To ensure valid operation when volume boundary voxels are processed, the application must correctly define additional border voxels.
Return Values
ippStsNoErr
Indicates no error. Any other value indicates an error.
ippStsNullPtrErr
Indicates an error condition if
pSrc
,
pDst
,
pKernel
or
pBuffer
pointer is
NULL
.
ippStsSizeErr
Indicates an error condition if
dstVolume
or
kernelVolume
has a field with zero or negative value.
ippStsDivisorErr
Indicates an error condition if the divisor value is zero.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804