NavVis
nv_pcp
  • 18 Mar 2024
  • 6 Minutes to read
  • Dark
    Light
  • PDF

nv_pcp

  • Dark
    Light
  • PDF

Article summary

The Point Cloud Processor tool ("nv_pcp") resamples and converts Point clouds.

Options

nv_pcp -h
----------------------------------------------------------------------------
NavVis Point Cloud Processor
nv_pcp - Copyright (c) NavVis GmbH 2013-2020, http://www.navvis.com
Processes point clouds.

Software Version: 2.9.0-b11245-c9f72372-bionic-release-2.9.0 (c9f7237232699fa55abcd574e3eafdd744a51d98)
----------------------------------------------------------------------------
Usage:
nv_pcp [options] <input-pointcloud> <output-pointcloud>

Examples:
    Convert the format from PLY to E57:
    nv_pcp pointcloud.ply pointcloud.e57

    Downsample the point cloud to coarser spatial resolution of 2 cm (=0.02 m):
    nv_pcp pointcloud.e57 pointcloud-downsampled.e57 --resample-output=0.02

    Cut off the ceiling at a height of 2.4 m and downsample the cloud:
    nv_pcp pointcloud.ply pointcloud-cropped.ply --resample-output=0.02 --crop-max-z=2.4

General options:
  -h [ --help ]                         Prints this usage message.

Input options:
  -i [ --input ] arg                    Input point cloud. Required.

  --input-res arg                       Input cloud resolution. If not set, the
                                        cloud resolution will be computed.

  --resample-input [=arg(=0)]           Resamples the input point cloud. The
                                        optional value specifies the resolution
                                        in [m] when resampling. If no value was
                                        specified, the <cloud resolution> will
                                        be used (can be set via --input-res),
                                        else the <cloud resolution> will be set
                                        to this value.

  --sensor-frame arg                    Path to sensor_frame.xml.


Output options:
  -o [ --output ] arg                   Output file for the final point cloud.
                                        If omitted, the point cloud will be
                                        written to '<input-without-extension>-f
                                        inal.ply'

  --output-res arg                      Output cloud resolution.

  --resample-output [=arg(=0)]          Resamples the final point cloud. The
                                        optional value specifies the resolution
                                        in [m] when resampling. Otherwise, the
                                        <cloud resolution> will be used (can be
                                        set via --input-res)

  --apply-transformation arg            Applies the given comma-separated
                                        transformation matrix to the point
                                        cloud.

  --apply-origin-json arg               Applies the transformation given in the
                                        origin-json to the point cloud.


Cutting/cropping options:
  --crop-min-x arg                      Discard all points with a x-coordinate
                                        < than <arg>.

  --crop-max-x arg                      Discard all points with a x-coordinate
                                        > than <arg>.

  --crop-min-y arg                      Discard all points with a y-coordinate
                                        < than <arg>.

  --crop-max-y arg                      Discard all points with a y-coordinate
                                        > than <arg>.

  --crop-min-z arg                      Discard all points with a z-coordinate
                                        < than <arg>.

  --crop-max-z arg                      Discard all points with a z-coordinate
                                        > than <arg>.

  --invert-crop                         To return data outside the
                                        intervalspecified by options
                                        crop-min/max-x/y/z.

  --crop-vert-slice arg                 Specify the x and y coordinates of two
                                        points from the pointcloud to create a
                                        vertical slice going through those
                                        points.
                                        Expected format: --crop-vert-slice "x1
                                        y1 x2 y2"

  --vert-slice-thickness arg (=0.29999999999999999)
                                        When specified together with
                                        --crop-vert-slice, defines the
                                        thickness of the slice in m.

Usage Examples

The following usage examples show typical tasks. See also: Working with Point Clouds

Convert a point cloud from the existing .ply format to another format, like LAS:

nv_pcp pointcloud.ply pointcloud.las

Convert a point cloud from the existing .ply format to the PTS format, and make a cut at the height (along the z axis) of 2.40m:

nv_pcp pointcloud.ply pointcloud.pts --crop-max-z=2.40

Down sample a point cloud to a resolution of 10cm. This will greatly reduce the number of points in the cloud and thus the computational effort of your 3D applications. Note that the accuracy of the points remains largely unchanged, only the spatial resolution will change:

nv_pcp pointcloud.ply pointcloud-downsampled.ply --resample-output=0.1


Was this article helpful?

What's Next
Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.