8#include <isce3/io/Raster.h>
12namespace isce3::unwrap::icu
16typedef std::array<size_t, 2> idx2_t;
19typedef std::array<int, 2> offset2_t;
134 unsigned int seed = 0);
138 signed char * charge,
146 const std::complex<float> * intf,
154 const signed char * charge,
158 const unsigned int seed = 0);
161 template<
bool DO_BOOTSTRAP>
178 size_t _NumBufLines = 3700;
179 size_t _NumOverlapLines = 200;
180 bool _UsePhaseGradNeut =
false;
181 bool _UseIntensityNeut =
false;
182 int _PhaseGradWinSize = 5;
183 float _NeutPhaseGradThr = 3.f;
184 float _NeutIntensityThr = 8.f;
185 float _NeutCorrThr = 0.8f;
187 int _MaxBranchLen = 64;
188 float _RatioDxDy = 1.f;
189 float _InitCorrThr = 0.1f;
190 float _MaxCorrThr = 0.9f;
191 float _CorrThrInc = 0.1f;
192 float _MinCCAreaFrac = 0.003125f;
193 size_t _NumBsLines = 16;
194 size_t _MinBsPts = 16;
195 float _BsPhaseVarThr = 8.f;
201#define ISCE_UNWRAP_ICU_ICU_ICC
203#undef ISCE_UNWRAP_ICU_ICU_ICC
Data structure meant to handle Raster I/O operations.
Definition Raster.h:32
int numTrees() const
Get number of tree growing iterations.
Definition ICU.icc:80
void unwrap(isce3::io::Raster &unw, isce3::io::Raster &ccl, isce3::io::Raster &intf, isce3::io::Raster &corr, unsigned int seed=0)
Unwrap the target interferogram.
Definition Unwrap.cpp:10
float neutIntensityThr() const
Get intensity variance threshold for neutron generation (stddevs from mean).
Definition ICU.icc:60
int maxBranchLen() const
Get max branch cut length.
Definition ICU.icc:90
size_t numBufLines() const
Get tile buffer length.
Definition ICU.icc:10
float initCorrThr() const
Get initial correlation threshold.
Definition ICU.icc:110
float ratioDxDy() const
Get ratio of x:y pixel spacing (for measuring branch cut length).
Definition ICU.icc:100
~ICU()=default
Destructor.
size_t numOverlapLines() const
Get lines of overlap between tiles.
Definition ICU.icc:20
float minCCAreaFrac() const
Get min connected component size as fraction of tile area.
Definition ICU.icc:140
bool useIntensityNeut() const
Get intensity neutrons flag.
Definition ICU.icc:33
float bsPhaseVarThr() const
Get bootstrap phase variance threshold.
Definition ICU.icc:170
float neutPhaseGradThr() const
Get range phase gradient threshold for neutron generation (rad/sample).
Definition ICU.icc:50
ICU()=default
Constructor.
size_t numBsLines() const
Get number of bootstrap lines.
Definition ICU.icc:150
float corrThrInc() const
Get correlation threshold increment.
Definition ICU.icc:130
float maxCorrThr() const
Get max correlation threshold.
Definition ICU.icc:120
int phaseGradWinSize() const
Get window size for phase gradient calculation.
Definition ICU.icc:36
size_t minBsPts() const
Get bootstrapping min overlap area.
Definition ICU.icc:160
bool usePhaseGradNeut() const
Get phase gradient neutrons flag.
Definition ICU.icc:30
float neutCorrThr() const
Get correlation threshold for neutron generation.
Definition ICU.icc:70