MiNoPy icon indicating copy to clipboard operation
MiNoPy copied to clipboard

Frequently Asked Questions and Troubleshooting

Open falkamelung opened this issue 3 years ago • 1 comments

Frequently Asked Questions:

  • Q: How to rerun if you want to change reference point ? A: Run minopyApp.bash --start interferogram_correction as it starts with smallbaselineApp.py --start modify_network with reference_point being the first step.

  • Q: How to rerun if you want to change temporal coherence threshold? A: Run minopyApp.bash --start invert_network which creates the maskTemCoh.h5 file. Alternatively, for faster results you can manually create the maskTemCoh.h5 and run .... (Sara: add command)

  • Q: Why is mintpy.reference.lalo not updated in smallbaselineApp.cfg when I comment it out in the control file, #mintpy.reference.lalo = 19.071,-98.670? A: You need to say mintpy.reference.lalo = auto. Commenting out does not create any action.

  • Q: How to rerun using a different interferogram network for phase unwrapping?

  • Q: When are the minopyApp.cfg and smallbaselineApp.cfg created? Will they be overwritten by options given in the custom *.template file at any run step (i.e. can I run minopyApp.py $TE/SiciliSenDT128.template --start invert_network ) or do I need to manually remove them?

  • Q: How to rerun if some mintpy options are changed, e.g. mintpy.geocode.laloStep or tropospheric correction? A: Run minopyApp.py $TE/SiciliSenDT128.template --start timeseries_correction --dir minopy or smallbaselineApp.py $TE/SiciliSenDT128.template --start geocode --dir minopy.

Other questions:

  • Q: Why do we get points in the ocean? How to get rid of them? (Krakatau, Taal examples)

falkamelung avatar Jan 27 '22 17:01 falkamelung

Troubleshooting:

  • can't broadcast error may occur if area selected is too small (need at least XXX*YYY pixel) or there is a conflict in file sizes. The latter can occur if the subset area is changed but not all relevant files are removed. Error messages:
