Passer au contenu principal

Lire un en-tête LAS : ce qu'il révèle avant de classifier

7 sept. 2026LECTURE 7 MINFormats
Nuage de points LiDAR aéroporté coloré par intensité de retour, du bleu aux valeurs faibles au rouge aux valeurs fortes.
Avant que ces points soient classifiés, 375 octets en tête du fichier disent ce que le fichier peut contenir. Source : USGS 3D Elevation Program (domaine public)

Un fichier LAS annonce ce qu'il peut contenir avant de contenir quoi que ce soit. Les 375 premiers octets, le bloc d'en-tête public, disent quelle version l'a écrit, quel format d'enregistrement de points il utilise, comment les coordonnées sont stockées, combien de points il y a et où se trouve le système de coordonnées [1]. Lire ce bloc prend une minute avec n'importe quel outil LiDAR, et cela répond à la plupart des questions qu'un travail de classification soulève plus tard : ce fichier peut-il porter des classes de câbles, les coordonnées survivront-elles à un aller-retour, et le système de coordonnées sera-t-il là quand le client ouvrira le résultat. Voici l'en-tête, champ par champ, vu du bureau d'un arpenteur.

Le bloc d'en-tête public, dans l'ordre où il est écrit

ChampDécalageCe qu'il faut y lire
File Signature0Quatre octets, toujours LASF. Autre chose n'est pas un fichier LAS.
Global Encoding6Un champ de bits. Le bit 0 dit si le temps GPS est le temps de semaine ou le temps standard ajusté ; le bit 4 dit que le système de coordonnées est stocké en WKT.
Version Major / Minor24 / 251.2, 1.3, 1.4 ou, depuis août 2025, 1.5. La version décide quels formats d'enregistrement et codes de classe sont légaux.
System Identifier2632 caractères : le capteur pour les données brutes, ou MERGE, MODIFICATION, EXTRACTION, TRANSFORMATION pour les fichiers dérivés.
Generating Software5832 caractères nommant le logiciel et sa version. La première chose à vérifier quand une livraison semble étrange.
Header Size94375 pour LAS 1.4. Les utilisateurs ne peuvent pas l'étendre.
Offset to Point Data96Où commencent les points. Tout ce qui se trouve entre l'en-tête et ce décalage est constitué d'enregistrements à longueur variable.
Point Data Record Format1040 à 10. Les formats 6 à 10 sont les modernes ; les formats hérités 0 à 5 ne peuvent pas porter les classes de réseaux ni de tabliers.
Point Data Record Length105Octets par point. Plus grand que le minimum du format signifie que des octets supplémentaires sont stockés avec chaque point.
Scale factors and offsets131 à 178Six doubles. Une coordonnée est l'entier stocké fois l'échelle plus le décalage.
Max and min X, Y, Z179 à 226L'emprise. Comparez-la au bloc que vous attendiez.
Number of Point Records247Le compte 64 bits, toujours renseigné en 1.4. Le compte hérité 32 bits au décalage 107 vaut zéro pour les formats 6 à 10.

Tous les décalages et tailles proviennent de la table d'en-tête public de la spécification LAS 1.4 [1]. Deux champs méritent un regard plus long parce qu'ils causent la plupart des surprises : le format d'enregistrement des points, et l'échelle et le décalage.

Le format d'enregistrement décide quelles classes existent

Les formats 0 à 5 stockent la classe sur cinq bits, donc portent les codes 0 à 31, et la spécification n'en définit que 0 à 12, 13 à 31 étant réservés [1]. Les formats 6 à 10 stockent la classe sur un octet complet et ajoutent un canal de scanner distinct et un vrai indicateur de recouvrement ; les codes standard vont jusqu'à 22, dont 13 à 16 pour les câbles de garde, les conducteurs, les pylônes et les connecteurs, 17 pour les tabliers de pont, 18 pour le bruit haut, et 19 à 22 pour les structures aériennes, le sol ignoré, la neige et l'exclusion temporelle, avec 64 à 255 laissés aux classes définies par l'utilisateur [1]. Un livrable de corridor doit donc arriver en format 6 ou plus ; un classificateur à qui l'on demande d'écrire des classes de câbles dans un fichier de format 1 n'a nulle part où les mettre légalement.

