FilterBilateralGaussBorder
Fixed Filters

Filters the image using a bilateral Gaussian filter kernel with border control. More...

## Functions

NppStatus | nppiFilterBilateralGaussBorder_8u_C1R_Ctx (const Npp8u *pSrc, Npp32s nSrcStep, NppiSize oSrcSize, NppiPoint oSrcOffset, Npp8u *pDst, Npp32s nDstStep, NppiSize oSizeROI, const int nRadius, const int nStepBetweenSrcPixels, const Npp32f nValSquareSigma, const Npp32f nPosSquareSigma, NppiBorderType eBorderType, NppStreamContext nppStreamCtx)
| Single channel 8-bit unsigned bilateral Gauss filter with border control. More...
NppStatus | nppiFilterBilateralGaussBorder_8u_C1R (const Npp8u *pSrc, Npp32s nSrcStep, NppiSize oSrcSize, NppiPoint oSrcOffset, Npp8u *pDst, Npp32s nDstStep, NppiSize oSizeROI, const int nRadius, const int nStepBetweenSrcPixels, const Npp32f nValSquareSigma, const Npp32f nPosSquareSigma, NppiBorderType eBorderType)
NppStatus | nppiFilterBilateralGaussBorder_8u_C3R_Ctx (const Npp8u *pSrc, Npp32s nSrcStep, NppiSize oSrcSize, NppiPoint oSrcOffset, Npp8u *pDst, Npp32s nDstStep, NppiSize oSizeROI, const int nRadius, const int nStepBetweenSrcPixels, const Npp32f nValSquareSigma, const Npp32f nPosSquareSigma, NppiBorderType eBorderType, NppStreamContext nppStreamCtx)
| Three channel 8-bit unsigned bilateral Gauss filter with border control. More...
NppStatus | nppiFilterBilateralGaussBorder_8u_C3R (const Npp8u *pSrc, Npp32s nSrcStep, NppiSize oSrcSize, NppiPoint oSrcOffset, Npp8u *pDst, Npp32s nDstStep, NppiSize oSizeROI, const int nRadius, const int nStepBetweenSrcPixels, const Npp32f nValSquareSigma, const Npp32f nPosSquareSigma, NppiBorderType eBorderType)
NppStatus | nppiFilterBilateralGaussBorder_16u_C1R_Ctx (const Npp16u *pSrc, Npp32s nSrcStep, NppiSize oSrcSize, NppiPoint oSrcOffset, Npp16u *pDst, Npp32s nDstStep, NppiSize oSizeROI, const int nRadius, const int nStepBetweenSrcPixels, const Npp32f nValSquareSigma, const Npp32f nPosSquareSigma, NppiBorderType eBorderType, NppStreamContext nppStreamCtx)
| Single channel 16-bit unsigned bilateral Gauss filter with border control. More...
NppStatus | nppiFilterBilateralGaussBorder_16u_C1R (const Npp16u *pSrc, Npp32s nSrcStep, NppiSize oSrcSize, NppiPoint oSrcOffset, Npp16u *pDst, Npp32s nDstStep, NppiSize oSizeROI, const int nRadius, const int nStepBetweenSrcPixels, const Npp32f nValSquareSigma, const Npp32f nPosSquareSigma, NppiBorderType eBorderType)
NppStatus | nppiFilterBilateralGaussBorder_16u_C3R_Ctx (const Npp16u *pSrc, Npp32s nSrcStep, NppiSize oSrcSize, NppiPoint oSrcOffset, Npp16u *pDst, Npp32s nDstStep, NppiSize oSizeROI, const int nRadius, const int nStepBetweenSrcPixels, const Npp32f nValSquareSigma, const Npp32f nPosSquareSigma, NppiBorderType eBorderType, NppStreamContext nppStreamCtx)
| Three channel 16-bit unsigned bilateral Gauss filter with border control. More...
NppStatus | nppiFilterBilateralGaussBorder_16u_C3R (const Npp16u *pSrc, Npp32s nSrcStep, NppiSize oSrcSize, NppiPoint oSrcOffset, Npp16u *pDst, Npp32s nDstStep, NppiSize oSizeROI, const int nRadius, const int nStepBetweenSrcPixels, const Npp32f nValSquareSigma, const Npp32f nPosSquareSigma, NppiBorderType eBorderType)
NppStatus | nppiFilterBilateralGaussBorder_32f_C1R_Ctx (const Npp32f *pSrc, Npp32s nSrcStep, NppiSize oSrcSize, NppiPoint oSrcOffset, Npp32f *pDst, Npp32s nDstStep, NppiSize oSizeROI, const int nRadius, const int nStepBetweenSrcPixels, const Npp32f nValSquareSigma, const Npp32f nPosSquareSigma, NppiBorderType eBorderType, NppStreamContext nppStreamCtx)
| One channel 32-bit floating-point bilateral Gauss filter with border control. More...
NppStatus | nppiFilterBilateralGaussBorder_32f_C1R (const Npp32f *pSrc, Npp32s nSrcStep, NppiSize oSrcSize, NppiPoint oSrcOffset, Npp32f *pDst, Npp32s nDstStep, NppiSize oSizeROI, const int nRadius, const int nStepBetweenSrcPixels, const Npp32f nValSquareSigma, const Npp32f nPosSquareSigma, NppiBorderType eBorderType)
NppStatus | nppiFilterBilateralGaussBorder_32f_C3R_Ctx (const Npp32f *pSrc, Npp32s nSrcStep, NppiSize oSrcSize, NppiPoint oSrcOffset, Npp32f *pDst, Npp32s nDstStep, NppiSize oSizeROI, const int nRadius, const int nStepBetweenSrcPixels, const Npp32f nValSquareSigma, const Npp32f nPosSquareSigma, NppiBorderType eBorderType, NppStreamContext nppStreamCtx)
| Three channel 32-bit floating-point bilateral Gauss filter with border control. More...
NppStatus | nppiFilterBilateralGaussBorder_32f_C3R (const Npp32f *pSrc, Npp32s nSrcStep, NppiSize oSrcSize, NppiPoint oSrcOffset, Npp32f *pDst, Npp32s nDstStep, NppiSize oSizeROI, const int nRadius, const int nStepBetweenSrcPixels, const Npp32f nValSquareSigma, const Npp32f nPosSquareSigma, NppiBorderType eBorderType)

## Detailed Description

Filters the image using a bilateral Gaussian filter kernel with border control.

If any portion of the mask overlaps the source image boundary the requested border type operation is applied to all mask pixels which fall outside of the source image.

For this filter the anchor point is always the central element of the kernel. Coefficients of the bilateral filter kernel depend on their position in the kernel and on the value of some source image pixels overlayed by the filter kernel. Only source image pixels with both coordinates divisible by nDistanceBetweenSrcPixels are used in calculations.

The value of an output pixel is

where h and w are the corresponding kernel width and height indexes, S(h,w) is the value of the source image pixel overlayed by filter kernel position (h,w), W1(h,w) is func(nValSquareSigma, (S(h,w) - S(0,0))) where S(0,0) is the value of the source image pixel at the center of the kernel, W2(h,w) is func(nPosSquareSigma, sqrt(h*h+w*w)), and func is the following formula

Currently only the NPP_BORDER_REPLICATE border type operations are supported.

### Common parameters for nppiFilterBilateralGaussBorder functions include:

Parameters

  pSrc | Source-Image Pointer.
  nSrcStep | Source-Image Line Step.
  oSrcSize | Source image width and height in pixels relative to pSrc.
  oSrcOffset | The pixel offset that pSrc points to relative to the origin of the source image.
  pDst | Destination-Image Pointer.
  nDstStep | Destination-Image Line Step.
  oSizeROI | Region-of-Interest (ROI).
  nRadius | The radius of the round filter kernel to be used. A radius of 1 indicates a filter kernel size of 3 by 3, 2 indicates 5 by 5, etc. Radius values from 1 to 32 are supported.
  nStepBetweenSrcPixels | The step size between adjacent source image pixels processed by the filter kernel, most commonly 1.
  nValSquareSigma | The square of the sigma for the relative intensity distance between a source image pixel in the filter kernel and the source image pixel at the center of the filter kernel.
  nPosSquareSigma | The square of the sigma for the relative geometric distance between a source image pixel in the filter kernel and the source image pixel at the center of the filter kernel.
  eBorderType | The border type operation to be applied at source image border boundaries.
  nppStreamCtx | Application Managed Stream Context.

Returns
  Image Data Related Error Codes, ROI Related Error Codes

## Function Documentation

