IGNF / myria3d

Myria3D: Aerial Lidar HD Semantic Segmentation with Deep Learning
https://ignf.github.io/myria3d/
BSD 3-Clause "New" or "Revised" License
169 stars 23 forks source link

Echec lors de l'analyse du LIDAR HD IGN #67

Closed phardy-egis closed 1 year ago

phardy-egis commented 1 year ago

Je rencontre des difficultés pour faire la classificaiton d'un LIDAR HD IGN.

Voici les jeux de données utilisés:

Afin de colorizer le raster, j'ai utilisé 2 pipelines PDAL:

1. Colorization RVB (depuis ORTHOHR)

Voici le fichier pipeline.json:

{
    "pipeline": [
        "./input/Semis_2021_0772_6278_LA93_IGN69.laz",
        {
            "type": "filters.colorization",
            "raster": "./input/ORTHOHR.tif",
        },
        {
            "type": "filters.range",
            "limits": "Red[1:]"
        },
        {
            "type": "writers.las",
            "compression": "true",
            "minor_version": "2",
            "dataformat_id": "3",
            "filename": "./input/Semis_2021_0772_6278_LA93_IGN69_colorized.laz"
        }
    ]
}

2. Colorization Infrarouge (depuis ORTHOHR IRC)

Voici le fichier pipeline.json:

{
    "pipeline": [
        "./input/Semis_2021_0772_6278_LA93_IGN69_colorized.laz",
        {
            "type": "filters.colorization",
            "raster": "./input/ORTHOHR_IRC.tif",
            "dimensions": "Infrared:1:1.0"
        },
        {
            "type": "filters.range",
            "limits": "Infrared[1:]"
        },
        {
            "type": "writers.las",
            "compression": "true",
            "minor_version": "4",
            "dataformat_id": "8",
            "filename": "./input/Semis_2021_0772_6278_LA93_IGN69_colorized_IR.laz"
        }
    ]
}
  1. Le traitement est finalement appliqué avec predict.
python -m myria3d.predict --config-path /model/ --config-name proto151_V2.0_epoch_100_Myria3DV3.1.0_predict_config_V3.2.0.yaml predict.src_las=/lidar/input/Semis_2021_0772_6278_LA93_IGN69_colorized_IR.laz predict.output_dir=/lidar/output predict.ckpt_path=/model/proto151_V2.0_epoch_100_Myria3DV3.1.0.ckpt predict.gpus=0 datamodule.batch_size=10 hydra.run.dir=/log/hydra
  1. EN résultat, le LAZ en sortie n'a que des points "Non classifiés"

image

image

Avez-vous une idée de l'étape manquante dans le traitement ?

Merci.

CharlesGaydon commented 1 year ago

Bonjour @phardy-egis, ma première piste est la suivante : la prédiction du modèle d'IA est par défaut stockée dans le canal PredictedClassification (cf. la documentation). Est-ce que ce canal que vous regardez ? Par ailleurs, l'API préférée pour lancer l'inférence a légèrement changé, et votre commande peut être actualisée en suivant celle-ci.

python run.py task.task_name=predict ...
CharlesGaydon commented 1 year ago

@phardy-egis Du nouveau sur ce problème ? :)

CharlesGaydon commented 1 year ago

Je ferme l'issue, n'hésitez pas à rouvrir si besoin.

Un outil de colorization existe, et je le mentionne dans cette nouvelle issue : https://github.com/IGNF/myria3d/issues/75