isce3 0.25.0
Loading...
Searching...
No Matches
cuAmpcorParameter.h
Go to the documentation of this file.
1
8
9#ifndef __CUAMPCORPARAMETER_H
10#define __CUAMPCORPARAMETER_H
11
12#include <string>
13#include <vector>
14
23
32
33class cuAmpcorParameter{
34public:
35
36 // TODO this is to avoid memory issues due to copying the non-owning pointers
37 // we should use RAII ownership so these can be trivially defaulted
38 cuAmpcorParameter(const cuAmpcorParameter&) = delete;
39 cuAmpcorParameter& operator=(const cuAmpcorParameter&) = delete;
40 cuAmpcorParameter(cuAmpcorParameter&&) = delete;
41 cuAmpcorParameter& operator=(cuAmpcorParameter&&) = delete;
42
47
48 // chip or window size for raw data
53
56 // search range is (-halfSearchRangeRaw, halfSearchRangeRaw)
57
60
64
65 // chip or window size after oversampling
71
72 // strides between chips/windows
75
76 // Zoom in region near location of max correlation
79
82
83
85
86 //reference image
87 std::string referenceImageName;
91
92 //secondary image
93 std::string secondaryImageName;
97
98 // total number of chips/windows
102
103 // number of chips/windows in a batch/chunk
110
113
116 std::vector<int> referenceStartPixelDown;
117 std::vector<int> referenceStartPixelAcross;
118 std::vector<int> secondaryStartPixelDown;
119 std::vector<int> secondaryStartPixelAcross;
122 std::vector<int> grossOffsetDown;
123 std::vector<int> grossOffsetAcross;
125
130 std::vector<int> referenceChunkHeight;
131 std::vector<int> referenceChunkWidth;
132 std::vector<int> secondaryChunkHeight;
133 std::vector<int> secondaryChunkWidth;
134 int maxReferenceChunkHeight, maxReferenceChunkWidth;
135 int maxSecondaryChunkHeight, maxSecondaryChunkWidth;
136
138 std::string offsetImageName;
139 std::string snrImageName;
140 std::string covImageName;
141 std::string corrImageName;
142
143 // Class constructor and default parameters setter
145 // Class descontructor
146 ~cuAmpcorParameter();
147
148 // Allocate various arrays after the number of Windows is given
149 void allocateArrays();
150
151 // Three methods to set reference/secondary starting pixels and gross offsets from input reference start pixel(s) and gross offset(s)
152 // 1 (int *, int *, int *, int *): varying reference start pixels and gross offsets
153 // 2 (int, int, int *, int *): fixed reference start pixel (first window) and varying gross offsets
154 // 3 (int, int, int, int): fixed reference start pixel(first window) and fixed gross offsets
155 void setStartPixels(int*, int*, int*, int*);
156 void setStartPixels(int, int, int*, int*);
157 void setStartPixels(int, int, int, int);
158 // set starting pixels for each chunk
159 void setChunkStartPixels();
160 // check whether all chunks/windows are within the image range
162 // Process other parameters after Python Input
163 void setupParameters();
164
165};
166
167#endif //__CUAMPCORPARAMETER_H
168//end of file
void checkPixelInImageRange()
check whether reference and secondary windows are within the image range
Definition cuAmpcorParameter.cu:256
int searchWindowSizeWidthRaw
Search window width (original size)
Definition cuAmpcorParameter.h:52
void setChunkStartPixels()
set starting pixels for each chunk
Definition cuAmpcorParameter.cu:189
std::vector< int > grossOffsetDown
Gross offsets between reference and secondary windows (down)
Definition cuAmpcorParameter.h:122
std::string covImageName
Output variance filename.
Definition cuAmpcorParameter.h:140
int secondaryImageHeight
secondary image height
Definition cuAmpcorParameter.h:95
int nStreams
Number of streams to asynchonize data transfers and compute kernels.
Definition cuAmpcorParameter.h:45
std::string secondaryImageName
secondary SLC image name
Definition cuAmpcorParameter.h:93
int halfSearchRangeDownRaw
(searchWindowSizeHeightRaw-windowSizeHeightRaw)/2
Definition cuAmpcorParameter.h:54
std::vector< int > referenceChunkWidth
reference chunk width
Definition cuAmpcorParameter.h:131
std::string corrImageName
Output cross-correlation peak filename.
Definition cuAmpcorParameter.h:141
int halfZoomWindowSizeRaw
half of zoomWindowSize/rawDataOversamplingFactor
Definition cuAmpcorParameter.h:78
int algorithm
Cross-correlation algorithm: 0=freq domain (default) 1=time domain.
Definition cuAmpcorParameter.h:43
int derampMethod
Method for deramping 0=None, 1=average.
Definition cuAmpcorParameter.h:46
int corrRawZoomInHeight
correlation surface height used for oversampling
Definition cuAmpcorParameter.h:62
int searchWindowSizeWidthRawZoomIn
search window width used for zoom in
Definition cuAmpcorParameter.h:59
int referenceImageWidth
reference image width
Definition cuAmpcorParameter.h:90
int searchWindowSizeHeightRaw
Search window height (original size)
Definition cuAmpcorParameter.h:51
void setStartPixels(int *, int *, int *, int *)
Set starting pixels for reference and secondary windows from arrays set also gross offsets between re...
Definition cuAmpcorParameter.cu:136
int corrStatWindowSize
correlation surface size used to estimate snr
Definition cuAmpcorParameter.h:61
int corrRawZoomInWidth
correlation surface width used for oversampling
Definition cuAmpcorParameter.h:63
int windowSizeHeight
Template window length (oversampled size)
Definition cuAmpcorParameter.h:67
int numberWindowsInChunk
numberWindowDownInChunk*numberWindowAcrossInChunk
Definition cuAmpcorParameter.h:106
int numberWindowAcrossInChunk
number of windows processed in a chunk (across)
Definition cuAmpcorParameter.h:105
int halfSearchRangeAcrossRaw
(searchWindowSizeWidthRaw-windowSizeWidthRaw)/2
Definition cuAmpcorParameter.h:55
int maxSecondaryChunkWidth
max secondary chunk size
Definition cuAmpcorParameter.h:135
int numberWindowDownInChunk
number of windows processed in a chunk (down)
Definition cuAmpcorParameter.h:104
int mmapSizeInGB
size for mmap buffer(useMmap=1) or a cpu memory buffer (useMmap=0)
Definition cuAmpcorParameter.h:112
std::vector< int > referenceChunkStartPixelAcross
reference starting pixels for each chunk (across)
Definition cuAmpcorParameter.h:127
int referenceStartPixelDown0
first starting pixel in reference image (down)
Definition cuAmpcorParameter.h:114
std::vector< int > grossOffsetAcross
Gross offsets between reference and secondary windows (across)
Definition cuAmpcorParameter.h:123
std::vector< int > referenceStartPixelAcross
reference starting pixels for each window (across)
Definition cuAmpcorParameter.h:117
int deviceID
Targeted GPU device ID: use -1 to auto select.
Definition cuAmpcorParameter.h:44
std::string offsetImageName
Offset fields output filename.
Definition cuAmpcorParameter.h:138
int windowSizeWidthRaw
Template window width (original size)
Definition cuAmpcorParameter.h:50
int skipSampleDownRaw
Skip size between neighboring windows in Down direction (original size)
Definition cuAmpcorParameter.h:73
std::vector< int > secondaryChunkStartPixelDown
secondary starting pixels for each chunk (down)
Definition cuAmpcorParameter.h:128
int numberWindows
numberWindowDown*numberWindowAcross
Definition cuAmpcorParameter.h:101
std::vector< int > secondaryChunkHeight
secondary chunk height
Definition cuAmpcorParameter.h:132
int useMmap
whether to use mmap 0=not 1=yes (default = 0)
Definition cuAmpcorParameter.h:111
int numberChunkAcross
number of chunks (across)
Definition cuAmpcorParameter.h:108
int imageDataType1
reference image data type, 2=cfloat=complex=float2 1=float
Definition cuAmpcorParameter.h:88
int searchWindowSizeWidth
Search window width (oversampled size)
Definition cuAmpcorParameter.h:70
int numberChunkDown
number of chunks (down)
Definition cuAmpcorParameter.h:107
int windowSizeHeightRaw
Template window height (original size)
Definition cuAmpcorParameter.h:49
int skipSampleAcrossRaw
Skip size between neighboring windows in across direction (original size)
Definition cuAmpcorParameter.h:74
int grossOffsetAcross0
gross offset static component (across)
Definition cuAmpcorParameter.h:121
int oversamplingMethod
correlation surface oversampling method 0 = fft (default) 1 = sinc
Definition cuAmpcorParameter.h:81
std::string snrImageName
Output SNR filename.
Definition cuAmpcorParameter.h:139
int oversamplingFactor
Oversampling factor for interpolating correlation surface.
Definition cuAmpcorParameter.h:80
std::vector< int > referenceStartPixelDown
reference starting pixels for each window (down)
Definition cuAmpcorParameter.h:116
float thresholdSNR
Threshold of Signal noise ratio to remove noisy data.
Definition cuAmpcorParameter.h:84
std::vector< int > secondaryStartPixelAcross
secondary starting pixels for each window (across)
Definition cuAmpcorParameter.h:119
int searchWindowSizeHeightRawZoomIn
search window height used for zoom in
Definition cuAmpcorParameter.h:58
cuAmpcorParameter()
Constructor for cuAmpcorParameter class also sets the default/initial values of various parameters.
Definition cuAmpcorParameter.cu:18
int secondaryImageWidth
secondary image width
Definition cuAmpcorParameter.h:96
int referenceStartPixelAcross0
first starting pixel in reference image (across)
Definition cuAmpcorParameter.h:115
int numberChunks
total number of chunks
Definition cuAmpcorParameter.h:109
int mergeGrossOffset
whether to merge gross offsets into the final offsets
Definition cuAmpcorParameter.h:124
std::string grossOffsetImageName
gross offset output filename
Definition cuAmpcorParameter.h:137
int zoomWindowSize
Zoom-in window size in correlation surface (same for down and across directions)
Definition cuAmpcorParameter.h:77
int numberWindowDown
number of total windows (down)
Definition cuAmpcorParameter.h:99
std::vector< int > secondaryChunkWidth
secondary chunk width
Definition cuAmpcorParameter.h:133
int referenceImageHeight
reference image height
Definition cuAmpcorParameter.h:89
int grossOffsetDown0
gross offset static component (down)
Definition cuAmpcorParameter.h:120
std::string referenceImageName
reference SLC image name
Definition cuAmpcorParameter.h:87
std::vector< int > secondaryStartPixelDown
secondary starting pixels for each window (down)
Definition cuAmpcorParameter.h:118
int rawDataOversamplingFactor
Raw data overampling factor (from original size to oversampled size)
Definition cuAmpcorParameter.h:66
std::vector< int > referenceChunkHeight
reference chunk height
Definition cuAmpcorParameter.h:130
void setupParameters()
To determine other process parameters after reading essential parameters from python.
Definition cuAmpcorParameter.cu:70
std::vector< int > secondaryChunkStartPixelAcross
secondary starting pixels for each chunk (across)
Definition cuAmpcorParameter.h:129
int imageDataType2
secondary image data type, 2=cfloat=complex=float2 1=float
Definition cuAmpcorParameter.h:94
int numberWindowAcross
number of total windows (across)
Definition cuAmpcorParameter.h:100
int windowSizeWidth
Template window width (original size)
Definition cuAmpcorParameter.h:68
int maxReferenceChunkWidth
max reference chunk size
Definition cuAmpcorParameter.h:134
std::vector< int > referenceChunkStartPixelDown
reference starting pixels for each chunk (down)
Definition cuAmpcorParameter.h:126
int searchWindowSizeHeight
Search window height (oversampled size)
Definition cuAmpcorParameter.h:69

Generated for ISCE3.0 by doxygen 1.13.2.