cgi-estonia-space / asar-focus

GPU accelerated focusser for ENVISAT and ERS-1/2
https://cgi-estonia-space.github.io/asar-focus/
Other
5 stars 0 forks source link

ENVISAT lines filtering #17

Closed kautlenbachs closed 1 year ago

kautlenbachs commented 1 year ago

Currently the L0 product ASA_IM__0PNPDK20040229_212454_000000492024_00387_10461_2585.N1 would produce too much lines where some should be filtered.

kautlenbachs commented 1 year ago

Initially there are 86955 packets/lines where 37332 are produced for L1 by PF-ASAR

kautlenbachs commented 1 year ago

It has very long sensing period

Sensing start = 2004-02-29T21:24:54.544118
First ISP = 2004-02-29T21:24:54.600835
Diff = -56717 us
Sensing end = 2004-02-29T21:25:44.320391
Last ISP = 2004-02-29T21:25:44.309817
Diff = 10574 us

Reference L1 dataset has

SENSING_START="29-FEB-2004 21:25:04.912053"
SENSING_STOP="29-FEB-2004 21:25:24.001728"

FIRST_LINE_TIME="29-FEB-2004 21:25:04.927434"
LAST_LINE_TIME="29-FEB-2004 21:25:22.870245"
kautlenbachs commented 1 year ago

For one of the reference datasets - ASA_IM__0PNPDK20040109_194924_000000182023_00157_09730_1479.N1 Following diagnostic can be compiled:

Sensing start = 2004-01-09T19:49:24.000509
First ISP = 2004-01-09T19:49:24.000405
Diff = 104 us
Sensing end = 2004-01-09T19:49:42.000599
Last ISP = 2004-01-09T19:49:42.000145
Diff = 454 us
Total packets 29715 crc errors counted 0
Sequence control OOL 0 mode packet count OOL 0 packet length OOL 0 no echoes 29
Cal count 29 noise count 0
Cycle packet count OOL 0
TX pol change 0 RX pol change 1 pol mismatch 0
Compression not 8/4 count 0
Min/Max pri code 11624/11624
Min/Max swst code 2024/2048
Min/Max window len 526/0
Min/Max chirp pulse bw code 255/255
Min/Max ISP diff 534/1221 us

The ASA_IM__0PNPDK20040229_212454_000000492024_00387_10461_2585.N1 would produce the following:

Sensing start = 2004-02-29T21:24:54.544118
First ISP = 2004-02-29T21:24:54.600835
Diff = -56717 us
Sensing end = 2004-02-29T21:25:44.320391
Last ISP = 2004-02-29T21:25:44.309817
Diff = 10574 us
Total packets 86955 crc errors counted 0
Sequence control OOL 1 mode packet count OOL 1 packet length OOL 0 no echoes 197
Cal count 181 noise count 16
Cycle packet count OOL 2
TX pol change 0 RX pol change 1 pol mismatch 0
Compression not 8/4 count 0
Min/Max pri code 9232/9232
Min/Max swst code 1504/1596
Min/Max window len 416/0
Min/Max chirp pulse bw code 255/255
Min/Max ISP diff 427/7875793 us

The last, ISP difference between echoes is massive. PRobably there might be some empty echo rows OR one should collect packets only if some certain ISP difference is met.

kautlenbachs commented 1 year ago

Reference dataset focussed L1 picture starts with an offset image

comparison with this tool when focussing from first packets (red line with arrow where the reference dataset's focussing starts) image

kautlenbachs commented 1 year ago

Kajal: L0 can be up to 10 minutes long. L1 can be from 16 sec to 2 minutes. But SLC must be 16 seconds long. If L0 is not multiple of 16 seconds one has to process shorter duration, but there is not well specified minimum value. There has been observed even 5 to 6 seconds only. Same for IMP and IMM. The 16 seconds is assigned by the backend based on user selection.

Joborder is the one that specifies sensing start and end times eventually.

kautlenbachs commented 1 year ago

Observation from the TDS09 when processing with

        <Sensing_Time>
            <Start>20040229_212504912000</Start>
            <Stop>20040229_212523002000</Stop>
        </Sensing_Time>

L0 dataset

SENSING_START="29-FEB-2004 21:24:54.544118"
SENSING_STOP="29-FEB-2004 21:25:44.320391"

Reference IMS dataset

SENSING_START="29-FEB-2004 21:25:04.912053"
SENSING_STOP="29-FEB-2004 21:25:24.001728"
FIRST_LINE_TIME="29-FEB-2004 21:25:04.927434"
LAST_LINE_TIME="29-FEB-2004 21:25:22.870245"

Current results of this focusser (SENSING START and STOP come from user input as specified above)

SENSING_START="29-FEB-2004 21:25:04.912000"
SENSING_STOP="29-FEB-2004 21:25:23.002000"
FIRST_LINE_TIME="29-FEB-2004 21:25:04.912053"
LAST_LINE_TIME="29-FEB-2004 21:25:23.001987"
kautlenbachs commented 1 year ago

Implement empty packet (a copy of the previous one) insertion when 'cycle_count' has non contiguous values. (also check dataset about modes and calibration when it actually should change anyway)