gpf_check_raster.core module

Main module logic.

gpf_check_raster.core.check_resolution_diff(resolutions: list) Status

Cette fonction vérifie l’écart de résolution entre les images de la livraison. Si la résolution maximale est plus de 5 fois supérieure à celle minimale, la fonction retourne une erreur.

Paramètres:

resolutions (list) – liste des résolution de chaque image de la livraison

Renvoie:

SUCCESS si les écarts de résolution sont ne dépassent pas un facteur 5, FAILURE sinon

Type renvoyé:

Status

gpf_check_raster.core.check_srs_matching(dataset: Dataset, crs: str) bool

Cette fonction permet de vérifier la cohérence entre la projection du raster en entrée de la fonction et la projection indiquée dans le fichier de configuration.

Paramètres:
  • dataset (gdal.Dataset) – image raster lue par gdal

  • crs (str) – Système de projection de la livraison

Renvoie:

True si les projections concordent, False sinon

Type renvoyé:

bool

gpf_check_raster.core.get_image_extent(dataset: Dataset, crs: str) GpfExtent | None

Fonction qui récupère l’étendue de l’image. Si l’origine de l’image est 0,0 ou qu’elle a une dimension nulle, alors on renvoie une erreur.

Paramètres:
  • dataset (gdal.Dataset) – image raster lue par gdal

  • crs (str) – Système de projection de la livraison

Renvoie:

étendue de l’image (East, West, North, South) ou None en cas d’erreur

Type renvoyé:

GpfExtent

gpf_check_raster.core.get_resolution(dataset: Dataset) tuple[float] | Status

Retourne la résolution spatiale de l’image raster. Si la résolution est impossible à récupérer, la fonction renvoie un statut d’erreur.

Paramètres:

dataset (gdal.Dataset) – image raster lue par gdal

Renvoie:

résolution spatiale (x,y) en mètres ou Status.FAILURE dans le cas d’une erreur.

Type renvoyé:

Union[tuple(float), Status]

gpf_check_raster.core.read_raster_file(filepath: Path) Dataset | None

Lit un fichier avec gdal.

Si l’image n’est pas reconnue, une erreur est retournée.

Paramètres:

filepath (Path) – chemin du fichier raster

Renvoie:

donnée raster

Type renvoyé:

gdal.Dataset

gpf_check_raster.core.run(parameters: GpfOrchestratorParameters, src_srs: str, upload_dir_paths: dict, authorized_file_extensions: Iterable = ['*'], ignored_file_extensions: Iterable = ['md5']) tuple[Status, dict]

Main function running the logic.

Paramètres:
  • parameters (GpfOrchestratorParameters) – parameters read from input configuration file.

  • src_srs (str) – Spatial reference system given in parameters file.

  • upload_dir_paths (dict) – Dict of (_id, path) with path where data for upload _id are

  • authorized_file_extensions (Iterable, optional) – List of authorized file extensions. Defaults to (« * »).

  • ignored_file_extensions (Iterable, optional) – List of ignored file extensions. Defaults to (« md5 »).

Renvoie:

statut de la vérification et étendue globale.

Type renvoyé:

tuple[Status, dict]