1. 11 Jan, 2017 1 commit
    • Daniel Scheffler's avatar
      second (not completely working) version of wrapper for atmospheric correction · d06523f9
      Daniel Scheffler authored
      algorithms.GEOPROCESSING:
      - revised imports
      algorithms.gms_object:
      - gms_object:
          - revised imports
          - added property 'dem': gms_object can now directly provide a corresponding SRTM DEM
          - arr: bandnames of property 'arr' are now in the form [B01, .., B8A,] and correspond to LayerBandsAssignment
          - added property 'ac_options': getter or options dictionary needed for atmospheric correction
          - from_disk(): added time zone to 'acquisition_date' datetime object
      - added class failed_GMS_object (based on earlier version from helper functions)
      algorithms.L1A_P.L1A_object:
      - revised imports
      - calc_TOARadRefTemp(): bugfix for wrong nodata value in out returned array in case of Sentinel-2
      - update_spec_vals_according_to_dtype: bugfix for not updating L1A_object.arr.nodata
      algorithms.L1B_P:
      - revised imports
      algorithms.L1C_P:
      - L1C_object:
          - get_lonlat_coord_array(): changed handling of return values
          - calc_acquisition_illumination_geometry(): changed handling of return values
      - AtmCorr:
          -  added attribute 'ac_input' containing input args/kwargs of atmospheric correction
          - data: now uses L1C_obj.arr.bandnames for lopping over bands
          - added property 'nodata'
          - added property 'tile_name'
          - added property 'band_spatial_sampling'
          - added property 'nodata'
          - added property 'nodata'
          - revised property 'metadata'
          - added _meta_get_spatial_samplings()
          - added _meta_get_solar_irradiance()
          - added _meta_get_viewing_zenith()
          - added _meta_get_viewing_azimuth()
          - added _meta_get_relative_viewing_azimuth()
          - revised run_atmospheric_correction()
          - revised join_results_to_inObjs()
      algorithms.METADATA
      - revised imports
      - added 'ScaleFactor' to meta_odict
      io.Input_reader:
      - fixed some bad type hints
      - SRF_reader(): moved path generator functionality to path_generator
      - added open_specific_file_within_archive() (moved)
      - added get_dem_by_extent(): new function for reading SRTM DEM data and warping to a given pixel grid
      io.Output_writer:
      - revised imports
      - fixed some bad type hints
      - added 'ScaleFactor' to enviHdr_keyOrder
      misc.__init__:
      - added __all__
      misc.database_tools:
      - fixed some bad type hints
      - get_overlapping_scenes_from_postgreSQLdb(): bugfix for wrong indexing
      misc.definition_dicts:
      - new module, consisting of earlier functions from helper_functions
      misc.exception_handler:
      - new module, consisting of earlier functions from helper_functions
      misc.helper_functions:
      - moved trace_unhandled_exceptions(), log_uncaught_exceptions() to misc.exception_handler
      - moved failed_GMS_object to gms_object
      - moved get_job_summary to process_controller
      - fixed some bad type hints
      - moved get_GMS_sensorcode(), get_mask_classdefinition(), get_outFillZeroSaturated(), get_mask_colormap() to misc.definition_dicts
      - moved open_specific_file_within_archive() to Input_reader
      misc.path_generator:
      - path_generator:
          - revised get_path_rawdata()
          - revised get_local_archive_path_baseN(): 'image_type' is not used anymore; removed deprecated warning
          - get_path_cloud_class_obj(): added cloud classificator files for Sentinel-2
          - added get_path_srf_file()
          - added get_path_snr_model()
          - added get_path_ac_options()
          - added get_path_ac_table()
      processing.multiproc:
      - revised MAP(): added new keyword 'flatten_ouput'
      processing.pipeline:
      - updated imports
      - revised L1C_map(): input represents one OR multiple L1B_objects belonging to the same scene_ID (atmospheric correction has to be applied to ALL subsystems of a scene at once)
      processing.process_controller:
      - changed some map calls due to new keyword  'flatten_ouput' of processing.multiproc.MAP
      - revised L1C_processing(): added grouping of L1B_objects by scene_ID
      - revised create_job_summary(): bugfix for emtpy input list of get_job_summary()
      - added get_job_summary(): moved from helper_functions
      config.Job:
      - added new attributes 'path_ac_options', 'path_ac_tables', 'path_SNR_models', 'path_dem_proc_srtm_90m', 'path_ECMWF_db'
      pgSGL_db table 'config':
      - added keys 'path_SNR_models', 'path_ac_options', 'path_dem_proc_srtm_90m', 'path_ECMWF_db',  'path_ac_tables'
      Fileserver:
      - added input datasets for atmospheric correction
      - updated __version__
      d06523f9
  2. 06 Jan, 2017 1 commit
    • Daniel Scheffler's avatar
      first (not yet working) version of wrapper for atmospheric correction · dd8f8334
      Daniel Scheffler authored
      algorithms.__init__:
      - added some imports
      algorithms.gms_object:
       - removed deprecated code
      algorithms.L1C_P:
      - removed deprecated code
      - added class 'AtmCorr': a wrapper class for atmospheric correction
      misc.database_tools:
      - fixed some broken type hints
      misc.helper_functions
      - fixed broken type hint
      - replaced deprecated function call
      processing.pipeline:
      - fixed some broken type hints
      - updated __version__
      dd8f8334
  3. 05 Jan, 2017 2 commits
    • Daniel Scheffler's avatar
      algorithms.gms_object.GMS_Object: · 428ee490
      Daniel Scheffler authored
      - __getstate__(): added code for deleting array attributes in order to wok around pickle object size limitation
      - added deleters for 'arr', 'mask_nodata', 'mask_clouds', 'masks'
      - fixed some broken type hints
      algorithms.L1B_P.L1B_Object:
      - correct_spatial_shifts(): bugfix for missing masks attribute in Flink mode
      algorithms.L1C_P.L1C_Object:
      - atm_corr(): bugfix for not deleting lonlat_arr
      misc.database_tools:
      - fixed some broken type hints
      misc.helper_functions:
      - fixed broken type hint
      processing.multiproc:
      - MAP(): bugfix for not always returning a list
      processing.process_controller:
      - _is_inMEM(): fixed broken type hint
      - updated __version__
      428ee490
    • Daniel Scheffler's avatar
      major revision of previous commit; module gms_object now fully implemented;... · d48276ad
      Daniel Scheffler authored
      major revision of previous commit; module gms_object now fully implemented; fixed differences in results between Flink and Python execution mode
      algorithms.GEOPROCESSING.GEOPROCESSING:
      - Layerstacking(): added possible bug hint; update_dataset_related_attributes() now always executed
      - get_lonlat_coord_array(): adjusted to handle GeoArray instances
      - calc_VZA_array(): adjusted to handle GeoArray instances
      - calc_SZA_SAA_array(): adjusted to handle GeoArray instances
      - calc_RAA_array(): adjusted to handle GeoArray instances
      algorithms.gms_object:
      - __init__(): added attribute 'MGRS_info'
      - renamed attribute mask_1bit to 'mask_nodata'
      - revised set_pathes()
      - revised __getstate__()
      - revised __deepcopy__()
      - revised coreg_needed()
      - added property 'resamp_needed'
      - added property 'arr'
      - added property 'mask_nodata'
      - added property 'mask_clouds'
      - added property 'masks'
      - added property 'pathGen'
      - revised attributes2dict()
      - revised from_disk()
      - revised calc_mask_nodata()
      - revised build_combined_masks_array()
      - combine_tiles_to_ObjAttr(): added DeprecationWarning
      - get_subset_obj(): adjusted to properly handle GeoArray instances
      - added to_ENVI(), based on Obj2ENVI from OUT_W
      algorithms.L1A_P.L1A_object:
      - import_rasterdata() now also sets shape_fullArr
      - archive_to_rasObj(): bugfix for overwriting Layerstacking result
      - revised get_MetaObj()
      - removed deprecated get_shape_fullArr()
      - calc_TOARadRefTemp(): revised to properly handle GeoArray instances
      - reference_data(): revised to properly handle GeoArray instances
      - calc_cloud_mask(): revised to properly handle GeoArray instances
      - calc_corner_positions(): added assertion; now robust to different WKT string formats
      - revised add_rasterInfo_to_MetaObj()
      - update_spec_vals_according_to_dtype(): now does not set nodata value anymore (property)
      algorithms.L1B_P:
      - Scene_finder:
          - ensured Python 2.7 compatibility
      - L1B_object:
          - correct_spatial_shifts(): major revision fixing some bugs
          - removed deprecated join_deshift_results()
          - removed deprecated apply_deshift_results()
      algorithms.L1C_P.L1C_Object:
      - get_lonlat_coord_array(): commented deprecated code out
      - calc_acquisition_illumination_geometry(): commented deprecated code out
      algorithms.L2A_P.L2A_Object:
      - get_DESHIFTER_configs(): some simplifications
      - removed deprecated class DESHIFTER (now fully imported from external library CoReg_Sat)
      algorithms.L2B_P.L2B_Object:
      - revised __init__()
      io.Output_writer:
      - moved Obj2ENVI to gms_object
      misc.helper_functions:
      - get_job_summary(): bugfix for counting inputs given as tiles of the same sceneid multiple times
      misc.path_generator:
      - added __getstate__() that automatically closes loggers
      - added __setstate__()
      processing.pipeline:
      - adjusted output writer calls
      - L1A_map(): removed calls to get_shape_fullArr() and calc_mask_nodata()
      - L1A_map_1(): removed calls to get_shape_fullArr() and calc_mask_nodata()
      - L2A_map(): added overwrite kwarg to calc_mask_nodata()
      - removed deprecated L2A_map_1()
      - removed deprecated L2A_map_2()
      - renamed L2B_map_1 to L2B_map
      - renamed L2C_map_1 to L2C_map
      processing.process_controller.process_controller:
      - added keyword 'db_host'
      - simplified L2A_processing()
      - create_job_summary(): bugfix for always passing L2C objects to get_job_summary() instead of highest requested processing level
      config:
      - set_config(): added keyword 'db_host'
      - Job:
          - added keyword 'db_host'
          - added attribute 'allow_subMultiprocessing'
          - database connection string is now dynamically adjusted to database host
      - updated __version__
      d48276ad
  4. 08 Dec, 2016 1 commit
  5. 07 Dec, 2016 1 commit
    • Daniel Scheffler's avatar
      implemented "GMS_object" as parent object for all GMS objects; dissolved L0A_P... · 007965bf
      Daniel Scheffler authored
      implemented "GMS_object" as parent object for all GMS objects; dissolved L0A_P to config, and META; deleted L0B_P
      algorithms:
      - added new module 'gms_object', based on parts of L1A_object
          - GMS_object now provides the complete basic functionality of all GMS objects in later processing levels
      - L0A_P has been dissolved/moved to config and METADATA
      - L0B_P removed (deprecated)
      algorithms.L1A_P.L1A_object:
      - revised __init__() (L1A_object now inherits from GMS_object)
      - added import_rasterdata()
      - moved functions providing basic GMS functionality to GMS_object
      - refactored fill_from_disk() to from_disk()
      algorithms.L1B_P - L2C-P:
      - updated __init__() functions due to new object structure
      io.Output_writer:
      - Obj2ENVI: data_DB_updater now receives a dictionary including current state of all properties
      misc.database_tools.GMS_JOB:
      - added __repr__()
      - bugfix for using CFG.job.conn_database instead of self.conn
      - revised from_job_ID(): self.dataframe is now properly filled
      misc.helper_functions:
      - failed_GMS_object now inherits from GMS_object
      - get_GMS_sensorcode() now does not need a logger anymore
      processing.pipeline:
      - refactored L0A_L1A_map to L1A_map and L0B_L1A_map_1 to L1A_map_1
      - revised L1A_map and L1A_map_1 according to new structure of L1A_object
      processing.process_controller:
      - added attribute '_DB_job_record'
      - added property 'DB_job_record'
      - removed get_data_list() (deprecated)
      - stop(): added docstring
      - L1A_processing(): edited docstring and added logger output; changed reduce call (!)
      - L1B_processing(): edited docstring and added logger output
      - L1C_processing(): edited docstring and added logger output; changed reduce call (!)
      - L2A_processing(): edited docstring and added logger output
      - L2B_processing(): edited docstring and added logger output; changed reduce call (!)
      - L2C_processing(): edited docstring and added logger output
      config:
      - Job: added attribute 'DB_job_record'
      - Usecase:
          - added attributes '_job' and 'data_list'
          - moved get_usecase_coord_grid() from top level of module here
          - added get_entity_IDs_within_AOI() from L0A_P
          - added get_data_list_of_current_jobID() from L0A_P
      - updated __version__
      007965bf
  6. 02 Dec, 2016 3 commits
    • Daniel Scheffler's avatar
      moved add_local_availability() to process_controller; changed output file names of image data · c588839b
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      L0A_P:
      - moved add_local_availability() to process_controller
      L1B_P.L1B_object:
      - coregister_spatially(): fixed deprecated keyword name due to API changes within CoReg_Sat
      misc.path_generator:
      - get_path_imagedata(): output file names of image data now end with '_image_data_<procLevel>.bsq'
      - get_outPath_hdr(): changed outNameSuffix
      processing.process_controller.process_controller:
      - get_data_list(): edited docstring
      - added add_local_availability from L0A_P
      - updated __version__
      c588839b
    • Daniel Scheffler's avatar
      Bugfix · 3cc34718
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      processing.pipeline:
      - L2C_map_1(): fix for using exec__L2BP instead of exec__L2CP
      3cc34718
    • Daniel Scheffler's avatar
      fixed a memory issue during L2C processing; revised process_controller · 096bddfd
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      algorithms.L1A_P.L1A_object:
      - get_subset_obj(): minor revisions; removed deprecated code
      - to_MGRS_tiles() now returns a generator object instead of a list => Output writer can be used directly after generating each tile
      misc.path_generator:
      - fixed some PyCharm warnings
      processing.process_controller:
      - _is_already_present(): added docstring
      - added get_DB_objects() -> simplifies L1A-L2C processor functions
      - run_all_processors(): KeyBoardInterrupt now caused process controller to shutdown gracefully
      - added stop()
      - simplified L1A-L2C processor functions
      config:
      - set_config(): added 'reset' kwarg
      - updated __version__
      096bddfd
  7. 01 Dec, 2016 6 commits
    • Daniel Scheffler's avatar
      cleaned up · db515a3b
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      - moved testing/job_logs to logs/job_logs
      - removed deprecated testing.process_controller_for_testing and testing.process_controller_for_testing__andre
      config:
      - adjusted Job.path_job_logs
      - updated __version__
      db515a3b
    • Daniel Scheffler's avatar
      updated .gitignore · acbb02f6
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      acbb02f6
    • Daniel Scheffler's avatar
      added new attribute 'tiling_block_size_XY' to config.Job · 29dda4ba
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      processing.pipeline:
      - tiling block size of several mappers now use CFG.Job.tiling_block_size_XY as default block size
      config.Job:
      - added attribute 'tiling_block_size_XY'
      - updated __version__
      29dda4ba
    • Daniel Scheffler's avatar
      merged the rest of old process_controller_for_testing and removed deprecated modules · 7c2c3a7b
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      processing.process_controller:
      - moved the rest of process_controller_for_testing here
      - cleaned up deprecated code snippets
      run_gms:
      - added possibility to pass job ID via console call
      - removed deprecated modules 'config_old', 'process_controller_for_testing' and 'unified_config'
      - updated __version__
      7c2c3a7b
    • Daniel Scheffler's avatar
      two little bugfixes · c24961ca
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      misc.helper_functions:
      - log_uncaught_exceptions.wrapped_GMS_mapper(): Bugfix for not passing kwargs to decorator output
      config:
      - GMS_configuration.usecase.setter: Bugfix for writing to GMS_job instead of GMS_usecase
      c24961ca
    • Daniel Scheffler's avatar
      Flink compatibility update / major revision of process controller · 5138279d
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      summary:
      - revised config -> database must be queried once per machine
      - all modules of the package are now directly importable
      - process controller is now a Python class containing a couple of methods for running the job
      all modules:
      - revised import statements
      - replaced functions 'CFG.get_job()' and 'CFG.get_usecase()' by property 'CFG.job' and 'CFG.usecase'
      misc.helper_functions:
      - moved MAP() to new module processing.multiproc
      misc.SpatialIndexMediator.SpatialIndexMediatorServer:
      - bugfix for returning 'port' instead of 'process_id'
      added new package 'processing'
      - added __init__
      - added module 'multiproc'
      - added new module 'process_controller' containing new class 'process_controller' with several methods for running the GMS job
      __init__:
      - revised
      config:
      - added set_config() replacing unified_config.set_config()
      - added class GMS_configuration containing properties for 'job' and 'usecase' that replace unified_config.get_job() and unified_config.get_usecase()
      - Job:
          - added attributes 'end_time' and 'computation_time'
          - revised class structure
      - Usecase:
          - revised class structure
      - removed deprecated code
      copied old version of config to config_old (still used by deprecated process_controller_for_testing)
      added run_gms.py for running GeoMultiSens process controller from console
      - updated __version__
      5138279d
  8. 28 Nov, 2016 3 commits
  9. 17 Oct, 2016 1 commit
  10. 14 Oct, 2016 2 commits
    • Daniel Scheffler's avatar
      Bugfix for wrong no data value in case of cloud classification masks that have... · d02c9f19
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      Bugfix for wrong no data value in case of cloud classification masks that have no no-data values inside
      OUT_W:
      - mask_to_ENVI_Classification(): Bugfix for wrong no data value in case of cloud classification masks that have no no-data values inside
      DB_T:
      removed deprecated import statement
      PC:
      - deleted deprecated versions of process_controller modules
      d02c9f19
    • Daniel Scheffler's avatar
      Bugfix for unexpected pixel values in cloud masks (bug from last commit);... · b1ead53b
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      Bugfix for unexpected pixel values in cloud masks (bug from last commit); bugfix for wrong colors in some cloud classification files
      L1A_P:
      - L1A_object.logger: bugfix for not creating new logger if there is a logger without handlers
      L1B_P:
      - correct_spatial_shifts(): bugfix for wrong resampling algorithm in case of masks attribute
      OUT_W:
      - mask_to_ENVI_Classification(): bugfix for returning array with wrong pixel values in case of missing no data value
      b1ead53b
  11. 13 Oct, 2016 1 commit
    • Daniel Scheffler's avatar
      revised logging practices of whole GMS package (fixes Permission errors during... · 11e1bc1c
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      revised logging practices of whole GMS package (fixes Permission errors during logging); added direct call of external DeShifter module
      L0B_P:
      - updated calls for logger closing
      L1A_P.L1A_object:
      - converted L1A_object.logger to property 'logger'
      - added close_GMS_loggers()
      - updated __getstate__ and __setstate__
      - log_for_fullArr_or_firstTile(): added 'close logger'-calls
      - MetaObj2ODict(): bugfix for not deleting MetaObj
      - added to_GMS_file() on the basis of OUT_W.ASCII_writer() which is now deprecated
      - delete_tempFiles(): added 'close logger'-calls
      L1B_P:
      - reordered imports
      - updated logger getters and 'close logger'-statements
      - L1B_object:
          - removed its own logger setup
          - correct_spatial_shifts(): added working version
      L2A_P:
      - DESHIFTER: updated logger getters and 'close logger'-statements
      INP_R:
      - pickle_SRF_DB(): updated logger getters and 'close logger'-statements
      OUT_W:
      - ASCII_writer(): now deprecated; added 'unclosed logfile' warnings
      - Obj2ENVI: updated writer calls for GMS file
      HLP_F:
      - removed setup_logger()
      - moved close_logger() to new module 'logging'
      - moved GMS_logger() to new module 'logging'
      - failed_GMS_object: updated logger getter
      - find_nearest() is now imported from external package 'py_tools_ds'
      - removed duplicate version of corner_coord_to_minmax()
      logging:
      - added new module logging, based on previous logging functions from HLP_F
      MGRS_tile:
      - added higher timeout for getting geometry from pgSQL database
      SpatialIndexMediator:
      - SpatialIndexMediatorServer:
          - status: revised return value
          - start(): revised warnings
          - stop(): revised return value
      PC:
      - job.logger is now an instance of GMS_logger
      - added new version of L2A_map()
      - added shutdown_loggers statement
      11e1bc1c
  12. 12 Oct, 2016 3 commits
    • Daniel Scheffler's avatar
      Bugfix for not properly closed logfiles; bugfix for · db54bd81
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      L0B_P:
      - L0B_object: bugfix for not properly closed logfiles
      L1A_P:
      - added assignment of L1A_object.GMS_identifier['logger']
      - added verbose mode to get_MetaObj() and disabled it
      - __getstate__(): bugfix
      L1B_P:
      - Scene_finder.filter_possib_ref_scenes(): bugfix for not filtering by projection
      ENV:
      - added dummy function check_paths()
      HLP_F:
      - close_logger(): bugfix for not checking if given logger has handlers
      CFG:
      - deleted two deprecated comments
      PC:
      - added some job IDs
      - added 'job comment info' during startup
      db54bd81
    • Daniel Scheffler's avatar
      Bugfix for not properly closed logfiles; added environment checker for Spatial... · 77a105fc
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      Bugfix for not properly closed logfiles; added environment checker for Spatial Index Mediator Server
       L1A_P:
       - L1A_Obj.__getstate__(): bugfix for not properly closed logfiles
      L1B_P:
      - get_reference_image_params_pgSQL(): bugfix for not properly closed logfile
      L2A_P:
      - correct_shifts(): bugfix for not properly closed logfile
      ENV:
      - check_dependencies(): added functionality to check current status of Spatial Index Mediator Server and to start the server if needed
      - added _log_or_print()
      HLP_F:
      - added close_logger()
      - added draft of class GMS_logger (not usable so far)
      - subcall_with_output(): added keywords no_stdout and no_stderr
      SpatialIndexMediator:
      - added class SpatialIndexMediatorServer: a class for interacting with java server (status, start, stop, restart, is_running, port, ...)
      CFG:
      - added job.path_spatIdxSrv
      PC:
      - added calls of environment checkers
      pgSQL_DB:
      - added 'path_spatial_index_mediator_server' to config table
      77a105fc
    • Daniel Scheffler's avatar
      removed a deprecated import statement · e9f82e2a
      Daniel Scheffler authored
      L1A_P:
      - see above
      e9f82e2a
  13. 07 Oct, 2016 6 commits
    • Daniel Scheffler's avatar
      added a dummy environment checker module · 8e827622
      Daniel Scheffler authored and Mathias Peters's avatar Mathias Peters committed
      8e827622
    • Daniel Scheffler's avatar
      808ab70a
    • Daniel Scheffler's avatar
      40cb3727
    • Daniel Scheffler's avatar
      removed deprecated code in L1B_P; bugfix for wrong pixel size in reprojected... · c44bbeb4
      Daniel Scheffler authored
      removed deprecated code in L1B_P; bugfix for wrong pixel size in reprojected MGRS tiles (fixed in 'py_tools_ds'-package)
      L1B_P:
      - refactored Scene_getter to Scene_finder
      - moved COREG_OLD.get_reference_image_params_pgSQL() and COREG_OLD.sceneIDList_to_filt_overlap_scenes() to Scene_finder
      - removed deprecated class COREG_OLD
      c44bbeb4
    • Daniel Scheffler's avatar
      moved a couple of functions from GEOPROCESSING to external package... · a7c6c26f
      Daniel Scheffler authored
      moved a couple of functions from GEOPROCESSING to external package 'py_tools_ds' and added direct imports within respective modules
      GEOP:
      - the following functions moved to 'py_tools_ds':
          - transform_utm_to_wgs84
          - transform_wgs84_to_utm
          - transform_any_prj
          - reproject_shapelyPoly
          - lonlat_to_pixel
          - latLonToPixel
          - pixelToLatLon
          - pixelToMapYX
          - mapXY2imXY
          - imXY2mapXY
          - isProjectedOrGeographic
          - EPSG2Proj4
          - EPSG2WKT
          - WKT2EPSG
          - get_UTMzone
          - geotransform2mapinfo
          - mapinfo2geotransform
          - get_corner_coordinates
          - get_prjLonLat
          - get_proj4info
          - proj4_to_dict
          - prj_equal
          - corner_coord_to_minmax
          - get_footprint_polygon
          - get_overlap_polygon
          - find_line_intersection_point
          - calc_FullDataset_corner_positions
          - is_point_on_grid
          - is_coord_grid_equal
          - snap_bounds_to_pixGrid
      IO:
      - deleted deprecated module envifilehandling
      - renamed envifilehandling_BD to envifilehandling
      - deleted deprecated module sysenvironment
      a7c6c26f
    • Daniel Scheffler's avatar
      - replaced the duplicated fork of COREG within L1B_P by an imports from external packages · be17e860
      Daniel Scheffler authored
      - GeoMultiSens now depends on CoReg_Sat and py_tools_ds!
      GEOP:
      - moved warp_ndarray to external package 'py_tools_ds'
      - updated warp_ndarray calls
      L1A_P:
      - added property coreg_needed
      - added cubic resampling for MGRS tiles that have to be reprojected to the next UTM zone
      - to_MGRS_tiles(): added verbose mode
      L1B_P:
      - COREG and DESHIFTER are now imported from external package CoReg_Sat
      - deleted deprecated draft of COREG_GMS
      - added class Scene_getter(): a class used to find a proper geospatial reference scene for a given target scene
      - added class ref_Scene
      - L1B_object:
          - revised the whole class (it now generates its coreg_info and deshift_results on its own)
          - added property spatRef_available
          - added get_spatial_reference_scene()
          - added get_opt_bands4matching (based on an earlier version from COREG)
          - added coregister_spatially()
          - added correct_spatial_shifts(): not yet working
      L1C_P:
      - L1C_object: updated __init__() args of super class L1B_object
      L2A_P:
      - updated warp_ndarray calls
      L2B_P:
      - spectral homogenization is now only executed if target CWLs are different to source CWLs
      INP_R:
      - fixed an unclosed file within GMSfile2dict
      OUT_W:
      - fixed an unclosed file within Obj2ENVI
      PC:
      - added a new version of L1B_map_1()
      be17e860
  14. 26 Sep, 2016 8 commits
  15. 23 Sep, 2016 1 commit