Le tout nouveau Panoramax, version 2.7.0

:trumpet: la nouvelle version de Panoramax 2.7.0 est disponible :trumpet:

Vous pouvez d’ores et déjà la tester sur panoramax.ign.fr et panoramax.openstreetmap.fr

Cette version est le fruit de plusieurs mois de travail de la start-up d’état en lien avec les demandes des utilisateurs.

Quelles sont les nouveautés ?

Une nouvelle interface de versement

Les fonctionnalités uniquement disponibles via l’outil en ligne de commande le sont désormais sur le site web et l’application mobile :

  • la reprise d’un envoi interrompu,
  • La répartition des photos en plusieurs séquences cohérentes,
  • la suppression des photos prises au même endroit à peu près au même moment, comme des photos prises par un véhicule à l’arrêt.

Pour cela, nous avons dû effectuer une refonte en profondeur du processus d’envoi des données.

  • Avant : pour envoyer des données, on créait une séquence (une collection dans le jargon STAC) et on y ajoutait des photos.
  • Maintenant : Nous avons rajouté une notion de versement (upload_set de son petit nom technique dans la documentation). Pour envoyer des photos, c’est assez similaire, on crée un versement et on y ajoute des photos. Une fois toutes les photos envoyées, les photos reçues vont être réparties en une ou plusieurs séquences et les photos jugées inutiles vont être supprimées.

Ces nouvelles APIs sont maintenant utilisées par le site web, et nous en avons profité pour permettre l’envoi de plusieurs dossiers d’un coup en les drag & dropant et rafraichir l’interface.

Améliorations de l’outil en ligne de commande

:warning: Nouveau nom

Par souci de cohérence, nous avons renommé l’outil, qui se nomme maintenant panoramax_cli (et non plus geovisio_cli). De même, la commande à lancer n’est plus geovisio mais panoramax_cli.

Pour le mettre à jour, vous pouvez récupérer le dernier exécutable directement sur la page dédiée, ou utiliser pip : pip install panoramax_cli.

:warning: Attention, la version minimum demandée de python est à présent la 3.9.

Pour plus de détails, vous pouvez vous reporter à la documentation technique.

Nouveautés

L’outil en ligne de commande s’adapte aux nouvelles APIs avec quelques bonus.

Les photos sont désormais envoyées en parallèle pour accélérer le versement si votre connexion le permet.
Nous avons de plus supprimé le fichier _geovisio.toml, la synchronisation avec l’existant se fait via des appels API, ce qui devrait simplifier la reprise sur incident si un envoi ne s’est pas bien terminé.

Pour démystifier le processus d’envoi en ligne de commande, voici une démonstration :
asciicast

Il est de plus à présent possible de récupérer des photos facilement via la commande panoramax download et de les transférer entre les instances Panoramax via panoramax transfer.

Nouveautés pour la visionneuse

La visionneuse (web viewer) a été renommée en Panoramax et est désormais disponible sous le package NPM @panoramax/web-viewer. Pensez à mettre à jour vos dépendances et vos imports de GeoVisio vers Panoramax.

De nouvelles langues sont prises en charge : Chinois traditionnel, Allemand et Espagnol.

Un bouton pour se géolocaliser à l’aide du GPS du smartphone a été ajouté sur la carte.

Divers correctifs améliorent l’affichage des images (orientation, temps de chargement, panoramas partiels).

Nouvelle gestion des signalements

Pour signaler un problème sur une photo comme un souci de floutage, de vie privée ou de qualité, nous avions initialement mis en place un système de mail. Ce système est maintenant remplacé par des APIs dédiées qui nous permettent de garder la trace, instance par instance, des signalements et d’automatiser certaines actions.

Pour signaler une photo, il faut afficher les détails de cette photo, en cliquant sur le ? en bas à droite :
image

Puis signaler la photo
image

La il vous sera demandé de préciser ce qui ne va pas et d’envoyer le signalement.

image

Gestion des zones interdites

L’administrateur d’une instance peut désormais refuser des photos pour certaines zones. Nous utiliserons cette fonctionnalité sur l’instance IGN pour limiter les contributions au territoire français, et pour interdire les photos à l’intérieur des Zones interdites à la captation aérienne de données (ZICAD).

