Faire un modèle 3D avec une vilaine vidéo GoPro ?
Article mis en ligne le 21 août 2015
dernière modification le 30 novembre 2015

par Yann
logo imprimer

Généralités

Nous explorerons ici la possibilité de réaliser des modèles 3D pour l’archéologie à partir de vidéos HD issues d’une caméra de type GoPro (fisheye, dans cet exemple une "vieille" caméra Gopro Hero 2).

La vidéo a été réalisée en se "promenant" sur une partie du site archéologique (fouille programmée de Charmé réalisée par Vincent ARD dans le cadre du PCR « Le Nord-Charente au Néolithique moyen et récent : enceintes fossoyées, sépultures mégalithiques et territoires » ).

Cette vidéo est "vilaine" notamment parce que :
- elle n’a pas été faite avec une canne ou un drone ( on y voit parfois les mains ou les pieds de votre serviteur) mais avec la GoPro tenue au bras à environ 1m50 de hauteur,
- des variations de lumières (passages de nuages) ont changé l’éclairage pendant l’enregistrement, l’opérateur projette parfois des ombres etc.,
- le déplacement de l’opérateur et les mouvements de caméra sont plutôt rapides,
- la prise de vue n’est pas homogène à l’échelle de la surface (voir les positions de photos extraites qui dessinent le parcours erratique effectué, plutôt centré sur les trous de poteaux),
- le FOV de la caméra n’a pas été modifié (170° ça fait du gros fisheye...),
- le chantier n’a pas été préparé pour cela (pas de cibles pour le géoréférencement/contrôle, fils et repères divers, objets etc..).

La photogrammétrie a été effectuée avec Photoscan, le système utilisé est un Linux (debian 8).

Extraction des images depuis la vidéo

La vidéo HD produite est au format MP4 elle dure 4 minutes 8 secondes pour 470 Mo.

On extrait une première fois les images depuis la vidéo avec cette commande :

avconv -i GOPR9491.MP4 -r 1/10 -f image2 %06d.jpg (vérifier le R)

Cela produit 1244 photos que l’on importe dans photoscan. On y corrige également (un peu) les photos (fisheye, distance focale 8 mm).

Les images extraites sont les frames de la vidéos soit donc des images de 1920 x 1080 pixels (voir les exemples dans le portfolio).

JPEG - 187.7 ko

Premier essai

Nuage de points

Alignement des photos (haute/généric)
18 minutes de détection de pts sur les 1244 photos
Sélection des paires (prévision 1h48)
Mmmh. la RAM utilisée est montée à 13.6 Go.... laissons travailler....
Recherche des correspondances : estimée à 3h40
Estimating camera location estimé à 14h30 de boulot.. on laisse bosser.... mais cela diminue vite, environs 7h maintenant... diminue à chaque pourcentage réalisé, plus que 1h30 avec 19 % de fait...
OK, j’ai un point cloud (PC) sparse à 31488 pts

Nuage dense

Lancement de la création du nuage dense en ultra_high_agressif,mmmmhh.. 13h20 de calcul prévu au bout d’1%
Je laisse tourner... RAM à 22/23 Go

Le lendemain matin ça tourne encore. On laisse (il propose encore 5h30 de taf..)

Hum maintenant c’est repassé à 14h de taf restant, il a bien du mal...
120 heures plus tard. je stop le process.

Deuxième essai

On va essayer de nouveau mais avec moins de photos :

avconv -i GOPR9491.MP4 -r 2 -f image2 %06d.jpg soit deux images extraites (frames) par seconde.

On calibre les caméra (fisheye, dist focale 8mm) 498 photos
Ok Sparse à 20360 pts

PNG - 327.6 ko

Ok, nuage dense à 64 millions de pts

PNG - 663.5 ko

On lance un maillage high sans limite de nb de faces (face count = 0)
ça monte en ram. ça plante avec un swap à 1,4 Go (alors qu’il y a 64 Go de RAM...)

Troisième essai

On part du PC dense à 64 Millions de pts.
On relance en traitement Moyen pour le mesh, ça monte a 40 Go

PNG - 451.5 ko

On texture en 4096x4, ça passe.

PNG - 453 ko

J’avais laissé une limite au mesh à 4 M de face, la console me dit qu’il y avait 132 M de faces... est-ce utile de les calculer, mmmhhh... pour l’instant je laisse (pas forcement utile ici), mais a priori ça doit passer (puisqu’il l’a fait).

Bon, j’aimerais bien savoir ce que cela donne par rapport au relevés topo et archeo classiques (terrain). Je vais géoréférencer cela dès que possible et voir ce que l’on peut en faire...

A suivre...

Hé ben la suite justement c’est par là : Topo de feignant


Téléchargements Fichiers à télécharger :
  • test_go_pro_charme_pc_sparse_et_photos.png
  • 301.7 ko / PNG
  • test_go_pro_charme_pc_dense_et_photos.png
  • 564.1 ko / PNG
  • test_go_pro_charme_mesh.png
  • 302.9 ko / PNG
  • test_go_pro_charme_mesh_color_photos.png
  • 383.9 ko / PNG
  • test_go_pro_charme_mesh_textured_top_view.png
  • 600.2 ko / PNG
  • test_go_pro_charme_mesh_textured_et_photos_top_view.png
  • 461.3 ko / PNG
  • 000464.jpg
  • 191.1 ko / JPEG
  • 000465.jpg
  • 191.7 ko / JPEG
  • 000466.jpg
  • 191.5 ko / JPEG
  • 000467.jpg
  • 191.1 ko / JPEG
  • 000468.jpg
  • 190.2 ko / JPEG
  • 000469.jpg
  • 188.4 ko / JPEG
  • 000470.jpg
  • 188.4 ko / JPEG


pucePlan du site puceContact puceEspace rédacteurs puce

RSS Valid XHTML 1.0 Strict

2008-2018 © Paleosystem - Tous droits réservés
Site réalisé sous SPIP
avec le squelette ESCAL-V3
Version :