LSST Applications  21.0.0-147-g0e635eb1+1acddb5be5,22.0.0+052faf71bd,22.0.0+1ea9a8b2b2,22.0.0+6312710a6c,22.0.0+729191ecac,22.0.0+7589c3a021,22.0.0+9f079a9461,22.0.1-1-g7d6de66+b8044ec9de,22.0.1-1-g87000a6+536b1ee016,22.0.1-1-g8e32f31+6312710a6c,22.0.1-10-gd060f87+016f7cdc03,22.0.1-12-g9c3108e+df145f6f68,22.0.1-16-g314fa6d+c825727ab8,22.0.1-19-g93a5c75+d23f2fb6d8,22.0.1-19-gb93eaa13+aab3ef7709,22.0.1-2-g8ef0a89+b8044ec9de,22.0.1-2-g92698f7+9f079a9461,22.0.1-2-ga9b0f51+052faf71bd,22.0.1-2-gac51dbf+052faf71bd,22.0.1-2-gb66926d+6312710a6c,22.0.1-2-gcb770ba+09e3807989,22.0.1-20-g32debb5+b8044ec9de,22.0.1-23-gc2439a9a+fb0756638e,22.0.1-3-g496fd5d+09117f784f,22.0.1-3-g59f966b+1e6ba2c031,22.0.1-3-g849a1b8+f8b568069f,22.0.1-3-gaaec9c0+c5c846a8b1,22.0.1-32-g5ddfab5d3+60ce4897b0,22.0.1-4-g037fbe1+64e601228d,22.0.1-4-g8623105+b8044ec9de,22.0.1-5-g096abc9+d18c45d440,22.0.1-5-g15c806e+57f5c03693,22.0.1-7-gba73697+57f5c03693,master-g6e05de7fdc+c1283a92b8,master-g72cdda8301+729191ecac,w.2021.39
LSST Data Management Base Package
Namespaces | Macros | Functions
ImageSubtract.cc File Reference

Implementation of image subtraction functions declared in ImageSubtract.h. More...

#include <iostream>
#include <numeric>
#include <limits>
#include "boost/timer.hpp"
#include "Eigen/Core"
#include "lsst/afw/image.h"
#include "lsst/afw/math.h"
#include "lsst/log/Log.h"
#include "lsst/pex/exceptions/Runtime.h"
#include "lsst/ip/diffim.h"

Go to the source code of this file.

Namespaces

 lsst
 A base class for image defects.
 
 lsst::ip
 
 lsst::ip::diffim
 

Macros

#define p_INSTANTIATE_convolveAndSubtract(TEMPLATE_IMAGE_T, TYPE)
 
#define INSTANTIATE_convolveAndSubtract(TYPE)
 

Functions

template<typename PixelT >
Eigen::MatrixXd lsst::ip::diffim::imageToEigenMatrix (lsst::afw::image::Image< PixelT > const &img)
 Turns a 2-d Image into a 2-d Eigen Matrix. More...
 
Eigen::MatrixXi lsst::ip::diffim::maskToEigenMatrix (lsst::afw::image::Mask< lsst::afw::image::MaskPixel > const &mask)
 
template<typename PixelT , typename BackgroundT >
afwImage::MaskedImage< PixelT > lsst::ip::diffim::convolveAndSubtract (lsst::afw::image::MaskedImage< PixelT > const &templateImage, lsst::afw::image::MaskedImage< PixelT > const &scienceMaskedImage, lsst::afw::math::Kernel const &convolutionKernel, BackgroundT background, bool invert)
 Implement fundamental difference imaging step of convolution and subtraction : D = I - (K*T + bg) where * denotes convolution. More...
 
template<typename PixelT , typename BackgroundT >
afwImage::MaskedImage< PixelT > lsst::ip::diffim::convolveAndSubtract (lsst::afw::image::Image< PixelT > const &templateImage, lsst::afw::image::MaskedImage< PixelT > const &scienceMaskedImage, lsst::afw::math::Kernel const &convolutionKernel, BackgroundT background, bool invert)
 Implement fundamental difference imaging step of convolution and subtraction : D = I - (K.x.T + bg) More...
 
template Eigen::MatrixXd lsst::ip::diffim::imageToEigenMatrix (lsst::afw::image::Image< double > const &)
 
template lsst::afw::image::MaskedImage< float > lsst::ip::diffim::convolveAndSubtract (lsst::afw::image::Image< float > const &templateImage, lsst::afw::image::MaskedImage< float > const &scienceMaskedImage, lsst::afw::math::Kernel const &convolutionKernel, double background, bool invert)
 