NppStatus nppiFilterBilateralGaussBorder_16u_C1R | ( | const Npp16u * | pSrc,
|  | Npp32s | nSrcStep,
|  | NppiSize | oSrcSize,
|  | NppiPoint | oSrcOffset,
|  | Npp16u * | pDst,
|  | Npp32s | nDstStep,
|  | NppiSize | oSizeROI,
|  | const int | nRadius,
|  | const int | nStepBetweenSrcPixels,
|  | const Npp32f | nValSquareSigma,
|  | const Npp32f | nPosSquareSigma,
|  | NppiBorderType | eBorderType
| ) |  |

NppStatus nppiFilterBilateralGaussBorder_16u_C1R_Ctx | ( | const Npp16u * | pSrc,
|  | Npp32s | nSrcStep,
|  | NppiSize | oSrcSize,
|  | NppiPoint | oSrcOffset,
|  | Npp16u * | pDst,
|  | Npp32s | nDstStep,
|  | NppiSize | oSizeROI,
|  | const int | nRadius,
|  | const int | nStepBetweenSrcPixels,
|  | const Npp32f | nValSquareSigma,
|  | const Npp32f | nPosSquareSigma,
|  | NppiBorderType | eBorderType,
|  | NppStreamContext | nppStreamCtx
| ) |  |

Single channel 16-bit unsigned bilateral Gauss filter with border control.

For common parameter descriptions, see Common parameters for nppiFilterBilateralGaussBorder functions.

NppStatus nppiFilterBilateralGaussBorder_16u_C3R | ( | const Npp16u * | pSrc,
|  | Npp32s | nSrcStep,
|  | NppiSize | oSrcSize,
|  | NppiPoint | oSrcOffset,
|  | Npp16u * | pDst,
|  | Npp32s | nDstStep,
|  | NppiSize | oSizeROI,
|  | const int | nRadius,
|  | const int | nStepBetweenSrcPixels,
|  | const Npp32f | nValSquareSigma,
|  | const Npp32f | nPosSquareSigma,
|  | NppiBorderType | eBorderType
| ) |  |

NppStatus nppiFilterBilateralGaussBorder_16u_C3R_Ctx | ( | const Npp16u * | pSrc,
|  | Npp32s | nSrcStep,
|  | NppiSize | oSrcSize,
|  | NppiPoint | oSrcOffset,
|  | Npp16u * | pDst,
|  | Npp32s | nDstStep,
|  | NppiSize | oSizeROI,
|  | const int | nRadius,
|  | const int | nStepBetweenSrcPixels,
|  | const Npp32f | nValSquareSigma,
|  | const Npp32f | nPosSquareSigma,
|  | NppiBorderType | eBorderType,
|  | NppStreamContext | nppStreamCtx
| ) |  |

Three channel 16-bit unsigned bilateral Gauss filter with border control.

For common parameter descriptions, see Common parameters for nppiFilterBilateralGaussBorder functions.

NppStatus nppiFilterBilateralGaussBorder_32f_C1R | ( | const Npp32f * | pSrc,
|  | Npp32s | nSrcStep,
|  | NppiSize | oSrcSize,
|  | NppiPoint | oSrcOffset,
|  | Npp32f * | pDst,
|  | Npp32s | nDstStep,
|  | NppiSize | oSizeROI,
|  | const int | nRadius,
|  | const int | nStepBetweenSrcPixels,
|  | const Npp32f | nValSquareSigma,
|  | const Npp32f | nPosSquareSigma,
|  | NppiBorderType | eBorderType
| ) |  |

NppStatus nppiFilterBilateralGaussBorder_32f_C1R_Ctx | ( | const Npp32f * | pSrc,
|  | Npp32s | nSrcStep,
|  | NppiSize | oSrcSize,
|  | NppiPoint | oSrcOffset,
|  | Npp32f * | pDst,
|  | Npp32s | nDstStep,
|  | NppiSize | oSizeROI,
|  | const int | nRadius,
|  | const int | nStepBetweenSrcPixels,
|  | const Npp32f | nValSquareSigma,
|  | const Npp32f | nPosSquareSigma,
|  | NppiBorderType | eBorderType,
|  | NppStreamContext | nppStreamCtx
| ) |  |

One channel 32-bit floating-point bilateral Gauss filter with border control.

For common parameter descriptions, see Common parameters for nppiFilterBilateralGaussBorder functions.

