Collecte de trace avec QField pour positionner les images

Bonjour,

Le contexte :

  • J’ai débuté les prises de vues avec le matériel que nous avons au travail.
  • Caméra : RICOH THETA z1.
  • GNSS : Eos Positioning Arrow 100+.
  • Le problème que nous rencontrons avec la THETA z1 est que seules les coordonnées de la première photo de la séquence semblent sauvegardées. (Par ailleurs, je ne suis pas sûre de la qualité du positionnement.)
  • Nous avons donc décidé d’utiliser un GNSS RTK pour corréler les positions des photos à une trace GNSS. Le Arrow se connecte au téléphone en bluetooth et remplace sa position (localisation ficitve). J’ai choisi de collecter mes données sur QField.
  • Je n’y connais pour ainsi dire rien en GPX.

Le problème :

  • J’ai créé une couche de points avec dimension M dans un geopckage pour le projet QField.
  • Un champ de valeur now() permet de stocker la date et l’heure. Le suivi avec l’epoch enregistré en M me permet donc d’enregistrer des points à intervalles réguliers avec leur timestamp.
  • Mais voilà : je ne parviens pas à transformer cette couche de points en une trace GPX convenable pour corréler les images sur JOSM.

Ce que j’ai tenté :

  • Créer un track à partir des options d’export de la couche sur QGIS.
  • Créer des waypoints à partir des options d’export de la couche sur QGIS, puis une track avec l’outil “Convert GPX feature type” toujours dans QGIS.

La question : comment puis-je valoriser mes points collectés sur QField ce matin ?

Question optionnelle : je suis preneuse de toute méthode plus rapide pour les collectes futures.

D’avance, merci beaucoup !

C’est pour les lier à des données particulières ou faire de la collecte en même temps que la prise de photos ?

Si QField ne crée pas de GPX par défaut, il est sûrement possible et plus simple de faire tourner en parallèle une appli qui s’occupe de juste d’enregistrer un GPX, il y en a toute une ribambelle !

1 Like

J’avais choisi QField uniquement parce-que c’est un outil que je connais. Et avec des étiquettes pour vérifier que mes timestamps fonctionnaient. (Lors de ma tentative précédente, j’avais fait l’erreur de verrouiller mon écran, ce que la collecte d’Epoch n’apprécie visiblement pas.)

A priori, QField gère les GPX. Je n’ai simplement pas trouvé comment en créer un vide pour enregistrer ma trace. Et j’ai naïvement pensé que la conversion depuis un géopackage ou un shapefile serait aisée.

Mais je n’ai pas besoin de collecter davantage que la position et l’heure, en effet. Je vais essayer d’enregistrer directement une trace GPX la prochaine fois.

Petite mise à jour : j’ai réussi à téléverser l’ensemble des photos prises vendredi matin, avec un petit peu de bricolage.

Pour les curieux :

Dans QGIS, j’ai trouvé le point le plus proche de ma première photo, et estimé le décalage à 50cm.

Ayant un point QField par seconde et une photo toutes les 6 secondes, j’ai extrait tous les 6 points.

J’ai associé le nom de la photo à chaque point pour me repérer.

Puis j’ai vérifié que ce décalage était similaire tout au long de l’acquisition. Ce qui par chance était à peu près le cas.

Du coup, j’ai extrait le point collecté une seconde avant, et lui ai associé le nom de la photo également. J’ai fait un point to path pour relier le point un peu trop avancé au point trop reculé. Puis j’ai généré un unique point le long de chacune de ces lignes, décalé de 50cm.

Demain je tente de collecter mes données de postitionnement directement en GPX.

Au-delà du tracé GPX, j’ai l’impression que JOSM a du mal à accepter les timestamps des photos.

À suivre…

Il faut voir si les timestamp GPS et de la caméra sont limités à la seconde ou si il vont au delà (milliseconde).

Avec du RTK, la milliseconde devient quasi indispensable, sinon, ce qu’on gagne en précision de position, on le perd en temporel vu qu’il n’y a pas de synchro entre les deux (la position n’est pas prise au moment où la photo est prise).

Dans mon scrip Qoocam, je compense ça par une interpolation, ce que JOSM sait faire.

1 Like

J’avais l’intention de réaliser une interpolation dans JOSM.

Je crois que le timestamp GPS descend bien à la milliseconde. Pour la caméra, pas sûre.

Mise à jour #2 : J’ai réussi. La conversion geopackage/shapefile vers GPS fonctionne. C’est le timestamp des images qui n’était pas lu correctement.

Pour celles·eux qui rencontreraient les mêmes problèmes :

Dans l’outil de corrélation, j’ai utiliser l’option “Utiliser une photo d’un compteur précis”, qui m’a permis de prendre en compte les timestamps. Puis bien sûr “Ignorer la position pour : Images avec géolocalisation”, puisque la THETA attribue les coordonnées de la première photo à l’ensemble.

À l’avenir, je vais capturer mes traces directement en GPX avec GPS Logger.

Merci Christian !

1 Like