Comment gérer l'orientation de la caméra dans un téléversement automatisé?

Bonjour,

Je souhaite utiliser la CLI pour automatiser le téléversement.

J’ai compris de https://docs.panoramax.fr/cli/USAGE/ que je pouvais utiliser l’exécutable en ligne de commande avec un appel de la forme
“<rep_exe_cli>\panoramax_cli-win-amd64.exe” --api-url “https://panoramax.ign.fr” --parallel-uploads 3 --title “Essai de téléversement auto” --token “<token du compte téléverseur>” “<répertoire contenant les photos panoramiques>”.

J’aimerais traiter le cas de figure où la séquence n’a pas été acquise avec une caméra face à la route (heading 0/360) mais orientée (90 ou 270).
=> est-ce possible d’inclure ce paramétrage dans la CLI dès l’étape de téléversement ?
=> quel est le code de retour de la CLI ? Est-ce possible qu’il soit constitué du collectionId (ce qui permet de rendre compte à l’utilisateur, ou d’effectuer automatiquement des manipulations à posteriori sur la séquence)
=> sinon est-ce bien la route PATCH /api/collections/{collectionId} qu’il faut employer ? Sur le paramètre “relative_heading” ? Et en ce cas, que renseigner ?

Nota: est-ce possible d’ajouter un tag secondaire “CLI” sur les discussions du forum ?

3 Likes

Amusant, simultanéité de question avec Rotate sequence automatically - #2 par NPy_IGN

Ahhh, oui, en même temps. Vous avez demandé tous les détails que j’aimerais connaître. C’est parfait. Je vais lire les réponses à votre question.

Pour effectuer une rotation avant l’envoi, il y a le script pour le traitement des timelaps de la Qoocam qui gère cela avec la commande --heading :

En espérant que cela puisse s’adapter à vos besoins.

Bonjour,
Merci pour ce partage. Je comprends de votre script la ré-écriture de la matrice de pixels vant téléversement.
Dans mon automate, je préférerais que la ré-orientation soit gérée côté Panoramax, cela me semble faisable car l’interface le permet et cela m’éviterait d’installer des dépendances.

Bonjour !
Côté équipe Panoramax, vous avez des réponses sur ce paramètre en CLI ou quelle route appeler après le dépôt ?

Pour info notamment @nave88 , mon process a été d’abandonner la CLI.
_Requête POST sur https://panoramax.ign.fr/api/upload_sets, afin de générer un upload set, on récupère alors son ID
_Requêtes POST sur https://panoramax.ign.fr/api/upload_sets/<UploadSet.id>/files pour déposer les photos
_Ecriture dans une base locale, compagnon du script, d’infos sur le téleversement ; dont l’id de l’upload set ainsi que l’orientation de la caméra, et du statut de patchage de l’orientation à null
_Côté serveur, dispatching des images et floutage, conduisant à la génération de séquences
_Régulièrement, requête GET sur https://panoramax.ign.fr/api/upload_sets/<UploadSet.id> pour obtenir le <UploadSet.dispatched> qui lorsqu’il est à true permet de récupérer les <UploadSet.associated_collections> associées
_Pour chaque <UploadSet.associated_collections.id> d’un upload set non patché de son orientation, appel de POST https://panoramax.ign.fr/api/collections/<(UploadSet.associated_collections.id> en fournissant en body le json {
“relative_heading”:
}
_Ecriture dans la base locale de la réussite du patch des collections.

Bonjour @NPy_IGN , oui, c’est pas encore dispo au niveau de la CLI (ou du web), on va essayer de rendre ca plus facilement disponible, mais ta solution fonctionne effectivement comme il faut :+1:

La nouvelle version de l’outil en ligne de commande (la version 1.1.8) permet maintenant de passer le paramètre –relative-heading pour définir l’angle par rapport à l’avant du véhicule.

  • 90° (–relative-heading=90) si la caméra pointait à droite
  • -90° (–relative-heading=-90) si la caméra pointait à gauche

à noter que la photo n’est pas modifiée en elle-même (le centre reste au même endroit), mais on se sert de cette info pour pointer correctement vers la photo suivante.

Pour mettre à jour, vous pouvez suivre la documentation.

2 Likes

Merci pour cette action.

Je comprends que l’API n’a cependant pas bougé /api/upload_sets/{upload_set_id} étant encore

=> Est-ce prévu d’y insérer un relative-heading : 0?

Tu regardes quelle route et sur quelle instance ? Il y a peut etre un oubli dans la documentation, mais la doc de la création/mise à jour d’un upload_set (sur les instances de l’ign et d’osm-fr) est

Ma référence est Open API - Panoramax - Docs où POST /api/upload_sets et PATCH /api/upload_sets/{upload_set_id} sont dépourvus de relative_heading y compris après ctrl+f5.

Bonjour,

Queles téléversements étaient d’orientation erronée. J’ai donc appliqué un PATCH sur ses upload_sets suivis d’un PATCH de toutes leurs collections. Retours d’appels HTTP Ok, MAIS:

  • L’upload set, via un GET par l’API, confirme prise en compte de la nouvelle orientation
  • En navigation dans Panoramax (non authentifié), l’orientation semble ok
  • Les collections, via des GET par l’API, ne reflètent pas dans leur json la nouvelle orientation
  • Dans l’interface de visualisation, les collections ne reflètent pas la nouvelle orientation
    • Ni dans la partie navigation dans/via les images
    • Ni dans le sous-onglet “régler l’orientation”

Il y a un truc que j’ai loupé ?