Nous contacterons les utilisateurs ayant des photos en dehors de France pour leur demander de les transférer sur panoramax.openstreetmap.fr, en utilisant la nouvelle fonctionnalité de l’outil en ligne de commande pour automatiser ces transferts.

Sur panoramax.openstreetmap.fr, seules les ZICAD seront interdites, cf. la discussion sur le forum.

Au niveau de l’API, il est aussi possible pour un utilisateur de définir ses zones sur ses contributions, cela dans un objectif de protection de la vie privée (par exemple une zone approximative autour de son domicile). Il n’y a pas encore d’interface pour cette fonctionnalité, il faut suivre la documentation et appeler directement l’API.

Suppression de la conversion WebP

La conversion JPG vers WebP a été étudiée : il y a gain effectif sur la taille du stockage et sur les temps de transfert associés, mais cela nécessite trop de ressources de faire cette conversion. Nous l’avions mis de côté sans s’interdire d’y revenir plus tard, quand nous aurions plus de temps et de ressources pour s’attaquer à ce sujet.
Nous avions cependant laissé, par souci de rétrocompatibilité, la possibilité de récupérer un fichier WebP, mais la transformation se faisait à la volée, annulant tous les gains de performance de récupérer un fichier plus petit.
Nous avons donc supprimé totalement la possibilité de récupérer un fichier WebP pour que les choses soient plus claires.

Nouveaux noms pour les images docker

Afin de simplifier le déploiement d’instances Panoramax, des images docker sont mises à disposition.

Comme pour l’outil en ligne de commande, ces images sont maintenant panoramax/api et panoramax/website et non plus geovisio/api et geovisio/website.

Si vous utilisez ces images docker, pensez à les mettre à jour pour profiter des dernières nouveautés.

Conclusion

Voici pour les modifications les plus marquantes. Vous pouvez retrouver la liste de tous les changements pour l’API, la visionneuse et le site web.

N’hésitez pas à nous faire des remontées sur ce qui a été fait et/ou à nous donner des nouvelles idées d’évolutions afin que nous continuions à faire vivre ce commun ensemble.

16 Likes

Bravo pour le travail accompli et de prendre le temps d’en rendre compte ici et ailleurs.

2 Likes

L’envoi sera juste refusé ? Avec un message explicite ? QUID des photos déjà envoyées ?

oui, l’envoi sera refusé, avec un message qu’on espère explicite :sweat_smile:

Pour les photos envoyées, on va contacter les utilisateurs qu’on peut contacter pour leur demander de transférer les photos sur l’instance OSM-fr (ou le faire à leur place si c’est compliqué)

1 Like

Bonjour

Merci encore pour toutes ces évolutions.
Je suis en train d’envoyer des photos par la nouvelle interface (instance IGN). Voici quelques remarques :

Envoi de dossiers
L’envoi de dossier ne semble pas fonctionner : je fais glisser-déposer mon dossier, la page semble “clignoter” et puis plus rien. Par la suite, je constate que j’ai des “Envois non terminés” dans ma liste de séquences.

Nommage des séquences
Je confirme que j’aimais vraiment beaucoup pouvoir nommer mes séquences manuellement avant envoi. En effet, maintenant cela m’oblige à des manips en plus pour retourner dans la page Mes photos et renommer. De plus, il me semble qu’on ne peut pas renommer la séquence si elle est en cours de traitement, donc ça repousse encore le moment où on peut la renommer (dans le cas de lenteurs de traitement qui arrivent parfois). Cela se complique encore si on a envoyé plusieurs séquences car on doit chercher laquelle est laquelle pour les renommer.

Division d’une séquence en plusieurs
Concernant la division d’une séquence en plusieurs, cela a une conséquence pour moi.
En effet il arrive parfois que je prenne 2 “morceaux” de séquence que je réunis en 1 seule afin d’avoir sur une rue, une seule séquence au lieu de 2 qui se suivent. Quand je fais ça les 2 morceaux ont été pris le même jour à quelques minutes d’intervalle. Parfois c’est juste que j’ai supprimé un détour fait lors de la collecte, générant ce petit écart temporel.

