SourceXtractorPlusPlus  0.10
Please provide a description of the project.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
ModelFitting::CompactModelBase< ImageType > Class Template Reference

#include <CompactModelBase.h>

Inheritance diagram for ModelFitting::CompactModelBase< ImageType >:
[legend]
Collaboration diagram for ModelFitting::CompactModelBase< ImageType >:
[legend]

Public Member Functions

 CompactModelBase (std::shared_ptr< BasicParameter > x_scale, std::shared_ptr< BasicParameter > y_scale, std::shared_ptr< BasicParameter > rotation, double width, double height, std::shared_ptr< BasicParameter > x, std::shared_ptr< BasicParameter > y, std::tuple< double, double, double, double > transform)
 
virtual ~CompactModelBase ()=default
 
- Public Member Functions inherited from ModelFitting::ExtendedModel< ImageType >
 ExtendedModel (std::vector< std::unique_ptr< ModelComponent >> &&component_list, std::shared_ptr< BasicParameter > x_scale, std::shared_ptr< BasicParameter > y_scale, std::shared_ptr< BasicParameter > rotation_angle, double width, double height, std::shared_ptr< BasicParameter > x, std::shared_ptr< BasicParameter > y)
 
 ExtendedModel (ExtendedModel &&)=default
 
virtual ~ExtendedModel ()=default
 
virtual double getValue (double x, double y) const
 
virtual ImageType getRasterizedImage (double pixel_scale, std::size_t size_x, std::size_t size_y) const
 
double getWidth () const
 
double getHeight () const
 
- Public Member Functions inherited from ModelFitting::PositionedModel
 PositionedModel (std::shared_ptr< BasicParameter > x, std::shared_ptr< BasicParameter > y)
 
 PositionedModel (PositionedModel &&other)
 
virtual ~PositionedModel ()=default
 
double getX () const
 
double getY () const
 

Protected Member Functions

Mat22 getCombinedTransform (double pixel_scale) const
 
template<typename ModelEvaluator >
float samplePixel (const ModelEvaluator &model_eval, int x, int y, unsigned int subsampling) const
 
template<typename ModelEvaluator >
float adaptiveSamplePixel (const ModelEvaluator &model_eval, int x, int y, unsigned int max_subsampling, float threshold=1.1) const
 

Protected Attributes

Mat22 m_jacobian
 
Mat22 m_inv_jacobian
 
- Protected Attributes inherited from ModelFitting::ExtendedModel< ImageType >
std::vector< std::unique_ptr
< ModelComponent > > 
m_component_list {}
 

Private Attributes

std::shared_ptr< BasicParameterm_x_scale
 
std::shared_ptr< BasicParameterm_y_scale
 
std::shared_ptr< BasicParameterm_rotation
 

Detailed Description

template<typename ImageType>
class ModelFitting::CompactModelBase< ImageType >

Definition at line 21 of file CompactModelBase.h.

Constructor & Destructor Documentation

template<typename ImageType >
ModelFitting::CompactModelBase< ImageType >::CompactModelBase ( std::shared_ptr< BasicParameter x_scale,
std::shared_ptr< BasicParameter y_scale,
std::shared_ptr< BasicParameter rotation,
double  width,
double  height,
std::shared_ptr< BasicParameter x,
std::shared_ptr< BasicParameter y,
std::tuple< double, double, double, double >  transform 
)

Definition at line 11 of file CompactModelBase.icpp.

template<typename ImageType >
virtual ModelFitting::CompactModelBase< ImageType >::~CompactModelBase ( )
virtualdefault

Member Function Documentation

template<typename ImageType >
template<typename ModelEvaluator >
float ModelFitting::CompactModelBase< ImageType >::adaptiveSamplePixel ( const ModelEvaluator &  model_eval,
int  x,
int  y,
unsigned int  max_subsampling,
float  threshold = 1.1 
) const
inlineprotected

Definition at line 61 of file CompactModelBase.icpp.

template<typename ImageType >
Mat22 ModelFitting::CompactModelBase< ImageType >::getCombinedTransform ( double  pixel_scale) const
protected

Definition at line 24 of file CompactModelBase.icpp.

References std::cos(), ModelFitting::m_rotation(), ModelFitting::m_x_scale(), ModelFitting::m_y_scale(), pixel_scale, ModelFitting::rotation, s, and std::sin().

Here is the call graph for this function:

template<typename ImageType >
template<typename ModelEvaluator >
float ModelFitting::CompactModelBase< ImageType >::samplePixel ( const ModelEvaluator &  model_eval,
int  x,
int  y,
unsigned int  subsampling 
) const
inlineprotected

Definition at line 46 of file CompactModelBase.icpp.

Member Data Documentation

template<typename ImageType >
Mat22 ModelFitting::CompactModelBase< ImageType >::m_inv_jacobian
protected

Definition at line 42 of file CompactModelBase.h.

template<typename ImageType >
Mat22 ModelFitting::CompactModelBase< ImageType >::m_jacobian
protected

Definition at line 41 of file CompactModelBase.h.

template<typename ImageType >
std::shared_ptr<BasicParameter> ModelFitting::CompactModelBase< ImageType >::m_rotation
private

Definition at line 47 of file CompactModelBase.h.

template<typename ImageType >
std::shared_ptr<BasicParameter> ModelFitting::CompactModelBase< ImageType >::m_x_scale
private

Definition at line 45 of file CompactModelBase.h.

template<typename ImageType >
std::shared_ptr<BasicParameter> ModelFitting::CompactModelBase< ImageType >::m_y_scale
private

Definition at line 46 of file CompactModelBase.h.


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