v.in.pdal - GRASS manual
Author: GRASS Development Team
Description: v.in.pdal: Converts LAS LiDAR point clouds to a GRASS vector map with PDAL.
Keywords: vector, import, LIDAR

## NAME

v.in.pdal - Converts LAS LiDAR point clouds to a GRASS vector map with PDAL.

## KEYWORDS

vector, import, LIDAR

## SYNOPSIS

v.in.pdal
v.in.pdal --help
v.in.pdal [-wocr] input=name output=name [id_layer=string] [return_layer=string] [class_layer=string] [rgb_layer=string] [spatial=xmin,ymin,xmax,ymax] [zrange=min,max] [return_filter=string] [class_filter=integer[,integer,...]] [input_srs=string] [--overwrite] [--help] [--verbose] [--quiet] [--ui]

### Flags:

-w
  Reproject to projects's coordinate system if needed
  Reprojects input dataset to the coordinate system of the GRASS project (by default only datasets with the matching coordinate system can be imported
-o
  Override projection check (use current project's CRS)
  Assume that the dataset has the same coordinate reference system as the current project
-c
  Do not automatically add unique ID as category to each point
  Create only requested layers and categories
-r
  Limit import to the current region
--overwrite
  Allow output files to overwrite existing files
--help
  Print usage summary
--verbose
  Verbose module output
--quiet
  Quiet module output
--ui
  Force launching GUI dialog

### Parameters:

input=name [required]
  LAS input file
  LiDAR input files in LAS format (*.las or *.laz)
output=name [required]
  Name for output vector map
id_layer=string
  Layer number to store generated point ID as category
  Set to 1 by default, use -c to not store it
return_layer=string
  Layer number to store return information as category
  Leave empty to not store it
class_layer=string
  Layer number to store class number as category
  Leave empty to not store it
rgb_layer=string
  Layer number where RBG colors are stored as category
  Leave empty to not store it
spatial=xmin,ymin,xmax,ymax
  Import subregion only
  Format: xmin,ymin,xmax,ymax - usually W,S,E,N
zrange=min,max
  Filter range for z data (min,max)
return_filter=string
  Only import points of selected return type
  If not specified, all points are imported
  Options: first, last, mid
class_filter=integer[,integer,...]
  Only import points of selected class(es)
  Input is comma separated integers. If not specified, all points are imported.
input_srs=string
  Input dataset projection (WKT or EPSG, e.g. EPSG:4326)
  Override input dataset coordinate system using EPSG code or WKT definition

## DESCRIPTION

Imports a point cloud (e.g. from a LAS file) as vector points with the PDAL library. v.in.pdal supports the following filters:

- 2D region filter
- Z coordinates filter
- return filter
- class filter

## EXAMPLES

Import only XYZ coordinates of points, limit the import to the current computational region and reproject to the current project's coordinate reference system during the import:

    v.in.pdal input=points.las output=points -c -r -w

## REFERENCES

- V. Petras, A. Petrasova, J. Jeziorska, H. Mitasova (2016): Processing UAV and lidar point clouds in GRASS GIS. XXIII ISPRS Congress 2016 [ISPRS Archives, ResearchGate]

## SEE ALSO

r.in.pdal, g.region, v.vect.stats, v.in.ogr

## AUTHOR

Vaclav Petras, NCSU GeoForAll Lab

## SOURCE CODE

Available at: v.in.pdal source code (history)

Latest change: Thursday Nov 06 22:27:54 2025 in commit: 298b38614712934179355ea767403d6bfea8f5f9

Main index | Vector index | Topics index | Keywords index | Graphical index | Full index

© 2003-2026 GRASS Development Team, GRASS 8.5.0 Reference Manual