29 #ifndef LSST_AFW_IMAGE_IMAGEPCA_H
30 #define LSST_AFW_IMAGE_IMAGEPCA_H
36 #include "boost/mpl/bool.hpp"
37 #include "boost/shared_ptr.hpp"
46 template <
typename ImageT>
49 typedef typename boost::shared_ptr<ImageT>
Ptr;
50 typedef typename boost::shared_ptr<const ImageT>
ConstPtr;
52 typedef std::vector<typename ImageT::Ptr>
ImageList;
54 explicit ImagePca(
bool constantWeight=
true);
57 void addImage(
typename ImageT::Ptr img,
double flux=0.0);
63 typename ImageT::Ptr
getMean()
const;
85 template <
typename Image1T,
typename Image2T>
86 double innerProduct(Image1T
const& lhs, Image2T
const& rhs,
int const border=0);
ImageList getImageList() const
Return the list of images being analyzed.
double getFlux(int i) const
ImageList const & getEigenImages() const
Return Eigen images.
double innerProduct(Image1T const &lhs, Image2T const &rhs, int const border=0)
std::vector< double > _fluxList
table::Key< table::Array< Kernel::Pixel > > image
boost::shared_ptr< const ImageT > ConstPtr
std::vector< double > const & getEigenValues() const
Return Eigen values.
std::vector< double > _eigenValues
geom::Extent2I _dimensions
std::vector< typename ImageT::Ptr > ImageList
void addImage(typename ImageT::Ptr img, double flux=0.0)
Implementation of the Class MaskedImage.
boost::shared_ptr< ImageT > Ptr
geom::Extent2I const getDimensions() const
Return the dimension of the images being analyzed.
ImagePca(bool constantWeight=true)
ctor
virtual double updateBadPixels(unsigned long mask, int const ncomp)
Include files required for standard LSST Exception handling.
ImageT::Ptr getMean() const