- Traceback (most recent call last):
  File "/work2/05861/tg851601/stampede2/codet/rsmas_insar/sources/MiNoPy/minopy/load_ifgram.py", line 712, in <module>
    main()
  File "/work2/05861/tg851601/stampede2/codet/rsmas_insar/sources/MiNoPy/minopy/load_ifgram.py", line 671, in main
    stackObj.write2hdf5(outputFile=inps.outfile,
  File "/work2/05861/tg851601/stampede2/codet/rsmas_insar/sources/MintPy/mintpy/objects/stackDict.py", line 172, in write2hdf5
    ds[i, :, :] = data
  File "h5py/_objects.pyx", line 54, in h5py._objects.with_phil.wrapper
  File "h5py/_objects.pyx", line 55, in h5py._objects.with_phil.wrapper
  File "/work2/05861/tg851601/stampede2/codet/rsmas_insar/3rdparty/miniconda3/lib/python3.8/site-packages/h5py/_hl/dataset.py", line 707, in __setitem__
    for fspace in selection.broadcast(mshape):
  File "/work2/05861/tg851601/stampede2/codet/rsmas_insar/3rdparty/miniconda3/lib/python3.8/site-packages/h5py/_hl/selections.py", line 299, in broadcast
    raise TypeError("Can't broadcast %s -> %s" % (target_shape, self.mshape))
TypeError: Can't broadcast (0, 928) -> (255, 928)
Traceback (most recent call last):
  File "/tmp/rsmas_insar/sources/MiNoPy/minopy/generate_unwrap_mask.py", line 129, in <module>
    main()
  File "/tmp/rsmas_insar/sources/MiNoPy/minopy/generate_unwrap_mask.py", line 43, in main
    mintpy.generate_mask.main(args_shm.split())
  File "/tmp/rsmas_insar/sources/MintPy/mintpy/generate_mask.py", line 318, in main
    inps.outfile = create_threshold_mask(inps)
  File "/tmp/rsmas_insar/sources/MintPy/mintpy/generate_mask.py", line 181, in create_threshold_mask
    mask *= nanmask
ValueError: operands could not be broadcast together with shapes (1004,3017)  #(984,2880) (1004,3017) 
  • Reference point in masked out area:
Traceback (most recent call last):
  File "/tmp/rsmas_insar/sources/MintPy/mintpy/smallbaselineApp.py", line 1288, in <module>
    main(sys.argv[1:])
  File "/tmp/rsmas_insar/sources/MintPy/mintpy/smallbaselineApp.py", line 1270, in main
    app.run(steps=inps.runSteps)
  File "/tmp/rsmas_insar/sources/MintPy/mintpy/smallbaselineApp.py", line 1041, in run
    self.run_reference_point(sname)
  File "/tmp/rsmas_insar/sources/MintPy/mintpy/smallbaselineApp.py", line 481, in run_reference_point
    mintpy.reference_point.main(iargs)
  File "/tmp/rsmas_insar/sources/MintPy/mintpy/reference_point.py", line 488, in main
    inps = read_reference_input(inps)
  File "/tmp/rsmas_insar/sources/MintPy/mintpy/reference_point.py", line 447, in read_reference_input
    raise ValueError(msg)
ValueError: input reference point is in masked OUT area defined by maskConnComp.h5!

Display the connected component mask (view.py minopy/maskConnComp.h5 ) and select a point that is not masked:

image
  • Error string NaN or infinity found in input float data in run_05*.o This error may indicate that the input data are corrupt. E.g. you might accidentally have partially rerun ISCE. A full ISCE rerun solved the issue for me.
cat run_05_miaplpy_unwrap_ifgram_0__10.o
20221029:213429 * unwrap_ifgram.py --ifg /scratch/05861/tg851601/MiamiSenAT48/miaplpy/inverted/interferograms_single_reference/20210104_20190912/filt_fine.int --coherence /scratch/05861/tg851601/MiamiSenAT48/miaplpy/inverted/tempCoh_average --unwrapped_ifg /scratch/05861/tg851601/MiamiSenAT48/miaplpy/inverted/interferograms_single_reference/20210104_20190912/filt_fine.unw --max_discontinuity 1.2 --init_method MCF --length 629 --width 1296 --height 698454.1600760925 --num_tiles 1 --earth_radius 6348066.309525905 --wavelength 0.05546576 -m /scratch/05861/tg851601/MiamiSenAT48/miaplpy/inverted/mask_unwrap --tmp
snaphu -f /scratch/05861/tg851601/MiamiSenAT48/miaplpy/inverted/interferograms_single_reference/20210104_20190912/config_all -d /scratch/05861/tg851601/MiamiSenAT48/miaplpy/inverted/interferograms_single_reference/20210104_20190912/filt_fine.int 1296 -o /scratch/05861/tg851601/MiamiSenAT48/miaplpy/inverted/interferograms_single_reference/20210104_20190912/filt_fine.unw
b'NaN or infinity found in input float data\nAbort\n'
Time spent: 0.00882656176884969 m
  • run_08_miaplpy_invert_network step: No REF_X/Y found error If you get this error in the inverse_network step for mintpy.reference.lalo = auto ,
cat run_08_miaplpy_invert_network_0__1.e
Traceback (most recent call last):
  File "/tmp/rsmas_insar/tools/MiaplPy/miaplpy/network_inversion.py", line 74, in <module>
    main()
  File "/tmp/rsmas_insar/tools/MiaplPy/miaplpy/network_inversion.py", line 60, in main
    ifgram_inversion_L1L2.main(iargs)
  File "/tmp/rsmas_insar/tools/MiaplPy/miaplpy/dev/ifgram_inversion_L1L2.py", line 1722, in main
    ifgram_inversion(inps)
  File "/tmp/rsmas_insar/tools/MiaplPy/miaplpy/dev/ifgram_inversion_L1L2.py", line 1461, in ifgram_inversion
    inps.refPhase = stack_obj.get_reference_phase(unwDatasetName=inps.obsDatasetName,
  File "/tmp/rsmas_insar/tools/MintPy/src/mintpy/objects/stack.py", line 963, in get_reference_phase
    raise ValueError('No REF_X/Y found!\nrun reference_point.py to select reference pixel.')
ValueError: No REF_X/Y found!
run reference_point.py to select reference pixel.

try lowering the coherence threshold for automatic reference point selection:

mintpy.reference.minCoherence  = 0.7 

falkamelung avatar Jan 31 '22 12:01 falkamelung