template afwImage::MaskedImage< float > lsst::ip::diffim::convolveAndSubtract (lsst::afw::image::Image< float > const &templateImage, lsst::afw::image::MaskedImage< float > const &scienceMaskedImage, lsst::afw::math::Kernel const &convolutionKernel, lsst::afw::math::Function2< double > const &backgroundFunction, bool invert)
 
template lsst::afw::image::MaskedImage< float > lsst::ip::diffim::convolveAndSubtract (lsst::afw::image::MaskedImage< float > const &templateImage, lsst::afw::image::MaskedImage< float > const &scienceMaskedImage, lsst::afw::math::Kernel const &convolutionKernel, double background, bool invert)
 
template afwImage::MaskedImage< float > lsst::ip::diffim::convolveAndSubtract (lsst::afw::image::MaskedImage< float > const &templateImage, lsst::afw::image::MaskedImage< float > const &scienceMaskedImage, lsst::afw::math::Kernel const &convolutionKernel, lsst::afw::math::Function2< double > const &backgroundFunction, bool invert)
 
template lsst::afw::image::MaskedImage< double > lsst::ip::diffim::convolveAndSubtract (lsst::afw::image::Image< double > const &templateImage, lsst::afw::image::MaskedImage< double > const &scienceMaskedImage, lsst::afw::math::Kernel const &convolutionKernel, double background, bool invert)
 
template afwImage::MaskedImage< double > lsst::ip::diffim::convolveAndSubtract (lsst::afw::image::Image< double > const &templateImage, lsst::afw::image::MaskedImage< double > const &scienceMaskedImage, lsst::afw::math::Kernel const &convolutionKernel, lsst::afw::math::Function2< double > const &backgroundFunction, bool invert)
 
template lsst::afw::image::MaskedImage< double > lsst::ip::diffim::convolveAndSubtract (lsst::afw::image::MaskedImage< double > const &templateImage, lsst::afw::image::MaskedImage< double > const &scienceMaskedImage, lsst::afw::math::Kernel const &convolutionKernel, double background, bool invert)
 
template afwImage::MaskedImage< double > lsst::ip::diffim::convolveAndSubtract (lsst::afw::image::MaskedImage< double > const &templateImage, lsst::afw::image::MaskedImage< double > const &scienceMaskedImage, lsst::afw::math::Kernel const &convolutionKernel, lsst::afw::math::Function2< double > const &backgroundFunction, bool invert)
 

Detailed Description

Implementation of image subtraction functions declared in ImageSubtract.h.

Author
Andrew Becker, University of Washington

Definition in file ImageSubtract.cc.

Macro Definition Documentation

◆ INSTANTIATE_convolveAndSubtract

#define INSTANTIATE_convolveAndSubtract (   TYPE)
Value:
p_INSTANTIATE_convolveAndSubtract(MaskedImage, TYPE)
#define p_INSTANTIATE_convolveAndSubtract(TEMPLATE_IMAGE_T, TYPE)

Definition at line 237 of file ImageSubtract.cc.

◆ p_INSTANTIATE_convolveAndSubtract

#define p_INSTANTIATE_convolveAndSubtract (   TEMPLATE_IMAGE_T,
  TYPE 
)
Value:
template \
lsst::afw::image::MaskedImage<TYPE> convolveAndSubtract( \
lsst::afw::image::TEMPLATE_IMAGE_T<TYPE> const& templateImage, \
lsst::afw::image::MaskedImage<TYPE> const& scienceMaskedImage, \
lsst::afw::math::Kernel const& convolutionKernel, \
double background, \
bool invert); \
\
template \
afwImage::MaskedImage<TYPE> convolveAndSubtract( \
lsst::afw::image::TEMPLATE_IMAGE_T<TYPE> const& templateImage, \
lsst::afw::image::MaskedImage<TYPE> const& scienceMaskedImage, \
lsst::afw::math::Kernel const& convolutionKernel, \
lsst::afw::math::Function2<double> const& backgroundFunction, \
bool invert); \
A class to manipulate images, masks, and variance as a single object.
Definition: MaskedImage.h:73
A Function taking two arguments.
Definition: Function.h:259
Kernels are used for convolution with MaskedImages and (eventually) Images.
Definition: Kernel.h:110
template afwImage::MaskedImage< double > convolveAndSubtract(lsst::afw::image::MaskedImage< double > const &templateImage, lsst::afw::image::MaskedImage< double > const &scienceMaskedImage, lsst::afw::math::Kernel const &convolutionKernel, lsst::afw::math::Function2< double > const &backgroundFunction, bool invert)
Relationship invert(Relationship r)
Given the relationship between two sets A and B (i.e.
Definition: Relationship.h:55

Definition at line 220 of file ImageSubtract.cc.