FilterColumn

Filter with an integer vertical column kernel

Supported Technologies

MT, SSE2

Synopsis

FwStatus   fwiFilterColumn_8u_C1R ( const Fw8u * pSrcint srcStepFw8u * pDstint dstStepFwiSize dstRoiSizeconst Fw32s * pKernelint kernelSizeint yAnchorint divisor );
FwStatus   fwiFilterColumn_8u_C3R ( const Fw8u * pSrcint srcStepFw8u * pDstint dstStepFwiSize dstRoiSizeconst Fw32s * pKernelint kernelSizeint yAnchorint divisor );
FwStatus   fwiFilterColumn_8u_C4R ( const Fw8u * pSrcint srcStepFw8u * pDstint dstStepFwiSize dstRoiSizeconst Fw32s * pKernelint kernelSizeint yAnchorint divisor );
FwStatus   fwiFilterColumn_8u_AC4R ( const Fw8u * pSrcint srcStepFw8u * pDstint dstStepFwiSize dstRoiSizeconst Fw32s * pKernelint kernelSizeint yAnchorint divisor );
FwStatus   fwiFilterColumn_16s_C1R ( const Fw16s * pSrcint srcStepFw16s * pDstint dstStepFwiSize dstRoiSizeconst Fw32s * pKernelint kernelSizeint yAnchorint divisor );
FwStatus   fwiFilterColumn_16s_C3R ( const Fw16s * pSrcint srcStepFw16s * pDstint dstStepFwiSize dstRoiSizeconst Fw32s * pKernelint kernelSizeint yAnchorint divisor );
FwStatus   fwiFilterColumn_16s_C4R ( const Fw16s * pSrcint srcStepFw16s * pDstint dstStepFwiSize dstRoiSizeconst Fw32s * pKernelint kernelSizeint yAnchorint divisor );
FwStatus   fwiFilterColumn_16s_AC4R ( const Fw16s * pSrcint srcStepFw16s * pDstint dstStepFwiSize dstRoiSizeconst Fw32s * pKernelint kernelSizeint yAnchorint divisor );
FwStatus   fwiFilterColumn_32f_C1R ( const Fw32f * pSrcint srcStepFw32f * pDstint dstStepFwiSize dstRoiSizeconst Fw32f * pKernelint kernelSizeint yAnchor );
FwStatus   fwiFilterColumn_32f_C3R ( const Fw32f * pSrcint srcStepFw32f * pDstint dstStepFwiSize dstRoiSizeconst Fw32f * pKernelint kernelSizeint yAnchor );
FwStatus   fwiFilterColumn_32f_C4R ( const Fw32f * pSrcint srcStepFw32f * pDstint dstStepFwiSize dstRoiSizeconst Fw32f * pKernelint kernelSizeint yAnchor );
FwStatus   fwiFilterColumn_32f_AC4R ( const Fw32f * pSrcint srcStepFw32f * pDstint dstStepFwiSize dstRoiSizeconst Fw32f * pKernelint kernelSizeint yAnchor );

Parameters

divisor   An integer value by which a result is divided.
dstRoiSize   Destination image ROI size.
dstStep   Destination buffer step size (width of the buffer in bytes).
kernelSize   Specifies the size of the kernel used in calculations.
pDst   Pointer to a location in a destination buffer.
pKernel   Pointer to the kernel array.
pSrc   Pointer to a location in a source buffer.
srcStep   Source buffer step size (width of the buffer in bytes).
yAnchor   Anchor cell that specifies the vertical alignment of the kernel with respect to the input pixel.

Description

These functions step through an ROI in a source buffer, calculate the sum of products of the kernel values and the corresponding pixel values in an area defined by the kernel size and anchor coordinate, then divide by the divisor.

The filtered data is written to a destination buffer.

The vertical column kernel is an array of signed 32-bit integer values; the anchor coordinate location is relative to the bottom of the kernel.

Functions that operate on 8-bit unsigned data assume that the kernel values are small (in the -4096 to 4096 range).

If the results of the intermediate calculations exceed 24 bits, calculation errors may occur.

For very small kernel values, the functions use very fast code, at the expense of accuracy (+/- 1.5).