Template Function lsst::afw::math::detail::convolveWithBruteForce¶
Function Documentation¶
-
template<typename
OutImageT
, typenameInImageT
>
voidlsst::afw::math::detail
::
convolveWithBruteForce
(OutImageT &convolvedImage, InImageT const &inImage, lsst::afw::math::Kernel const &kernel, lsst::afw::math::ConvolutionControl const &convolutionControl)¶ Convolve an Image or MaskedImage with a Kernel by computing the kernel image at every point. (If the kernel is not spatially varying then only compute it once).
convolvedImage must be the same size as inImage. convolvedImage has a border in which the output pixels are not set. This border has size:
kernel.getCtrX() along the left edge
kernel.getCtrY() along the bottom edge
kernel.getWidth() - 1 - kernel.getCtrX() along the right edge
kernel.getHeight() - 1 - kernel.getCtrY() along the top edge
- Warning
Low-level convolution function that does not set edge pixels.
- Parameters
[out] convolvedImage
: convolved image[in] inImage
: image to convolve[in] kernel
: convolution kernel[in] convolutionControl
: convolution control parameters
- Exceptions
lsst::pex::exceptions::InvalidParameterError
: if convolvedImage dimensions != inImage dimensionslsst::pex::exceptions::InvalidParameterError
: if inImage smaller than kernel in width or heightlsst::pex::exceptions::InvalidParameterError
: if kernel width or height < 1std::bad_alloc
: when allocation of CPU memory fails