Skip to main content

v3p - Vuer 3DGS Processing

Tools for Gaussian Splatting (3DGS) processing workflows. Built with params-proto for configuration management.

PyPI version Documentation

Installation

pip install v3p

For development:

git clone https://github.com/vuer-ai/vuer-3dgs-processing.git
cd vuer-3dgs-processing
pip install -e ".[dev]"

Quick Start

CLI Usage

The v3p command provides several subcommands for processing 3DGS point clouds:

# Show available commands
v3p

# Process a point cloud
v3p process --input-path input.ply --output-path output.ply

# Convert between formats
v3p convert --input-path input.ply --output-path output.pcd

Python API

import v3p
print(v3p.__version__)

Using the configuration classes directly:

from v3p.scripts.process import ProcessConfig, main

# Configure via class attributes
ProcessConfig.input_path = "input.ply"
ProcessConfig.output_path = "output.ply"
ProcessConfig.voxel_size = 0.01
ProcessConfig.verbose = True

# Run processing
main()

Commands

v3p process

Process 3DGS point clouds with filtering and downsampling.

v3p process --input-path <path> [options]

Options:

  • --input-path: Path to input PLY or point cloud file (required)
  • --output-path: Path to output file (default: output.ply)
  • --voxel-size: Voxel size for downsampling (default: 0.01)
  • --remove-outliers: Remove statistical outliers (default: True)
  • --num-neighbors: Number of neighbors for outlier detection (default: 20)
  • --std-ratio: Standard deviation ratio for outlier removal (default: 2.0)
  • --verbose: Enable verbose output

v3p convert

Convert between point cloud formats.

v3p convert --input-path <path> --output-path <path> [options]

Options:

  • --input-path: Path to input file (required)
  • --output-path: Path to output file (required)
  • --input-format: Input format - auto, ply, pcd, xyz (default: auto)
  • --output-format: Output format - ply, pcd, xyz (default: ply)
  • --binary: Write binary format when supported (default: True)
  • --verbose: Enable verbose output

Configuration with params-proto

v3p uses params-proto for configuration management. This allows you to:

  1. Set parameters via CLI: All config class attributes become CLI flags
  2. Set parameters programmatically: Modify class attributes directly
  3. Use sweep files: Generate parameter sweeps for batch processing

Example sweep file:

from params_proto import Sweep
from v3p.scripts.process import ProcessConfig

with Sweep(ProcessConfig) as sweep:
    ProcessConfig.input_path = "input.ply"
    with sweep.product:
        ProcessConfig.voxel_size = [0.01, 0.02, 0.05]

sweep.save("process_sweep.jsonl")

Development

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
make test

# Build and preview documentation
make preview

# Build wheel
make wheel

# Publish to PyPI
make publish

Documentation

Full documentation: https://v3p.readthedocs.io/en/latest/

License

MIT

Metadata

Release files for v3p 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for v3p 0.1.0
File Size Uploaded
v3p-0.1.0.tar.gz 6.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for v3p 0.1.0
File Interpreter ABI Platform
v3p-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 12.8 kB

Release files / v3p-0.1.0.tar.gz

Download URL v3p-0.1.0.tar.gz
Size 6.8 kB
Tags Source
SHA-256 checksum
How to use checksums
22863a8b599dedc4877fc8f08e1ce987c3864c10ab4af65cf97a8280aac2f6fa
BLAKE2b-256 checksum
How to use checksums
cda0412404645fa046eed28ce6def87e66196af2451e9ab51d2c8450bfb69ed0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release files / v3p-0.1.0-py3-none-any.whl

Download URL v3p-0.1.0-py3-none-any.whl
Size 6.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c09489fe7b76a38924e8ab7feb5d12d8ff99d2dbcec9af2f289fa986c5aae65e
BLAKE2b-256 checksum
How to use checksums
5fe6fc2be083c1e9287d86522e6c47c69ac7368834f64af72f78aa116438bac2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page