Jusque là je pouvais faire cette “astuce”, mais maintenant cela me divise la séquence en 2 à cause des quelques minutes d’écart.

Quel laps de temps max est autorisé sans que cela coupe la séquence ?

~~

J’ai conscience que c’est aussi à moi d’adapter mon process, pas de soucis avec ça. J’ai déjà pris de vieilles habitudes ! :sweat_smile:

Peut être une autre voie à envisager aussi… une case à cocher (sur l’interface web) ou une option (pour la CLI), pour indiquer qu’on a déjà fait le dédoublonnage et l’organisation en séquences et que l’API ne devrait pas faire ce traitement ?

1 Like

Pour le problème d’envoi de dossier est-ce que vous pouvez me dire sur quel navigateur vous avez essayé de l’envoyer.
Aussi c’était l’envoi d’un seul dossier ou de plusieurs en même temps ?

Merci @Patchanka pour ces retours :pray:

Envoi de dossiers
C’est étrange, c’est peut-être dû à un problème avec les anciennes versions de Firefox ? :thinking: on va investiguer, est ce que tu peux nous donner la version précise de ton navigateur ? (firefox 115 c’est ca ?)

Nommage des séquences
c’est en train d’etre modifier, ca devrait arriver bientôt. Le plan est de pouvoir donner un nom avant d’envoyer les photos, et toutes les séquences auront le nom donné (dérivé avec un compteur à la fin si il y a plusieurs séquences (un truc du genre super-titre-1)). On va aussi donner la possibilité de renommer chaque séquence directement dans la meme page, mais ca ne sera possible qu’à la fin de l’envoi, au moment où elles seront crées.
Ca t’irait ?

Division d’une séquence en plusieurs
Par défaut on découpe s’il y a plus d’1 minute ou 100 m entre deux photos qui se suivent. Ca peut être configuré via l’api, mais on n’a pas encore mis d’interface pour configurer ca. Tu mettrais quelle valeur toi ?

On peut rajouter un moyen de configurer ca, on va regarder.
Une solution complémentaire serait de mettre de facilement modifier ca en post traitement, rien ne l’empêche au niveau technique (et c’est assez rapide), ca pourrait etre pratique quand on ne sait pas exactement quelle valeur on veut.

là j’ai testé sur Firefox 128.3.0esr (la 115 est toujours déployée chez mes collègues mais je teste la 128 en vue d’une mise à jour prochaine)

ça me parait super

J’ai voulu envoyer un dossier ce weekend sur l’instance OSM, avec Firefox 131 et j’ai eu le même soucis qu’au boulot sur l’instance IGN avec Firefox 128 esr…

Un correctif sur l’envoi des dossiers a été déployé sur l’instance IGN.
Est-ce que tu peux me dire si ça règle ton souci d’envoie lorsque tu feras un nouvel envoie de photos via l’interface web @Patchanka ?

1 Like

Bonjour

désolée j’ai eu un long moment d’absence mais je reprends maintenant contact avec le monde :slightly_smiling_face:

Je te confirme @JeanA que le soucis est bien résolu. Merci beaucoup !
Le temps de rattraper les 2 temps d’échange que j’ai manqué, et je reviens avec d’autres questions ou remarques :wink:

1 Like

Pour la prochaine version, il faudra faire afficher la metadata Exif du nom de l’application qui à pris la photo et l’a postée sur l’instance…

voir l’intégration de la donnée Exif à partir de la 1.2.0 de Baba

J’ai identifié un problème (je ne sais pas à quoi il est lié) :


(Capture d’écrant de https://panoramax.fr/stats)

J’espère que ce n’est qu’un bug de l’outil des stats qu’on a bien toujours l’entièreté de la base ! :grimacing:

oups, il y a un problème dans la requête SQL de stat, on ne comptait pas l’instance si il n’y avait pas de nouvelle photo le moi courant (et il n’y avait pas de photos sur 2 janvier sur l’instance IGN :stuck_out_tongue_winking_eye: )

C’est visuellement corrigé vu que des photos sont arrivées depuis, mais on va corriger la requête SQL, merci !

1 Like