SourceXtractorPlusPlus
0.13
Please provide a description of the project.
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
SEFramework
SEFramework
Background
BackgroundAnalyzer.h
Go to the documentation of this file.
1
17
/*
18
* BackgroundAnalyzer.h
19
*
20
* Created on: Mar 28, 2017
21
* Author: mschefer
22
*/
23
24
#ifndef _SEFRAMEWORK_BACKGROUND_BACKGROUNDANALYZER_H_
25
#define _SEFRAMEWORK_BACKGROUND_BACKGROUNDANALYZER_H_
26
27
#include "
SEFramework/Frame/Frame.h
"
28
#include "
SEFramework/Image/FunctionalImage.h
"
29
30
namespace
SourceXtractor {
31
32
33
class
BackgroundModel
{
34
public
:
35
36
BackgroundModel
(
std::shared_ptr
<
Image<SeFloat>
> background_level,
std::shared_ptr
<
Image<SeFloat>
> background_variance,
37
SeFloat
scaling_factor,
SeFloat
median_rms) :
38
m_background_level
(background_level),
39
m_scaling_factor
(scaling_factor),
40
m_median_rms
(median_rms) {
41
// make sure the variance is a positive value
42
m_background_variance
=
FunctionalImage<SeFloat>::create
(
43
background_variance->getWidth(), background_variance->getHeight(),
44
[background_variance](
int
x
,
int
y
) ->
SeFloat
{
45
// just set everything below zero to 0.0
46
//return background_variance->getValue(x,y) < 0.0 ? 0.0 : background_variance->getValue(x,y);
47
// the long version for "fabs()"
48
//return background_variance->getValue(x,y) < 0.0 ? -1.0*background_variance->getValue(x,y) : background_variance->getValue(x,y);
49
// the short version for "fabs()"
50
return
fabs
(background_variance->getValue(x,
y
));
51
}
52
);
53
}
54
55
std::shared_ptr<Image<SeFloat>
>
getLevelMap
()
const
{
56
return
m_background_level
;
57
}
58
59
std::shared_ptr<Image<SeFloat>
>
getVarianceMap
()
const
{
60
return
m_background_variance
;
61
}
62
63
SeFloat
getScalingFactor
()
const
{
64
return
m_scaling_factor
;
65
}
66
67
SeFloat
getMedianRms
()
const
{
68
return
m_median_rms
;
69
}
70
71
private
:
72
std::shared_ptr<Image<SeFloat>
>
m_background_level
;
73
std::shared_ptr<Image<SeFloat>
>
m_background_variance
;
74
SeFloat
m_scaling_factor
,
m_median_rms
;
75
};
76
77
class
BackgroundAnalyzer
{
78
public
:
79
80
virtual
~BackgroundAnalyzer
() =
default
;
81
82
virtual
BackgroundModel
analyzeBackground
(
83
std::shared_ptr<DetectionImage>
image,
std::shared_ptr<WeightImage>
variance_map,
84
std::shared_ptr
<
Image<unsigned char>
> mask,
WeightImage::PixelType
variance_threshold)
const
= 0;
85
};
86
87
}
88
89
90
#endif
/* SEFRAMEWORK_SEFRAMEWORK_BACKGROUND_BACKGROUNDANALYZER_H_ */
SourceXtractor::BackgroundAnalyzer::~BackgroundAnalyzer
virtual ~BackgroundAnalyzer()=default
FunctionalImage.h
std::shared_ptr
SourceXtractor::BackgroundModel
Definition:
BackgroundAnalyzer.h:33
SourceXtractor::Image::PixelType
T PixelType
Definition:
Image.h:47
x
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > x
Definition:
MoffatModelFittingTask.cpp:94
SourceXtractor::BackgroundModel::BackgroundModel
BackgroundModel(std::shared_ptr< Image< SeFloat >> background_level, std::shared_ptr< Image< SeFloat >> background_variance, SeFloat scaling_factor, SeFloat median_rms)
Definition:
BackgroundAnalyzer.h:36
SourceXtractor::SeFloat
SeFloat32 SeFloat
Definition:
Types.h:32
SourceXtractor::BackgroundAnalyzer
Definition:
BackgroundAnalyzer.h:77
SourceXtractor::FunctionalImage::create
static std::shared_ptr< ImageBase< T > > create(Args &&...args)
Definition:
FunctionalImage.h:44
y
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > y
Definition:
MoffatModelFittingTask.cpp:94
SourceXtractor::BackgroundModel::m_scaling_factor
SeFloat m_scaling_factor
Definition:
BackgroundAnalyzer.h:74
Frame.h
SourceXtractor::BackgroundModel::getLevelMap
std::shared_ptr< Image< SeFloat > > getLevelMap() const
Definition:
BackgroundAnalyzer.h:55
SourceXtractor::BackgroundModel::getScalingFactor
SeFloat getScalingFactor() const
Definition:
BackgroundAnalyzer.h:63
std::fabs
T fabs(T...args)
SourceXtractor::BackgroundModel::m_background_variance
std::shared_ptr< Image< SeFloat > > m_background_variance
Definition:
BackgroundAnalyzer.h:73
SourceXtractor::BackgroundAnalyzer::analyzeBackground
virtual BackgroundModel analyzeBackground(std::shared_ptr< DetectionImage > image, std::shared_ptr< WeightImage > variance_map, std::shared_ptr< Image< unsigned char >> mask, WeightImage::PixelType variance_threshold) const =0
SourceXtractor::Image
Interface representing an image.
Definition:
Image.h:43
SourceXtractor::BackgroundModel::getMedianRms
SeFloat getMedianRms() const
Definition:
BackgroundAnalyzer.h:67
SourceXtractor::BackgroundModel::m_median_rms
SeFloat m_median_rms
Definition:
BackgroundAnalyzer.h:74
SourceXtractor::BackgroundModel::m_background_level
std::shared_ptr< Image< SeFloat > > m_background_level
Definition:
BackgroundAnalyzer.h:72
SourceXtractor::BackgroundModel::getVarianceMap
std::shared_ptr< Image< SeFloat > > getVarianceMap() const
Definition:
BackgroundAnalyzer.h:59
Generated by
1.8.5