Skip to main content

Vuer 3DGS Processing - Tools for Gaussian Splatting workflows.

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

v3p-0.1.0.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

v3p-0.1.0-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file v3p-0.1.0.tar.gz.

File metadata

  • Download URL: v3p-0.1.0.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for v3p-0.1.0.tar.gz
Algorithm Hash digest
SHA256 22863a8b599dedc4877fc8f08e1ce987c3864c10ab4af65cf97a8280aac2f6fa
MD5 7e2e1cdfaef3ab294d061272ccdacd7f
BLAKE2b-256 cda0412404645fa046eed28ce6def87e66196af2451e9ab51d2c8450bfb69ed0

See more details on using hashes here.

File details

Details for the file v3p-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: v3p-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for v3p-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c09489fe7b76a38924e8ab7feb5d12d8ff99d2dbcec9af2f289fa986c5aae65e
MD5 482fb89116939ef02a015808339491fb
BLAKE2b-256 5fe6fc2be083c1e9287d86522e6c47c69ac7368834f64af72f78aa116438bac2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page