lsst.ip.diffim
g174f8ebed5+9bac6ea756
Toggle main menu visibility
Loading...
Searching...
No Matches
include
lsst
ip
diffim
KernelPca.h
Go to the documentation of this file.
1
// -*- lsst-c++ -*-
11
12
#ifndef LSST_IP_DIFFIM_KERNELPCA_H
13
#define LSST_IP_DIFFIM_KERNELPCA_H
14
15
#include "
lsst/afw/image.h
"
16
#include "
lsst/afw/math.h
"
17
18
namespace
lsst
{
19
namespace
ip
{
20
namespace
diffim
{
21
namespace
detail
{
22
23
template
<
typename
ImageT>
24
class
KernelPca
:
public
lsst::afw::image::ImagePca
<ImageT> {
25
typedef
typename
lsst::afw::image::ImagePca<ImageT>
Super;
26
public
:
27
typedef
typename
std::shared_ptr<KernelPca<ImageT>
>
Ptr
;
28
using
lsst::afw::image::ImagePca
<ImageT>
::getEigenImages
;
29
using
lsst::afw::image::ImagePca
<ImageT>
::getEigenValues
;
30
using
lsst::afw::image::ImagePca
<ImageT>
::addImage
;
31
33
explicit
KernelPca
(
bool
constantWeight=
true
) : Super(constantWeight) {}
34
36
virtual
void
analyze
();
37
};
38
39
template
<
typename
PixelT>
40
class
KernelPcaVisitor
:
public
lsst::afw::math::CandidateVisitor
{
41
public
:
42
typedef
lsst::afw::image::Image<lsst::afw::math::Kernel::Pixel>
ImageT
;
43
typedef
std::shared_ptr<KernelPcaVisitor<PixelT>
>
Ptr
;
44
45
KernelPcaVisitor
(
std::shared_ptr
<
KernelPca<ImageT>
> imagePca);
46
virtual
~KernelPcaVisitor
() {};
47
48
lsst::afw::math::KernelList
getEigenKernels
();
49
void
processCandidate
(
lsst::afw::math::SpatialCellCandidate
*candidate);
50
void
subtractMean
();
51
std::shared_ptr<ImageT>
returnMean
() {
return
_mean;}
52
private
:
53
std::shared_ptr<KernelPca<ImageT>
> _imagePca;
54
std::shared_ptr<ImageT>
_mean;
55
};
56
57
template
<
typename
PixelT>
58
std::shared_ptr<KernelPcaVisitor<PixelT>
>
59
makeKernelPcaVisitor
(
std::shared_ptr
<
KernelPca
<
typename
KernelPcaVisitor<PixelT>::ImageT
> > imagePca) {
60
return
std::shared_ptr<KernelPcaVisitor<PixelT>
>(
new
KernelPcaVisitor<PixelT>
(imagePca));
61
};
62
63
}}}}
// end of namespace lsst::ip::diffim::detail
64
65
#endif
lsst::afw::image::Image
lsst::afw::image::ImagePca
lsst::afw::image::ImagePca< ImageT >::addImage
void addImage(std::shared_ptr< ImageT > img, double flux=0.0)
lsst::afw::image::ImagePca< ImageT >::getEigenImages
ImageList const & getEigenImages() const
lsst::afw::image::ImagePca< ImageT >::getEigenValues
std::vector< double > const & getEigenValues() const
lsst::afw::math::CandidateVisitor
lsst::afw::math::SpatialCellCandidate
lsst::ip::diffim::detail::KernelPca
Overrides the analyze method of base class afwImage::ImagePca.
Definition
KernelPca.h:24
lsst::ip::diffim::detail::KernelPca::KernelPca
KernelPca(bool constantWeight=true)
Ctor.
Definition
KernelPca.h:33
lsst::ip::diffim::detail::KernelPca::analyze
virtual void analyze()
Generate eigenimages that are normalised.
Definition
KernelPca.cc:163
lsst::ip::diffim::detail::KernelPca::Ptr
std::shared_ptr< KernelPca< ImageT > > Ptr
Definition
KernelPca.h:27
lsst::ip::diffim::detail::KernelPcaVisitor
A class to run a PCA on all candidate kernels (represented as Images).
Definition
KernelPca.h:40
lsst::ip::diffim::detail::KernelPcaVisitor::subtractMean
void subtractMean()
Definition
KernelPca.cc:113
lsst::ip::diffim::detail::KernelPcaVisitor::Ptr
std::shared_ptr< KernelPcaVisitor< PixelT > > Ptr
Definition
KernelPca.h:43
lsst::ip::diffim::detail::KernelPcaVisitor::processCandidate
void processCandidate(lsst::afw::math::SpatialCellCandidate *candidate)
Definition
KernelPca.cc:89
lsst::ip::diffim::detail::KernelPcaVisitor::returnMean
std::shared_ptr< ImageT > returnMean()
Definition
KernelPca.h:51
lsst::ip::diffim::detail::KernelPcaVisitor::~KernelPcaVisitor
virtual ~KernelPcaVisitor()
Definition
KernelPca.h:46
lsst::ip::diffim::detail::KernelPcaVisitor::getEigenKernels
lsst::afw::math::KernelList getEigenKernels()
Definition
KernelPca.cc:65
lsst::ip::diffim::detail::KernelPcaVisitor::KernelPcaVisitor
KernelPcaVisitor(std::shared_ptr< KernelPca< ImageT > > imagePca)
Definition
KernelPca.cc:56
lsst::ip::diffim::detail::KernelPcaVisitor::ImageT
lsst::afw::image::Image< lsst::afw::math::Kernel::Pixel > ImageT
Definition
KernelPca.h:42
image.h
math.h
lsst::afw::math::KernelList
std::vector< std::shared_ptr< Kernel > > KernelList
lsst::ip::diffim::detail
Definition
AssessSpatialKernelVisitor.h:23
lsst::ip::diffim::detail::makeKernelPcaVisitor
std::shared_ptr< KernelPcaVisitor< PixelT > > makeKernelPcaVisitor(std::shared_ptr< KernelPca< typename KernelPcaVisitor< PixelT >::ImageT > > imagePca)
Definition
KernelPca.h:59
lsst::ip::diffim
Definition
AssessSpatialKernelVisitor.h:22
lsst::ip
Definition
AssessSpatialKernelVisitor.h:21
lsst
std::shared_ptr
Generated on
for lsst.ip.diffim by
1.17.0