Skip to content

step 6 - load_ifgram (MiaplPy) - KeyError: 'width' #131

@Basin-Ir

Description

@Basin-Ir

In section 2.6 of the Jupyter code, I encounter the following error. I don’t know what the problem is.

!python /home/behzadsarhadi/miniconda3/envs/miaplpy/lib/python3.10/site-packages/miaplpy/miaplpyApp.py /home/behzadsarhadi/Downloads/Project/Rey_MiaplPy_ConfFile.txt --dostep load_ifgram --dir ./miaplpy

Using default MintPy Path: /home/behzadsarhadi/miniconda3/envs/miaplpy/lib/python3.10/site-packages
--------------------------------------------------
MiaplPy version v0.2.1, date 2023-08-22
--RUN-at-2025-10-29 00:00:10.073108--
Current directory: /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel
Run routine processing with arg_parser.py on steps: ['load_ifgram']
Remaining steps: ['ifgram_correction', 'invert_network', 'timeseries_correction']
Project name: Rey_MiaplPy_ConfFile
--------------------------------------------------
20251029:000010 * miaplpyApp.py /home/behzadsarhadi/Downloads/Project/Rey_MiaplPy_ConfFile.txt --dostep load_ifgram --dir ./miaplpy
Project name: Rey_MiaplPy_ConfFile
Go to work directory: /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/miaplpy
copy default template file /home/behzadsarhadi/miniconda3/envs/miaplpy/lib/python3.10/site-packages/mintpy/defaults/smallbaselineApp.cfg to work directory
read custom template file: /home/behzadsarhadi/Downloads/Project/Rey_MiaplPy_ConfFile.txt
update default template based on input custom template
    mintpy.compute.cluster: auto --> local
    mintpy.compute.numWorker: auto --> 8
    mintpy.reference.lalo: auto --> 35.520259, 51.409535
    mintpy.troposphericDelay.method: auto --> no
copy smallbaselineApp.cfg     to inputs   directory for backup.
copy Rey_MiaplPy_ConfFile.txt to pic      directory for backup.
copy smallbaselineApp.cfg     to pic      directory for backup.
read default template file: /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/miaplpy/smallbaselineApp.cfg
update default template based on input custom template
    miaplpy.load.compression: default --> auto
    mintpy.load.processor: auto --> isce
copy miaplpyApp.cfg to inputs   directory for backup.
read default template file: /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/miaplpy/miaplpyApp.cfg
    miaplpy.load.compression: auto --> default
    miaplpy.load.autoPath: yes --> yes
    miaplpy.subset.yx: no --> no
    miaplpy.subset.lalo: 35.5073:35.5345,51.3916:51.4248 --> 35.5073:35.5345,51.3916:51.4248
There are 8 workers available, numWorker is changed to 8
----- Number of interferograms in the selected network: 5 -----


<><><><><><><><><> step 6 - load_ifgram (MiaplPy) <><><><><><><><><><>
Generate /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/miaplpy/network_single_reference/run_files/run_06_miaplpy_load_ifgram
20251029:000014 * load_ifgram.py --template /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/miaplpy/miaplpyApp.cfg /home/behzadsarhadi/Downloads/Project/Rey_MiaplPy_ConfFile.txt --project Rey_MiaplPy_ConfFile --output /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/miaplpy/network_single_reference/inputs/ifgramStack.h5 /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/miaplpy/network_single_reference/inputs/geometryRadar.h5 /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/miaplpy/network_single_reference/inputs/geometryGeo.h5
SAR platform/sensor : unknown from project name "Rey_MiaplPy_ConfFile"
check auto path setting for Univ of Miami users for processor: isce
--------------------------------------------------
prepare metadata files for isce products
['../reference/data.rsc'] exists and is newer than ['../reference/IW2.xml'] --> skip.
preparing RSC file for geometry files
write file: /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/merged/geom_reference/hgt.rdr.rsc
write file: /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/merged/geom_reference/lat.rdr.rsc
write file: /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/merged/geom_reference/lon.rdr.rsc
write file: /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/merged/geom_reference/los.rdr.rsc
write file: /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/merged/geom_reference/shadowMask.rdr.rsc
write file: /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/merged/geom_reference/incLocal.rdr.rsc
read perp baseline time-series from ../baselines
preparing RSC file for: ./inverted/interferograms_single_reference/*/*fine*.unw
Traceback (most recent call last):
  File "/home/behzadsarhadi/miniconda3/envs/miaplpy/bin/load_ifgram.py", line 7, in <module>
    sys.exit(main())
  File "/home/behzadsarhadi/miniconda3/envs/miaplpy/lib/python3.10/site-packages/miaplpy/load_ifgram.py", line 403, in main
    inpsDict = read_subset_box(inpsDict)
  File "/home/behzadsarhadi/miniconda3/envs/miaplpy/lib/python3.10/site-packages/miaplpy/load_ifgram.py", line 256, in read_subset_box
    pix_box = (0, 0, int(atr['width']), int(atr['length']))    # coord.bbox_geo2radar(geo_box)
KeyError: 'width'
Go back to directory: /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/miaplpy

###############################################################
Normal end of Non-Linear time series processing workflow!
##############################################################
Go back to directory: /home/behzadsarhadi/Downloads/Project/Rey_Result___StackSentinel/miaplpy

################################################
   Normal end of miaplpyApp processing!
################################################
Time used: 00 mins 4.5 secs

The code in my configuration file is as follows.

################
miaplpy.load.processor      = isce  #[isce,snap,gamma,roipac], auto for isceTops
miaplpy.load.updateMode     = auto  #[yes / no], auto for yes, skip re-loading if HDF5 files are complete
miaplpy.load.compression    = auto  #[gzip / lzf / no], auto for no.
miaplpy.load.autoPath       = yes    # [yes, no] auto for no
        
miaplpy.load.slcFile        = ../merged/SLC/*/*.slc.full  #[path2slc_file]
##---------for ISCE only:
miaplpy.load.metaFile       = ../reference/IW*.xml
miaplpy.load.baselineDir    = ../baselines
##---------geometry datasets:
miaplpy.load.demFile          = ../merged/geom_reference/hgt.rdr.full
miaplpy.load.lookupYFile      = ../merged/geom_reference/lat.rdr.full
miaplpy.load.lookupXFile      = ../merged/geom_reference/lon.rdr.full
miaplpy.load.incAngleFile     = ../merged/geom_reference/los.rdr.full
miaplpy.load.azAngleFile      = ../merged/geom_reference/los.rdr.full
miaplpy.load.shadowMaskFile   = ../merged/geom_reference/shadowMask.rdr.full
miaplpy.load.waterMaskFile    = None
##---------interferogram datasets:
miaplpy.load.unwFile        = ./inverted/interferograms_single_reference/*/*fine*.unw
miaplpy.load.corFile        = ./inverted/interferograms_single_reference/*/*fine*.cor
miaplpy.load.connCompFile   = ./inverted/interferograms_single_reference/*/*.unw.conncomp
        
##---------subset (optional):
## if both yx and lalo are specified, use lalo option unless a) no lookup file AND b) dataset is in radar coord
miaplpy.subset.lalo         = 35.5073:35.5345,51.3916:51.4248

# MiaplPy options 
miaplpy.multiprocessing.numProcessor   = 40
miaplpy.interferograms.type = single_reference

## Mintpy options
mintpy.compute.cluster     = local  # if dask is not available, set this option to no 
mintpy.compute.numWorker   = 8 

mintpy.reference.lalo     = 35.520259, 51.409535
mintpy.troposphericDelay.method = no

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions