CR2RE Pipeline Reference Manual 1.6.8
hdrl_bpm_fit.h
1/*
2 * This file is part of the HDRL
3 * Copyright (C) 2014 European Southern Observatory
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18 */
19
20#ifndef HDRL_BPM_FIT_H
21#define HDRL_BPM_FIT_H
22
23/*-----------------------------------------------------------------------------
24 Includes
25 -----------------------------------------------------------------------------*/
26
27#include "hdrl_parameter.h"
28#include "hdrl_image.h"
29#include "hdrl_imagelist.h"
30#include <cpl.h>
31
32CPL_BEGIN_DECLS
33
34/*-----------------------------------------------------------------------------
35 Functions prototypes
36 -----------------------------------------------------------------------------*/
37
38/*----------------------------------------------------------------------------
39 BPM Parameters
40 ----------------------------------------------------------------------------*/
41hdrl_parameter * hdrl_bpm_fit_parameter_create_pval(int, double);
42hdrl_parameter * hdrl_bpm_fit_parameter_create_rel_chi(int, double, double);
43hdrl_parameter * hdrl_bpm_fit_parameter_create_rel_coef(int, double, double);
44cpl_boolean hdrl_bpm_fit_parameter_check(const hdrl_parameter * self);
45cpl_error_code hdrl_bpm_fit_parameter_verify(const hdrl_parameter *) ;
46
47/* Accessors */
48int hdrl_bpm_fit_parameter_get_degree(const hdrl_parameter *);
49double hdrl_bpm_fit_parameter_get_pval(const hdrl_parameter *);
50double hdrl_bpm_fit_parameter_get_rel_chi_low(const hdrl_parameter *);
51double hdrl_bpm_fit_parameter_get_rel_chi_high(const hdrl_parameter *);
52double hdrl_bpm_fit_parameter_get_rel_coef_low(const hdrl_parameter *);
53double hdrl_bpm_fit_parameter_get_rel_coef_high(const hdrl_parameter *);
54
55/* Parameter Lists */
56cpl_parameterlist * hdrl_bpm_fit_parameter_create_parlist(const char *,
57 const char *, const hdrl_parameter *);
59 const cpl_parameterlist *,
60 const char *);
61
62/*----------------------------------------------------------------------------
63 BPM_FIT Computation
64 ----------------------------------------------------------------------------*/
65
66cpl_error_code
67hdrl_bpm_fit_compute(const hdrl_parameter * par,
68 const hdrl_imagelist * data,
69 const cpl_vector * sample_pos,
70 cpl_image ** out_mask);
71
72/*-----------------------------------------------------------------------------
73 Private declarations - must not be used outside of hdrl
74 -----------------------------------------------------------------------------*/
75
76#ifdef HDRL_USE_PRIVATE
77
78#endif
79
80CPL_END_DECLS
81
82#endif
hdrl_parameter * hdrl_bpm_fit_parameter_create_rel_coef(int, double, double)
create bpm_fit parameter with relative coefficient bpm treshold
Definition: hdrl_bpm_fit.c:176
hdrl_parameter * hdrl_bpm_fit_parameter_parse_parlist(const cpl_parameterlist *, const char *)
Parse a parameterlist to create input parameters for the BPM_FIT.
Definition: hdrl_bpm_fit.c:442
double hdrl_bpm_fit_parameter_get_rel_chi_high(const hdrl_parameter *)
get relative chi distribution upper threshold
Definition: hdrl_bpm_fit.c:308
double hdrl_bpm_fit_parameter_get_rel_coef_high(const hdrl_parameter *)
get relative fit coefficient distribution upper threshold
Definition: hdrl_bpm_fit.c:338
int hdrl_bpm_fit_parameter_get_degree(const hdrl_parameter *)
get degree of polynomial fit of parameter
Definition: hdrl_bpm_fit.c:263
cpl_error_code hdrl_bpm_fit_parameter_verify(const hdrl_parameter *)
verify that the parameter is a valid bpm_fit_parameter
Definition: hdrl_bpm_fit.c:202
cpl_parameterlist * hdrl_bpm_fit_parameter_create_parlist(const char *, const char *, const hdrl_parameter *)
Create a parameter list for the BPM_FIT computation.
Definition: hdrl_bpm_fit.c:363
CPL_BEGIN_DECLS hdrl_parameter * hdrl_bpm_fit_parameter_create_pval(int, double)
create bpm_fit parameter with p-value bpm treshold
Definition: hdrl_bpm_fit.c:142
double hdrl_bpm_fit_parameter_get_pval(const hdrl_parameter *)
get p-value bpm treshold
Definition: hdrl_bpm_fit.c:278
double hdrl_bpm_fit_parameter_get_rel_chi_low(const hdrl_parameter *)
get relative chi distribution lower threshold
Definition: hdrl_bpm_fit.c:293
hdrl_parameter * hdrl_bpm_fit_parameter_create_rel_chi(int, double, double)
create bpm_fit parameter with relative chi bpm treshold
Definition: hdrl_bpm_fit.c:158
cpl_boolean hdrl_bpm_fit_parameter_check(const hdrl_parameter *self)
Check that the parameter is a bpm_fit parameter.
Definition: hdrl_bpm_fit.c:190
double hdrl_bpm_fit_parameter_get_rel_coef_low(const hdrl_parameter *)
get relative fit coefficient distribution lower threshold
Definition: hdrl_bpm_fit.c:323
cpl_error_code hdrl_bpm_fit_compute(const hdrl_parameter *par, const hdrl_imagelist *data, const cpl_vector *sample_pos, cpl_image **out_mask)
compute bad pixel map based on fitting a stack of images
Definition: hdrl_bpm_fit.c:587