lsst.ip.diffim
20.0.0-1-g596936a+15
include
lsst
ip
diffim
BuildSingleKernelVisitor.h
Go to the documentation of this file.
1
// -*- lsst-c++ -*-
12
#ifndef LSST_IP_DIFFIM_BUILDSINGLEKERNELVISITOR_H
13
#define LSST_IP_DIFFIM_BUILDSINGLEKERNELVISITOR_H
14
15
#include <memory>
16
17
#include "
lsst/afw/image.h
"
18
#include "
lsst/afw/math.h
"
19
20
#include "
lsst/daf/base/PropertySet.h
"
21
22
#include "
lsst/ip/diffim/ImageStatistics.h
"
23
24
namespace
lsst
{
25
namespace
ip {
26
namespace
diffim {
27
namespace
detail {
28
29
template
<
typename
PixelT>
30
class
BuildSingleKernelVisitor
:
public
lsst::afw::math::CandidateVisitor
{
31
typedef
lsst::afw::image::MaskedImage<PixelT>
MaskedImageT
;
32
public
:
33
typedef
std::shared_ptr<BuildSingleKernelVisitor<PixelT>
>
Ptr
;
34
35
BuildSingleKernelVisitor
(
36
lsst::afw::math::KernelList
const
& basisList,
37
lsst::daf::base::PropertySet
const
& ps
38
);
39
BuildSingleKernelVisitor
(
40
lsst::afw::math::KernelList
const
& basisList,
41
lsst::daf::base::PropertySet
const
& ps,
42
Eigen::MatrixXd
const
& hMat
43
);
44
virtual
~BuildSingleKernelVisitor
() {};
45
46
/*
47
Don't reprocess candidate if its already been build. The use
48
case for this functionality is : when iterating over all Cells
49
and rejecting bad Kernels, we need to re-visit *all* Cells to
50
build the next candidate in the list. Without this flag we would
51
unncessarily re-build all the good Kernels.
52
*/
53
void
setSkipBuilt
(
bool
skip) {_skipBuilt = skip;}
54
55
int
getNRejected
() {
return
_nRejected;}
56
int
getNProcessed
() {
return
_nProcessed;}
57
void
reset
() {_nRejected = 0; _nProcessed = 0;}
58
59
void
processCandidate
(
lsst::afw::math::SpatialCellCandidate
*candidate);
60
61
private
:
62
lsst::afw::math::KernelList
const
_basisList;
63
lsst::daf::base::PropertySet::Ptr
_ps;
64
Eigen::MatrixXd
const
_hMat;
65
ImageStatistics<PixelT>
_imstats;
66
bool
_skipBuilt;
67
int
_nRejected;
68
int
_nProcessed;
69
bool
_useRegularization;
70
71
bool
_useCoreStats;
72
int
_coreRadius;
73
};
74
75
template
<
typename
PixelT>
76
std::shared_ptr<BuildSingleKernelVisitor<PixelT>
>
77
makeBuildSingleKernelVisitor
(
78
lsst::afw::math::KernelList
const
& basisList,
79
lsst::daf::base::PropertySet
const
& ps
80
) {
81
82
return
std::shared_ptr<BuildSingleKernelVisitor<PixelT>
>(
83
new
BuildSingleKernelVisitor<PixelT>
(basisList, ps)
84
);
85
}
86
87
template
<
typename
PixelT>
88
std::shared_ptr<BuildSingleKernelVisitor<PixelT>
>
89
makeBuildSingleKernelVisitor
(
90
lsst::afw::math::KernelList
const
& basisList,
91
lsst::daf::base::PropertySet
const
& ps,
92
Eigen::MatrixXd
const
& hMat
93
) {
94
95
return
std::shared_ptr<BuildSingleKernelVisitor<PixelT>
>(
96
new
BuildSingleKernelVisitor<PixelT>
(basisList, ps, hMat)
97
);
98
}
99
100
}}}}
// end of namespace lsst::ip::diffim::detail
101
102
#endif
lsst::afw::math::SpatialCellCandidate
lsst::ip::diffim::detail::BuildSingleKernelVisitor::getNRejected
int getNRejected()
Definition:
BuildSingleKernelVisitor.h:55
std::shared_ptr
STL class.
lsst::ip::diffim::ImageStatistics
Class to calculate difference image statistics.
Definition:
ImageStatistics.h:59
std::vector
STL class.
lsst::afw::math::CandidateVisitor
lsst::ip::diffim::detail::BuildSingleKernelVisitor::BuildSingleKernelVisitor
BuildSingleKernelVisitor(lsst::afw::math::KernelList const &basisList, lsst::daf::base::PropertySet const &ps)
Definition:
BuildSingleKernelVisitor.cc:88
lsst::ip::diffim::detail::BuildSingleKernelVisitor::Ptr
std::shared_ptr< BuildSingleKernelVisitor< PixelT > > Ptr
Definition:
BuildSingleKernelVisitor.h:33
lsst::ip::diffim::detail::BuildSingleKernelVisitor::setSkipBuilt
void setSkipBuilt(bool skip)
Definition:
BuildSingleKernelVisitor.h:53
lsst::afw::image::MaskedImage< PixelT >
image.h
lsst::ip::diffim::detail::BuildSingleKernelVisitor
Builds the convolution kernel for a given candidate.
Definition:
BuildSingleKernelVisitor.h:30
math.h
PropertySet.h
lsst::ip::diffim::detail::BuildSingleKernelVisitor::processCandidate
void processCandidate(lsst::afw::math::SpatialCellCandidate *candidate)
Definition:
BuildSingleKernelVisitor.cc:128
lsst::ip::diffim::detail::BuildSingleKernelVisitor::reset
void reset()
Definition:
BuildSingleKernelVisitor.h:57
lsst
lsst::ip::diffim::detail::BuildSingleKernelVisitor::~BuildSingleKernelVisitor
virtual ~BuildSingleKernelVisitor()
Definition:
BuildSingleKernelVisitor.h:44
lsst::daf::base::PropertySet
lsst::ip::diffim::detail::BuildSingleKernelVisitor::getNProcessed
int getNProcessed()
Definition:
BuildSingleKernelVisitor.h:56
lsst::ip::diffim::detail::makeBuildSingleKernelVisitor
std::shared_ptr< BuildSingleKernelVisitor< PixelT > > makeBuildSingleKernelVisitor(lsst::afw::math::KernelList const &basisList, lsst::daf::base::PropertySet const &ps)
Definition:
BuildSingleKernelVisitor.h:77
ImageStatistics.h
Image Subtraction helper functions.
Generated on Thu Jul 16 2020 09:29:01 for lsst.ip.diffim by
1.8.18