Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Utilisation des différents scripts #128

Open
chugom opened this issue May 2, 2024 · 3 comments
Open

Utilisation des différents scripts #128

chugom opened this issue May 2, 2024 · 3 comments

Comments

@chugom
Copy link

chugom commented May 2, 2024

Bonjour,` après avoir installé la VM dans Docker et le test fait et réussi! J'ai essayé de faire un test sur un las colorisé. j'ai créé deux répertoires inputs et outputs qui sont bien montés dans la VM, car j'arrive à voir le contenu (dans le dossier inputs j'ai ajouté les deux derniers versions des fichiers *.ckpt et yaml et mon las) dans la VM. J'utilise le script suivant :

python -m myria3d.predict  
--config-path /inputs/  
--config-name proto151_V2.0_epoch_100_Myria3DV3.1.0_predict_config_V3.5.0.yaml
predict.src_las=/inputs/cloud_merged.las predict.output_dir=/outputs/
predict.ckpt_path=/inputs/20230930_60k_basic_targetted_epoch37_Myria3DV3.4.0.ckpt
datamodule.batch_size=25
hydra.run.dir=/outputs/

il me redonne la main très rapidement, je n'ai pas d'erreurs, mais je n'ai rien en sortie.
Pouvez-vous m'aider ?

ps: j'utilise cette ligne de commande pour créer le container sinon je n'ai rien :
docker run -v /g/DEV/myria3d-prod/inputs/:/inputs/ -v /g/DEV/myria3d-prod/outputs/:/outputs/ -it lidarprod bash

Merci @CharlesGaydon .

@chugom chugom changed the title Utilisation des différents script Utilisation des différents scripts May 2, 2024
@leavauchier
Copy link
Collaborator

Bonjour @chugom,

Est-ce que cette commande donne le même résultat ?
(c'est le cas d'utilisation privilégié (par rapport à l'utilisation du module predict directement)

python run.py
--config-path /inputs/  
--config-name proto151_V2.0_epoch_100_Myria3DV3.1.0_predict_config_V3.5.0.yaml
task.task_name=predict
predict.src_las=/inputs/cloud_merged.las \
predict.output_dir=/outputs/ \
predict.ckpt_path=/inputs/20230930_60k_basic_targetted_epoch37_Myria3DV3.4.0.ckpt
datamodule.batch_size=25
hydra.run.dir=/outputs/

Pour l'utilisation avec docker, "je n'ai rien" signifie que docker vous rend la main sans aucun log ?

@chugom
Copy link
Author

chugom commented May 13, 2024

Bonjour @leavauchier ,

Merci pour votre retour, j'ai testé et j'ai cette erreur :

Traceback (most recent call last):
  File "/app/run.py", line 112, in <module>
    launch_predict()
  File "/miniconda/lib/python3.9/site-packages/hydra/main.py", line 48, in decorated_main
    _run_hydra(
  File "/miniconda/lib/python3.9/site-packages/hydra/_internal/utils.py", line 377, in _run_hydra
    run_and_report(
  File "/miniconda/lib/python3.9/site-packages/hydra/_internal/utils.py", line 214, in run_and_report
    raise ex
  File "/miniconda/lib/python3.9/site-packages/hydra/_internal/utils.py", line 211, in run_and_report
    return func()
  File "/miniconda/lib/python3.9/site-packages/hydra/_internal/utils.py", line 378, in <lambda>
    lambda: hydra.run(
  File "/miniconda/lib/python3.9/site-packages/hydra/_internal/hydra.py", line 88, in run
    cfg = self.compose_config(
  File "/miniconda/lib/python3.9/site-packages/hydra/_internal/hydra.py", line 559, in compose_config
    cfg = self.config_loader.load_configuration(
  File "/miniconda/lib/python3.9/site-packages/hydra/_internal/config_loader_impl.py", line 141, in load_configuration
    return self._load_configuration_impl(
  File "/miniconda/lib/python3.9/site-packages/hydra/_internal/config_loader_impl.py", line 227, in _load_configuration_impl
    self.ensure_main_config_source_available()
  File "/miniconda/lib/python3.9/site-packages/hydra/_internal/config_loader_impl.py", line 129, in ensure_main_config_source_available
    self._missing_config_error(
  File "/miniconda/lib/python3.9/site-packages/hydra/_internal/config_loader_impl.py", line 103, in _missing_config_error
    raise MissingConfigException(
hydra.errors.MissingConfigException: Primary config directory not found.
Check that the config directory '/inputs' exists and readable

faut-il paramétrer autre part le inputs et le output, les commandes que l'on indiquer sur le chemin des fichiers ne suffisent peut être pas?

Pour répondre du fait que "je n'ai rien", je n'ai pas de log bizarrement et pas de fichier en sortie si c'est bien là que je dois avoir le résultat.

@leavauchier
Copy link
Collaborator

Bonjour @chugom,

La gestion des paramètres se fait avec hydra (dont la doc officielle sera plus complète que les infos que je pourrai donner ici).

Pour configurer quelques paramètres en ligne de commande seulement (et utiliser les paramètres par défaut pour le reste), et lancer le calcul via docker la commande donne quelque chose comme ça :

docker run --userns=host --rm
-v {mon dossier d'entrée}:/input
-v {mon dossier de sortie}:/output
lidar_hd/myria3d:{version_myria3d}
python run.py
task.task_name=predict
predict.src_las=/input/{nom du fichier las}
predict.output_dir=/output
datamodule.batch_size={batch size}

Pour utiliser un fichier de config personnalisé, c'est dans ce cas qu'il faut utiliser --config_path (en suivant la doc d'hydra)

Désolée pour l'erreur dans la commande précédente, j'avais repris les paramètres sans les lire et seulement changé la fonction appelée.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants