IMP logo
IMP Reference Guide  develop.ba5ef9f91e,2024/02/26
The Integrative Modeling Platform
IMP::em2d::RegistrationResult Class Reference

Class to manage registration results. More...

#include <IMP/em2d/RegistrationResult.h>

Detailed Description

Class to manage registration results.

Note
Stores the rotation and in-plane translation needed to register a model with an EM image. The values can come from a coarse registration, or from a fine registration (optimized with simplex). In the second case, the function get_is_optimized_result() will return true Contains:
  • Rotation in 3D of the model to register its projection with an image
  • The rotation is understood as ZYZ
  • shift shift to apply to the projection of the model (after rotation) to align it with the given image

Definition at line 36 of file RegistrationResult.h.

Public Member Functions

 RegistrationResult (double phi, double theta, double psi, algebra::Vector2D shift, int projection_index=0, int image_index=0, String name="")
 
 RegistrationResult (algebra::Rotation3D R, algebra::Vector2D shift=algebra::Vector2D(0., 0.), int projection_index=0, int image_index=0, String name="")
 
void add_in_plane_transformation (algebra::Transformation2D t)
 
double get_ccc () const
 
int get_image_index () const
 Image that has been registered. More...
 
bool get_is_optimized_result () const
 
String get_name () const
 Name of the object. More...
 
double get_phi () const
 
int get_projection_index () const
 Projection that best matches the image after coarse registration. More...
 
double get_psi () const
 
algebra::Rotation3D get_rotation () const
 Returns the rotation for the 3 projection angles. More...
 
double get_score () const
 
algebra::Vector2D get_shift () const
 
algebra::Vector3D get_shift_3d () const
 
double get_theta () const
 
void read (const String &s)
 read More...
 
void read_from_image (const em::ImageHeader &header)
 Reads the registration parameters from an image. More...
 
void set_ccc (double ccc)
 
void set_image_index (int index)
 Index of the image that is registered. More...
 
void set_in_image (em::ImageHeader &header) const
 Sets the registration results to the header of an image. More...
 
void set_name (String name)
 
void set_projection_index (int index)
 
void set_random_registration (unsigned int index, double maximum_shift)
 Gets a random result. More...
 
void set_rotation (double phi, double theta, double psi)
 Rotation to apply to the model. More...
 
void set_rotation (algebra::Rotation3D R)
 Rotation to apply to the model. More...
 
void set_score (double Score)
 
void set_shift (algebra::Vector2D shift)
 Shift to apply to the projection to register. More...
 
void show (std::ostream &out=std::cout) const
 
void write (std::ostream &out=std::cout) const
 Writes a parseable result. More...
 
void write_comment_line (std::ostream &out=std::cout) const
 Writes an info line to with the contents of a result line. More...
 

Protected Attributes

double ccc_
 Cross correlation coefficient. More...
 
int image_index_
 index of the image being registered More...
 
bool is_optimized_result_
 
String name_
 name and index of the projection compared More...
 
double phi_
 Euler angles (ZYZ) More...
 
int projection_index_
 
double psi_
 
algebra::Rotation3D R_
 
double Score_
 Score. More...
 
algebra::Vector2D shift_
 Translation in pixels and the rows first (y rows, x columns) More...
 
double theta_
 

Member Function Documentation

void IMP::em2d::RegistrationResult::add_in_plane_transformation ( algebra::Transformation2D  t)

adds an in-plane transformation to the result stored The translation is understood as a shift (in pixels)

double IMP::em2d::RegistrationResult::get_ccc ( ) const

Cross correlation coefficient between the image and the projection of the model after registration

Definition at line 75 of file RegistrationResult.h.

int IMP::em2d::RegistrationResult::get_image_index ( ) const

Image that has been registered.

Definition at line 65 of file RegistrationResult.h.

String IMP::em2d::RegistrationResult::get_name ( ) const

Name of the object.

Definition at line 71 of file RegistrationResult.h.

int IMP::em2d::RegistrationResult::get_projection_index ( ) const

Projection that best matches the image after coarse registration.

Definition at line 60 of file RegistrationResult.h.

algebra::Rotation3D IMP::em2d::RegistrationResult::get_rotation ( ) const

Returns the rotation for the 3 projection angles.

Definition at line 126 of file RegistrationResult.h.

double IMP::em2d::RegistrationResult::get_score ( ) const

Returns the score computed by the ScoreFunction comparing an image and a projection

Definition at line 84 of file RegistrationResult.h.

void IMP::em2d::RegistrationResult::read ( const String s)

read

void IMP::em2d::RegistrationResult::read_from_image ( const em::ImageHeader header)

Reads the registration parameters from an image.

void IMP::em2d::RegistrationResult::set_image_index ( int  index)

Index of the image that is registered.

Definition at line 68 of file RegistrationResult.h.

void IMP::em2d::RegistrationResult::set_in_image ( em::ImageHeader header) const

Sets the registration results to the header of an image.

void IMP::em2d::RegistrationResult::set_random_registration ( unsigned int  index,
double  maximum_shift 
)

Gets a random result.

void IMP::em2d::RegistrationResult::set_rotation ( double  phi,
double  theta,
double  psi 
)

Rotation to apply to the model.

Definition at line 92 of file RegistrationResult.h.

+ Here is the call graph for this function:

void IMP::em2d::RegistrationResult::set_rotation ( algebra::Rotation3D  R)

Rotation to apply to the model.

void IMP::em2d::RegistrationResult::set_shift ( algebra::Vector2D  shift)

Shift to apply to the projection to register.

Definition at line 103 of file RegistrationResult.h.

void IMP::em2d::RegistrationResult::write ( std::ostream &  out = std::cout) const

Writes a parseable result.

void IMP::em2d::RegistrationResult::write_comment_line ( std::ostream &  out = std::cout) const

Writes an info line to with the contents of a result line.

Member Data Documentation

double IMP::em2d::RegistrationResult::ccc_
protected

Cross correlation coefficient.

Definition at line 142 of file RegistrationResult.h.

int IMP::em2d::RegistrationResult::image_index_
protected

index of the image being registered

Definition at line 150 of file RegistrationResult.h.

String IMP::em2d::RegistrationResult::name_
protected

name and index of the projection compared

Definition at line 147 of file RegistrationResult.h.

double IMP::em2d::RegistrationResult::phi_
protected

Euler angles (ZYZ)

Definition at line 152 of file RegistrationResult.h.

double IMP::em2d::RegistrationResult::Score_
protected

Score.

Definition at line 145 of file RegistrationResult.h.

algebra::Vector2D IMP::em2d::RegistrationResult::shift_
protected

Translation in pixels and the rows first (y rows, x columns)

Definition at line 140 of file RegistrationResult.h.


The documentation for this class was generated from the following file: