Elaboradar  0.1
 Tutto Classi Namespace File Funzioni Variabili Tipi enumerati (enum) Gruppi
cleaner.h
Vai alla documentazione di questo file.
1 
5 #ifndef RADARELAB_ALGO_CLEANER_H
6 #define RADARELAB_ALGO_CLEANER_H
7 
8 #include <radarelab/volume.h>
9 #include <radarelab/loader.h>
10 
11 using namespace Eigen;
12 namespace radarelab {
13 namespace algo {
17 struct Cleaner
18 {
19  const unsigned min_segment_length = 2;
20  const unsigned max_segment_length = 40;
21 
22  const double Z_missing;
23  const double W_threshold;
24  const double V_missing;
25  const double bin_wind_magic_number;
26  const double sd_threshold = 2;
27 
29  Cleaner(double Z_missing, double W_threshold, double V_missing, double bin_wind_magic_number)
30  : Z_missing(Z_missing), W_threshold(W_threshold), V_missing(V_missing), bin_wind_magic_number(bin_wind_magic_number) {}
38  std::vector<bool> clean_beam(const Eigen::VectorXd& beam_z, const Eigen::VectorXd& beam_w, const Eigen::VectorXd& beam_v,int i) const;
48  std::vector<unsigned char> eval_clean_beam(const Eigen::VectorXd& beam_z, const Eigen::VectorXd& beam_w, const Eigen::VectorXd& beam_v,int i) const;
49 
64  std::vector<bool> clean_beam(const Eigen::VectorXd& beam_z, const Eigen::VectorXd& beam_w, const Eigen::VectorXd& beam_v, const Eigen::VectorXd& beam_sd, const Eigen::VectorXd& beam_sdzdr, PolarScan<double>& scan_z, PolarScan<double>& scan_w, PolarScan<double>& scan_v, PolarScan<double>& SD,int iray) const;
65 
79  std::vector<bool> clean_beam(const Eigen::VectorXd& beam_z, const Eigen::VectorXd& beam_w, const Eigen::VectorXd& beam_v, const Eigen::VectorXd& beam_sd, PolarScan<double>& scan_z, PolarScan<double>& scan_w, PolarScan<double>& scan_v, PolarScan<double>& SD,int iray) const;
80  std::vector<unsigned char> eval_clean_beam(const Eigen::VectorXd& beam_z, const Eigen::VectorXd& beam_w, const Eigen::VectorXd& beam_v, const Eigen::VectorXd& beam_sd, const Eigen::VectorXd& beam_sdray, const Eigen::VectorXd& beam_sdaz, int iray) const;
81  std::vector<unsigned char> eval_classID_beam(const Eigen::VectorXd& beam_z, const Eigen::VectorXd& beam_w, const Eigen::VectorXd& beam_v, const Eigen::VectorXd& beam_sd, const Eigen::VectorXd& beam_sdray, const Eigen::VectorXd& beam_sdaz, int iray) const;
82 
90  static void clean(PolarScan<double>& scan_Z, PolarScan<double>& scan_W, PolarScan<double>& scan_V,unsigned iel=0, bool set_undetect=false);
91  static void evaluateCleanID(PolarScan<double>& scan_Z, PolarScan<double>& scan_W, PolarScan<double>& scan_V,PolarScan<unsigned char>& scan_cleanID, unsigned iel=0);
100  static void clean(PolarScan<double>& scan_Z, PolarScan<double>& scan_W, PolarScan<double>& scan_V, double bin_wind_magic_number,unsigned iel=0, bool set_undetect=false);
101 
110  static void clean(PolarScan<double>& scan_Z, PolarScan<double>& scan_W, PolarScan<double>& scan_V, PolarScan<double>& scan_ZDR,unsigned iel=0, bool set_undetect=false);
111 
112  static void evaluateCleanID(PolarScan<double>& scan_Z, PolarScan<double>& scan_W, PolarScan<double>& scan_V,PolarScan<unsigned char>& scan_cleanID, double bin_wind_magic_number, unsigned iel=0);
113 
114  static void evaluateClassID(PolarScan<double>& scan_Z, PolarScan<double>& scan_W, PolarScan<double>& scan_V,PolarScan<unsigned char>& scan_cleanID, double bin_wind_magic_number, unsigned iel=0);
124  static void clean(PolarScan<double>& scan_Z, PolarScan<double>& scan_W, PolarScan<double>& scan_V, PolarScan<double>& scan_ZDR, double bin_wind_magic_number,unsigned iel=0, bool set_undetect=false);
125 
132  static void clean( radarelab::volume::Loader load_structure, double bin_wind_magic_number,unsigned iel=0, bool set_undetect=false);
136  double trap(double x1, double x2, double x3, double x4, double val) const;
137 };
138 
139 }
140 }
141 
142 #endif
Struttura per cleaner dati grezzi sulla base dei valori di V, W e la deviazione standard di Z...
Definition: cleaner.h:17
Cleaner(double Z_missing, double W_threshold, double V_missing, double bin_wind_magic_number)
Constructor.
Definition: cleaner.h:29
Definisce le principali strutture che contengono i dati.
PolarScan - structure to describe a polarScan containing a matrix of data and conversion factors...
Definition: volume.h:112
const double V_missing
Dato mancante per VRAD.
Definition: cleaner.h:24
const double bin_wind_magic_number
valore magico per dati in formato SP20
Definition: cleaner.h:25
Codice per il caricamento di volumi in radarelab.
Struttura che contiene mappa per caricamento dati.
Definition: loader.h:24
const double W_threshold
Soglia per WRAD.
Definition: cleaner.h:23
const double Z_missing
Valore dato mancante DBZH.
Definition: cleaner.h:22