NppStatus nppiFilterBilateralGaussBorder_32f_C3R | ( | const Npp32f * | pSrc,
|  | Npp32s | nSrcStep,
|  | NppiSize | oSrcSize,
|  | NppiPoint | oSrcOffset,
|  | Npp32f * | pDst,
|  | Npp32s | nDstStep,
|  | NppiSize | oSizeROI,
|  | const int | nRadius,
|  | const int | nStepBetweenSrcPixels,
|  | const Npp32f | nValSquareSigma,
|  | const Npp32f | nPosSquareSigma,
|  | NppiBorderType | eBorderType
| ) |  |

NppStatus nppiFilterBilateralGaussBorder_32f_C3R_Ctx | ( | const Npp32f * | pSrc,
|  | Npp32s | nSrcStep,
|  | NppiSize | oSrcSize,
|  | NppiPoint | oSrcOffset,
|  | Npp32f * | pDst,
|  | Npp32s | nDstStep,
|  | NppiSize | oSizeROI,
|  | const int | nRadius,
|  | const int | nStepBetweenSrcPixels,
|  | const Npp32f | nValSquareSigma,
|  | const Npp32f | nPosSquareSigma,
|  | NppiBorderType | eBorderType,
|  | NppStreamContext | nppStreamCtx
| ) |  |

Three channel 32-bit floating-point bilateral Gauss filter with border control.

For common parameter descriptions, see Common parameters for nppiFilterBilateralGaussBorder functions.

NppStatus nppiFilterBilateralGaussBorder_8u_C1R | ( | const Npp8u * | pSrc,
|  | Npp32s | nSrcStep,
|  | NppiSize | oSrcSize,
|  | NppiPoint | oSrcOffset,
|  | Npp8u * | pDst,
|  | Npp32s | nDstStep,
|  | NppiSize | oSizeROI,
|  | const int | nRadius,
|  | const int | nStepBetweenSrcPixels,
|  | const Npp32f | nValSquareSigma,
|  | const Npp32f | nPosSquareSigma,
|  | NppiBorderType | eBorderType
| ) |  |

NppStatus nppiFilterBilateralGaussBorder_8u_C1R_Ctx | ( | const Npp8u * | pSrc,
|  | Npp32s | nSrcStep,
|  | NppiSize | oSrcSize,
|  | NppiPoint | oSrcOffset,
|  | Npp8u * | pDst,
|  | Npp32s | nDstStep,
|  | NppiSize | oSizeROI,
|  | const int | nRadius,
|  | const int | nStepBetweenSrcPixels,
|  | const Npp32f | nValSquareSigma,
|  | const Npp32f | nPosSquareSigma,
|  | NppiBorderType | eBorderType,
|  | NppStreamContext | nppStreamCtx
| ) |  |

Single channel 8-bit unsigned bilateral Gauss filter with border control.

For common parameter descriptions, see Common parameters for nppiFilterBilateralGaussBorder functions.

NppStatus nppiFilterBilateralGaussBorder_8u_C3R | ( | const Npp8u * | pSrc,
|  | Npp32s | nSrcStep,
|  | NppiSize | oSrcSize,
|  | NppiPoint | oSrcOffset,
|  | Npp8u * | pDst,
|  | Npp32s | nDstStep,
|  | NppiSize | oSizeROI,
|  | const int | nRadius,
|  | const int | nStepBetweenSrcPixels,
|  | const Npp32f | nValSquareSigma,
|  | const Npp32f | nPosSquareSigma,
|  | NppiBorderType | eBorderType
| ) |  |

NppStatus nppiFilterBilateralGaussBorder_8u_C3R_Ctx | ( | const Npp8u * | pSrc,
|  | Npp32s | nSrcStep,
|  | NppiSize | oSrcSize,
|  | NppiPoint | oSrcOffset,
|  | Npp8u * | pDst,
|  | Npp32s | nDstStep,
|  | NppiSize | oSizeROI,
|  | const int | nRadius,
|  | const int | nStepBetweenSrcPixels,
|  | const Npp32f | nValSquareSigma,
|  | const Npp32f | nPosSquareSigma,
|  | NppiBorderType | eBorderType,
|  | NppStreamContext | nppStreamCtx
| ) |  |

Three channel 8-bit unsigned bilateral Gauss filter with border control.

For common parameter descriptions, see Common parameters for nppiFilterBilateralGaussBorder functions.

Copyright © 2009-2018 NVIDIA Corporation