Les longueurs minimales d'enregistrement rendent le format visible d'un coup d'œil : 30 octets pour le format 6, 36 pour le format 7 avec couleur, 38 pour le format 8 avec couleur et proche infrarouge, et 59 et 67 pour les formats à forme d'onde 9 et 10 [1]. Une longueur supérieure au minimum signifie que des octets supplémentaires accompagnent chaque point, et un enregistrement Extra Bytes dans l'en-tête les décrit.

Échelle et décalage : pourquoi les coordonnées semblent fausses

Les points sont stockés comme des entiers 32 bits, pas comme des nombres réels. Une coordonnée se retrouve comme la valeur stockée multipliée par le facteur d'échelle, plus le décalage [1]. Une échelle de 0,01 garde deux décimales ; 0,001 en garde trois. C'est tout le budget de précision du fichier, fixé par celui qui l'a écrit. Quand un outil réécrit un bloc avec une échelle plus grossière, chaque coordonnée est arrondie et le changement reste invisible jusqu'à ce que quelqu'un superpose le résultat à l'original. Quand il réécrit avec un mauvais décalage, l'emprise de l'en-tête ne correspond plus aux points. Ce sont deux défaillances d'aller-retour qu'un réviseur peut attraper en comparant les six nombres avant et après classification.

Enregistrements à longueur variable : où vit le système de coordonnées

Entre l'en-tête et les points se trouvent les enregistrements à longueur variable, chacun avec un en-tête de 54 octets nommant un identifiant d'utilisateur et un identifiant d'enregistrement [1]. Ceux qui comptent pour la classification sont les enregistrements du système de coordonnées. Sous l'identifiant LASF_Projection, l'enregistrement 2112 contient le système de coordonnées en texte OGC bien connu, 2111 une transformation mathématique optionnelle, et 34735, 34736 et 34737 les anciennes clés GeoTIFF [1]. Les formats 6 à 10 doivent utiliser le WKT, et un fichier avec plus d'un enregistrement GeoTIFF ou plus d'un enregistrement WKT est en erreur [1]. Sous LASF_Spec, l'enregistrement 4 est le descripteur Extra Bytes et l'enregistrement 0 la table de correspondance des classes, que LAS 1.5 a dépréciée [1], [2]. Des enregistrements étendus de même forme, avec un en-tête de 60 octets, peuvent suivre les points.

LAZ et COPC : deux enregistrements de plus à chercher

Un fichier LAZ est un fichier LAS dont les points sont compressés, et l'en-tête est le même bloc. Ce qui le distingue est un enregistrement spécial avec l'identifiant laszip encoded et le numéro 22204, dont le contenu nomme le compresseur, la taille des morceaux et la disposition des éléments [3]. Le découpage en morceaux donne au LAZ son accès aléatoire, et le compresseur moderne, numéro 3, est réservé aux formats 6 à 10 [3]. Un fichier COPC va un pas plus loin : c'est un fichier LAZ 1.4 dont les points sont organisés en octree, il ne peut contenir que les formats 6, 7 ou 8, et son enregistrement d'information copc, numéro 1, doit être le tout premier enregistrement à longueur variable, à l'octet 375, avec la hiérarchie de l'octree dans un enregistrement copc numéro 1000 [4]. Tout lecteur de LAZ en morceaux peut lire un COPC séquentiellement ; un lecteur qui comprend la hiérarchie peut aller chercher un sous-ensemble spatial sans toucher au reste [4].

Ce qui a changé avec LAS 1.5

LAS 1.5 R00 a été approuvé en août 2025, en même temps qu'une révision de lisibilité de 1.4 numérotée R16 [1], [2]. Les ajouts méritent d'être connus même si vos outils écrivent encore du 1.4 : les formats hérités 0 à 5 sont retirés, l'en-tête gagne des champs de temps GPS minimum et maximum, le système de coordonnées doit être en WKT et l'encodage GeoTIFF disparaît, l'enregistrement Extra Bytes doit être unique, et l'enregistrement de table de correspondance des classes est déprécié [2]. Un fichier 1.5 conserve la compatibilité d'en-tête avec 1.1 à 1.4 ; l'ordre de lecture ci-dessus s'applique donc toujours [2].

Une liste de contrôle de l'en-tête avant classification

  1. Version 1.4 ou plus et format d'enregistrement 6 ou plus, si le livrable exige une classe au-dessus de 12.
  2. Des facteurs d'échelle conformes à la précision attendue par le contrat, et des décalages qui placent l'emprise là où le bloc doit être.
  3. Exactement un enregistrement de système de coordonnées, en WKT pour les formats 6 à 10, et le bit WKT posé dans l'encodage global.
  4. Un compte de points 64 bits conforme au bordereau de livraison, et des comptes par retour cohérents avec le capteur utilisé.
  5. Pour le LAZ, l'enregistrement laszip encoded présent ; pour le COPC, l'enregistrement d'information copc en premier.
  6. Les mêmes six nombres, le même compte et le même système de coordonnées après classification qu'avant.

Vecten lit LAS, LAZ et COPC et écrit des LAS ou LAZ classifiés qui conservent l'en-tête, les enregistrements de système de coordonnées et les indicateurs de points de l'entrée. Vecten Desktop le fait sur votre propre poste ; Vecten Cloud fait de même dans le navigateur.

Questions fréquentes

Quelle est la taille d'un en-tête LAS 1.4 ?
375 octets pour le bloc d'en-tête public. Les enregistrements à longueur variable le suivent, et le champ Offset to Point Data dit où commencent les points.
Quel format d'enregistrement faut-il pour les classes de lignes électriques ?
Le format 6 ou plus. Les codes 13 à 16 pour les câbles, pylônes et connecteurs, et 17 pour les tabliers de pont, ne sont définis que pour les formats 6 à 10.
Un fichier COPC est-il toujours un fichier LAZ ?
Oui. Le COPC est un fichier LAZ 1.4 dont les points sont rangés en octree, avec deux enregistrements supplémentaires qui le décrivent. Les lecteurs LAZ ordinaires l'ouvrent séquentiellement ; les lecteurs compatibles COPC utilisent la hiérarchie pour n'aller chercher que la région voulue.
Pourquoi mes coordonnées sont-elles décalées de quelques millimètres après traitement ?
Vérifiez les facteurs d'échelle. Si le fichier de sortie utilise une échelle plus grossière que l'entrée, chaque coordonnée a été arrondie à l'écriture. La correction consiste à écrire avec l'échelle et le décalage de l'entrée.

Références

  • [1] ASPRS, *LAS Specification 1.4 – R16*, The American Society for Photogrammetry & Remote Sensing, LAS Working Group, 2025. github.com/ASPRSorg/LAS
  • [2] ASPRS, *LAS Specification 1.5 – R00*, The American Society for Photogrammetry & Remote Sensing, LAS Working Group, 2025. github.com/ASPRSorg/LAS
  • [3] rapidlasso, *LAZ Specification 1.4 – Revision R1*, 2025. rapidlasso.de
  • [4] Hobu, Inc., *Cloud Optimized Point Cloud (COPC) Specification 1.0*, 2021. copc.io

Évaluez Vecten Desktop sur vos propres blocs LiDAR.

Classifiez les blocs LAS, LAZ et COPC sur votre propre poste et publiez des sorties prêtes pour révision.

Demander l'accès anticipé