Files
cosma-qc/docs/_build/html/_sources/data.rst.txt

163 lines
4.1 KiB
ReStructuredText
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Données — Stockage et budget disque
=====================================
Où sont stockées les données
------------------------------
.. list-table::
:header-rows: 1
:widths: 30 20 50
* - Type de donnée
- Emplacement
- Remarques
* - MP4 bruts GoPro
- z620 ``/mnt/portablessd``
- Ne quittent jamais z620. Jamais copiés sur workers.
* - Frames JPEG
- Worker ``/cosma-qc-frames/job_{id}/frame_*.jpg``
- Conservés pour reprise sur crash. Supprimables après validation du stitch.
* - PLY par job
- Worker ``/cosma-qc-frames/job_{id}/reconstruction.ply``
- Entrée du stitch per_auv.
* - PLY stitch par AUV
- Worker ``/cosma-qc-frames/stitch_{N}.ply``
- Fusion des segments d'un AUV.
* - PLY stitch global
- Worker ``/cosma-qc-frames/stitch_global.ply``
- Nuage de points final toute mission.
* - GLB (export web)
- Worker ``/cosma-qc-frames/job_{id}/reconstruction.glb``
- Généré à la demande. 5M points, ~76 MB.
Budget disque observé
----------------------
.. list-table::
:header-rows: 1
:widths: 40 30 30
* - Type
- Taille typique
- Base de calcul
* - Frames JPEG par job
- ~11 GB
- job 45 min à 2 fps, 1920x1080
* - PLY par job (reconstruction)
- 2 5 GB
- dépend de la densité de la scène
* - GLB par job (export web)
- ~76 MB
- 5M points (job_21 observé)
* - PLY stitch AUV
- variable
- somme des PLY segments
* - PLY global
- variable
- somme de tous les AUV
Pour un AUV avec 4 jobs de 45 min chacun :
- Frames : 4 x 11 GB = **~44 GB** (supprimables après validation)
- PLY jobs : 4 x 3.5 GB = **~14 GB**
- PLY stitch AUV : **~6-10 GB**
Politique de nettoyage
------------------------
Frames JPEG
^^^^^^^^^^^
Les frames sont conservées uniquement pour permettre la reprise sur crash.
Une fois le stitch per_auv validé visuellement, **les frames peuvent être supprimées**.
.. code-block:: bash
# Supprimer les frames d'un job (conserver le PLY !)
rm -rf /cosma-qc-frames/job_ID/frame_*.jpg
rm -f /cosma-qc-frames/job_ID/.video_*.done
# Vérifier que le PLY est intact avant suppression
ls -lh /cosma-qc-frames/job_ID/reconstruction.ply
PLY intermédiaires
^^^^^^^^^^^^^^^^^^
Les PLY par job peuvent être supprimés après que le stitch per_auv est validé
et sauvegardé hors-ligne.
.. code-block:: bash
# Conserver uniquement le stitch, supprimer les PLY jobs
rm /cosma-qc-frames/job_ID/reconstruction.ply
Vérification espace disque
^^^^^^^^^^^^^^^^^^^^^^^^^^
.. code-block:: bash
# Espace total workers
ssh floppyrj45@192.168.0.84 "df -h /cosma-qc-frames"
ssh floppyrj45@192.168.0.87 "df -h /cosma-qc-frames"
# Taille par job
du -sh /cosma-qc-frames/job_*/
# Top consommateurs
du -sh /cosma-qc-frames/* | sort -rh | head -20
Export GLB
-----------
Le GLB est une version allégée du nuage de points pour visualisation web.
Génération via l'API dashboard :
.. code-block:: bash
curl -X POST http://192.168.0.82:3849/jobs/ID/export_glb
Génération manuelle sur le worker :
.. code-block:: python
import trimesh, numpy as np
pc = trimesh.load('/cosma-qc-frames/job_ID/reconstruction.ply')
idx = np.random.choice(len(pc.vertices), 5_000_000, replace=False)
sub = trimesh.PointCloud(pc.vertices[idx], colors=pc.colors[idx])
sub.export('/cosma-qc-frames/job_ID/reconstruction.glb')
Téléchargement :
.. code-block:: bash
# Lancer le serveur HTTP sur le worker
ssh floppyrj45@192.168.0.84 \
"python3 -m http.server 8300 --directory /cosma-qc-frames"
# Télécharger depuis PC
wget http://192.168.0.84:8300/job_ID/reconstruction.glb
Reprise sur crash — marqueurs .done
-------------------------------------
Chaque MP4 extrait avec succès génère un fichier marqueur :
.. code-block:: text
/cosma-qc-frames/job_ID/.video_0.done
/cosma-qc-frames/job_ID/.video_1.done
...
En cas de crash, la reprise saute automatiquement les vidéos déjà traitées.
Pour forcer une ré-extraction complète :
.. code-block:: bash
rm /cosma-qc-frames/job_ID/.video_*.done