10 #ifndef IMPEM2D_PCA_FIT_RESTRAINT_H
11 #define IMPEM2D_PCA_FIT_RESTRAINT_H
13 #include <IMP/em2d/em2d_config.h>
14 #include <IMP/em2d/internal/Image2D.h>
15 #include <IMP/em2d/internal/Projector.h>
19 IMPEM2D_BEGIN_NAMESPACE
49 const std::vector<std::string>& image_files,
50 double pixel_size,
double resolution = 10.0,
51 unsigned int projection_number = 100,
52 bool reuse_direction =
false,
53 unsigned int n_components = 1);
55 double unprotected_evaluate(
58 unsigned int get_projection_number()
const {
return projection_number_; }
60 void set_projection_number(
unsigned int n) { projection_number_ = n; }
81 void write_best_projections(std::string file_name,
bool evaluate=
false);
97 std::vector<internal::Image2D<> > images_;
109 unsigned int projection_number_;
112 mutable std::vector<internal::Image2D<> > best_projections_;
115 mutable std::vector<internal::ProjectionInfo> best_projections_info_;
117 mutable std::vector<internal::ImageTransform> best_image_transform_;
120 internal::Projector projector_;
123 bool reuse_direction_;
126 unsigned int n_components_;
128 mutable unsigned long counter_;
131 IMPEM2D_END_NAMESPACE
virtual RestraintInfo * get_static_info() const
virtual RestraintInfo * get_dynamic_info() const
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Fast scoring of Particles against electron microscopy class averages.
IMP::ModelObjectsTemp do_get_inputs() const
double get_cross_correlation_coefficient(Image *im1, Image *im2)
Cross correlation between two images.
Report key:value information on restraints.
Abstract base class for all restraints.
#define IMP_OVERRIDE
Cause a compile error if this method does not override a parent method.
Class for adding derivatives from restraints to the model.
A restraint is a term in an IMP ScoringFunction.