lsst.meas.algorithms
14.0-18-gf7dca964+2
|
CoaddPsf is the Psf derived to be used for non-PSF-matched Coadd images. More...
#include <CoaddPsf.h>
Classes | |
class | Factory |
Public Types | |
enum | ImageOwnerEnum |
typedef math::Kernel::Pixel | Pixel |
typedef image::Image< Pixel > | Image |
typedef unsigned long | memId |
typedef memId(* | memNewCallback) (const memId cid) |
typedef memId(* | memCallback) (const Citizen *ptr) |
typedef std::shared_ptr< Persistable > | Ptr |
Public Member Functions | |
CoaddPsf (afw::table::ExposureCatalog const &catalog, afw::geom::SkyWcs const &coaddWcs, std::string const &weightFieldName="weight", std::string const &warpingKernelName="lanczos3", int cacheSize=10000) | |
Main constructors for CoaddPsf. More... | |
CoaddPsf (afw::table::ExposureCatalog const &catalog, afw::geom::SkyWcs const &coaddWcs, CoaddPsfControl const &ctrl, std::string const &weightFieldName="weight") | |
Constructor for CoaddPsf. More... | |
virtual boost::shared_ptr< afw::detection::Psf > | clone () const |
Polymorphic deep copy. Usually unnecessary, as Psfs are immutable. More... | |
virtual boost::shared_ptr< afw::detection::Psf > | resized (int width, int height) const |
Return a clone with specified kernel dimensions. More... | |
virtual afw::geom::Point2D | getAveragePosition () const |
Return the average of the positions of the stars that went into this Psf. More... | |
afw::geom::SkyWcs | getCoaddWcs () |
Return the Wcs of the coadd (defines the coordinate system of the Psf). More... | |
int | getComponentCount () const |
Return the number of component Psfs in this CoaddPsf. More... | |
boost::shared_ptr< afw::detection::Psf const > | getPsf (int index) |
Get the Psf of the component image at index. More... | |
afw::geom::SkyWcs | getWcs (int index) |
Get the Wcs of the component image at index. More... | |
double | getWeight (int index) |
Get the weight of the component image at index. More... | |
afw::table::RecordId | getId (int index) |
Get the exposure ID of the component image at index. More... | |
afw::geom::Box2I | getBBox (int index) |
Get the bounding box (in component image Pixel coordinates) of the component image at index. More... | |
boost::shared_ptr< afw::geom::polygon::Polygon const > | getValidPolygon (int index) |
Get the validPolygon (in component image Pixel coordinates) of the component image at index. More... | |
virtual bool | isPersistable () const |
Return true if the CoaddPsf persistable (always true). More... | |
std::shared_ptr< Image > | computeImage (geom::Point2D position=makeNullPoint(), image::Color color=image::Color(), ImageOwnerEnum owner=COPY) const |
std::shared_ptr< Image > | computeKernelImage (geom::Point2D position=makeNullPoint(), image::Color color=image::Color(), ImageOwnerEnum owner=COPY) const |
double | computePeak (geom::Point2D position=makeNullPoint(), image::Color color=image::Color()) const |
double | computeApertureFlux (double radius, geom::Point2D position=makeNullPoint(), image::Color color=image::Color()) const |
geom::ellipses::Quadrupole | computeShape (geom::Point2D position=makeNullPoint(), image::Color color=image::Color()) const |
std::shared_ptr< math::Kernel const > | getLocalKernel (geom::Point2D position=makeNullPoint(), image::Color color=image::Color()) const |
image::Color | getAverageColor () const |
geom::Box2I | computeBBox (geom::Point2D position=makeNullPoint(), image::Color color=image::Color()) const |
void | writeFits (std::string const &fileName, std::string const &mode="w") const |
void | writeFits (fits::MemFileManager &manager, std::string const &mode="w") const |
void | writeFits (fits::Fits &fitsfile) const |
std::string | repr () const |
void | markPersistent (void) |
memId | getId () const |
void | serialize (Archive &, unsigned int const) |
Static Public Member Functions | |
static std::shared_ptr< CoaddPsf > | readFits (fits::Fits &fitsfile) |
static std::shared_ptr< CoaddPsf > | readFits (std::string const &fileName, int hdu=fits::DEFAULT_HDU) |
static std::shared_ptr< CoaddPsf > | readFits (fits::MemFileManager &manager, int hdu=fits::DEFAULT_HDU) |
static std::shared_ptr< ImagePsf > | readFits (fits::Fits &fitsfile) |
static std::shared_ptr< ImagePsf > | readFits (std::string const &fileName, int hdu=fits::DEFAULT_HDU) |
static std::shared_ptr< ImagePsf > | readFits (fits::MemFileManager &manager, int hdu=fits::DEFAULT_HDU) |
static std::shared_ptr< Psf > | readFits (fits::Fits &fitsfile) |
static std::shared_ptr< Psf > | readFits (std::string const &fileName, int hdu=fits::DEFAULT_HDU) |
static std::shared_ptr< Psf > | readFits (fits::MemFileManager &manager, int hdu=fits::DEFAULT_HDU) |
static std::shared_ptr< Psf > | readFits (fits::Fits &fitsfile) |
static std::shared_ptr< Psf > | readFits (fits::MemFileManager &manager, int hdu=fits::DEFAULT_HDU) |
static std::shared_ptr< Image > | recenterKernelImage (std::shared_ptr< Image > im, geom::Point2D const &position, std::string const &warpAlgorithm="lanczos5", unsigned int warpBuffer=5) |
static bool | hasBeenCorrupted () |
static memId | getNextMemId () |
static int | init () |
static int | census (int, memId startingMemId=0) |
static void | census (std::ostream &stream, memId startingMemId=0) |
static const std::vector< const Citizen *> * | census () |
static int | census (int, memId startingMemId=0) |
static void | census (std::ostream &stream, memId startingMemId=0) |
static const std::vector< const Citizen *> * | census () |
static memId | setNewCallbackId (memId id) |
static memId | setNewCallbackId (memId id) |
static memId | setDeleteCallbackId (memId id) |
static memId | setDeleteCallbackId (memId id) |
static memNewCallback | setNewCallback (memNewCallback func) |
static memCallback | setDeleteCallback (memCallback func) |
static memCallback | setCorruptionCallback (memCallback func) |
Public Attributes | |
COPY | |
INTERNAL | |
magicSentinel | |
Protected Types | |
typedef io::OutputArchiveHandle | OutputArchiveHandle |
Protected Member Functions | |
boost::shared_ptr< afw::detection::Psf::Image > | doComputeKernelImage (afw::geom::Point2D const &ccdXY, afw::image::Color const &color) const |
virtual afw::geom::Box2I | doComputeBBox (afw::geom::Point2D const &position, afw::image::Color const &color) const |
virtual std::string | getPersistenceName () const |
virtual std::string | getPythonModule () const |
virtual void | write (OutputArchiveHandle &handle) const |
CoaddPsf (afw::table::ExposureCatalog const &catalog, afw::geom::SkyWcs const &coaddWcs, afw::geom::Point2D const &averagePosition, std::string const &warpingKernelName="lanczos3", int cacheSize=10000) | |
virtual double | doComputeApertureFlux (double radius, afw::geom::Point2D const &position, afw::image::Color const &color) const |
virtual afw::geom::ellipses::Quadrupole | doComputeShape (afw::geom::Point2D const &position, afw::image::Color const &color) const |
virtual void | write (OutputArchiveHandle &handle) const |
CoaddPsf is the Psf derived to be used for non-PSF-matched Coadd images.
It incorporates the logic of James Jee's Stackfit algorithm for estimating the Psf of coadd by coadding the images of the Psf models of each input exposure.
Definition at line 58 of file CoaddPsf.h.
|
explicit |
Main constructors for CoaddPsf.
The ExposureCatalog contains info about each visit/ccd in Coadd; this must be provided to the constructor, and cannot be changed.
[in] | catalog | ExposureCatalog containing the id, bbox, wcs, psf and weight for each ccd/visit. This is usually the same catalog as the "ccds" catalog in the coadd Exposure's CoaddInputs. |
[in] | coaddWcs | Wcs for the coadd. |
[in] | weightFieldName | Field name that contains the weight of the exposure in the coadd; defaults to "weight". |
[in] | warpingKernelName | Name of warping kernel |
[in] | cacheSize | Warping kernel cache size |
Definition at line 142 of file CoaddPsf.cc.
|
inline |
Constructor for CoaddPsf.
The ExposureCatalog contains info about each visit/ccd in Coadd; this must be provided to the constructor, and cannot be changed.
[in] | catalog | ExposureCatalog containing the id, bbox, wcs, psf and weight for each ccd/visit. This is usually the same catalog as the "ccds" catalog in the coadd Exposure's CoaddInputs. |
[in] | coaddWcs | Wcs for the coadd. |
[in] | ctrl | Configuration options. |
[in] | weightFieldName | Field name that contains the weight of the exposure in the coadd; defaults to "weight". |
Definition at line 98 of file CoaddPsf.h.
|
explicitprotected |
catalog | Unpersisted catalog |
coaddWcs | WCS for the coadd |
averagePosition | Default position for accessors |
warpingKernelName | Warping kernel name |
cacheSize | Kernel cache size |
Definition at line 464 of file CoaddPsf.cc.
|
virtual |
Polymorphic deep copy. Usually unnecessary, as Psfs are immutable.
Implements lsst::afw::detection::Psf.
Definition at line 176 of file CoaddPsf.cc.
|
protectedvirtualinherited |
Definition at line 31 of file ImagePsf.cc.
|
protectedvirtual |
Definition at line 228 of file CoaddPsf.cc.
|
protected |
Definition at line 252 of file CoaddPsf.cc.
|
protectedvirtualinherited |
Definition at line 46 of file ImagePsf.cc.
|
inlinevirtual |
Return the average of the positions of the stars that went into this Psf.
For CoaddPsf, this is calculated as the weighted average of the average positions of all the component Psfs.
Reimplemented from lsst::afw::detection::Psf.
Definition at line 116 of file CoaddPsf.h.
afw::geom::Box2I lsst::meas::algorithms::CoaddPsf::getBBox | ( | int | index | ) |
Get the bounding box (in component image Pixel coordinates) of the component image at index.
[in] | index | Index of component for which the bounding box will be fetched. |
RangeError | Index of component is out of range. |
Definition at line 339 of file CoaddPsf.cc.
|
inline |
Return the Wcs of the coadd (defines the coordinate system of the Psf).
Definition at line 119 of file CoaddPsf.h.
int lsst::meas::algorithms::CoaddPsf::getComponentCount | ( | ) | const |
Return the number of component Psfs in this CoaddPsf.
Definition at line 300 of file CoaddPsf.cc.
afw::table::RecordId lsst::meas::algorithms::CoaddPsf::getId | ( | int | index | ) |
Get the exposure ID of the component image at index.
[in] | index | Index of component for which the exposure ID will be fetched. |
RangeError | Index of component is out of range. |
Definition at line 332 of file CoaddPsf.cc.
|
protectedvirtual |
Reimplemented from lsst::afw::detection::Psf.
Definition at line 447 of file CoaddPsf.cc.
boost::shared_ptr< afw::detection::Psf const > lsst::meas::algorithms::CoaddPsf::getPsf | ( | int | index | ) |
Get the Psf of the component image at index.
[in] | index | Index of component for which the Psf will be fetched. |
RangeError | Index of component is out of range. |
Definition at line 304 of file CoaddPsf.cc.
|
protectedvirtual |
Reimplemented from lsst::afw::detection::Psf.
Definition at line 449 of file CoaddPsf.cc.
boost::shared_ptr< afw::geom::polygon::Polygon const > lsst::meas::algorithms::CoaddPsf::getValidPolygon | ( | int | index | ) |
Get the validPolygon (in component image Pixel coordinates) of the component image at index.
[in] | index | Index of component for which the bounding box will be fetched. |
RangeError | Index of component is out of range. |
Definition at line 318 of file CoaddPsf.cc.
afw::geom::SkyWcs lsst::meas::algorithms::CoaddPsf::getWcs | ( | int | index | ) |
Get the Wcs of the component image at index.
[in] | index | Index of component for which the Wcs will be fetched. |
RangeError | Index of component is out of range. |
Definition at line 311 of file CoaddPsf.cc.
double lsst::meas::algorithms::CoaddPsf::getWeight | ( | int | index | ) |
Get the weight of the component image at index.
[in] | index | Index of component for which the weight will be fetched. |
RangeError | Index of component is out of range. |
Definition at line 325 of file CoaddPsf.cc.
|
inlinevirtual |
Return true if the CoaddPsf persistable (always true).
While it's actually possible to construct a CoaddPsf that isn't persistable (because its nested Psfs and Wcss are not persistable) in artificial situations, in realistic situations it's pretty much impossible, because persistence is a necessary part of how CoaddPsfs are built. And it's simpler and much faster if we just always return true, rather than loop over the elements and check each one.
Reimplemented from lsst::afw::detection::Psf.
Definition at line 187 of file CoaddPsf.h.
|
virtual |
Return a clone with specified kernel dimensions.
Implements lsst::afw::detection::Psf.
Definition at line 180 of file CoaddPsf.cc.
|
protectedvirtual |
Reimplemented from lsst::afw::detection::Psf.
Definition at line 451 of file CoaddPsf.cc.