Skip to main content

Set of utilities to work with PLM record files.

Project description

PLUME banner.

PLUME: Record, Replay, Analyze and Share User Behavior in 6DoF XR Experiences
Charles Javerliat, Sophie Villenave, Pierre Raimbaud, Guillaume Lavoué
(Journal Track) IEEE Conference on Virtual Reality and 3D User Interfaces
Video » Paper » Explore the docs »

Report Bug · Request Feature

PLUME Python
Table of Contents
  1. About PLUME Python
  2. Getting Started
  3. Customization
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Citation

About PLUME Python

The interoperability of PLUME record files allows for other language to load those files for external analysis. PLUME Python is a module that can load record files using the Protobuf package to filter and convert the data into more commonly used formats in data analysis like pandas dataframe or CSV files. Embedded data such as LabStreamingLayer's samples can be exported to XDF files for external use in tools such as SigViewer, EEGLAB or MoBILAB.

Getting Started

Prerequisites

  • Python 3.10 or later
  • protobuf
  • pandas

Installation

Download the latest release or clone the repository.

Usage

Use the CLI to load and convert your records

python cli.py input_file output_dir --csv --xdf --descriptors [DESCRIPTORS ...]
  • input_file: Input PLUME record file (.plm) to be converted.
  • output_dir: Output directory where all generated files will be saved. Directory will be created if it does not exist.
  • --csv: Convert to CSV with optional filters.
  • --xdf: Convert markers and physiological signals to XDF .
  • -descriptors: Descriptor name used for filtering which samples to output as CSV files. Short name will automatically be preprended (eg. TransformUpdate -> plume.sample.unity.TransformUpdate).

Customization

If you have customized your PLUME Record as instructed here, import your generated protos for Python in the samples folder: PLUME-Python/plume/samples.

Roadmap

See the open issues for a full list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated. Don't forget to give the project a star! Thanks again!

License

Distributed under the GPLv3 License.

Contact

Charles JAVERLIAT - charles.javerliat@gmail.com

Sophie VILLENAVE - sophie.villenave@ec-lyon.fr

Citation

@article{javerliat_plume_2024,
	title = {{PLUME}: {Record}, {Replay}, {Analyze} and {Share} {User} {Behavior} in {6DoF} {XR} {Experiences}},
	url = {https://ieeexplore.ieee.org/document/10458415},
	doi = {10.1109/TVCG.2024.3372107},
	journal = {IEEE Transactions on Visualization and Computer Graphics},
	author = {Javerliat, Charles and Villenave, Sophie and Raimbaud, Pierre and Lavoué, Guillaume},
	year = {2024},
	note = {Conference Name: IEEE Transactions on Visualization and Computer Graphics},
	pages = {1--11}
}

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

plume_python-0.1.9.tar.gz (61.3 kB view details)

Uploaded Source

Built Distribution

plume_python-0.1.9-py3-none-any.whl (127.1 kB view details)

Uploaded Python 3

File details

Details for the file plume_python-0.1.9.tar.gz.

File metadata

  • Download URL: plume_python-0.1.9.tar.gz
  • Upload date:
  • Size: 61.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.2 Linux/6.5.0-1016-azure

File hashes

Hashes for plume_python-0.1.9.tar.gz
Algorithm Hash digest
SHA256 8a96fdb502f6a597c85a08b67fcc40f3562ee1a04082ea48fea52be4d3dc14e1
MD5 ce79da45f7e8667e9b131e5ad826a024
BLAKE2b-256 c2d6b09003b590d7eb58b9de567c7c82c59b6c0fb293ddc9cbd48486bd3d0585

See more details on using hashes here.

File details

Details for the file plume_python-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: plume_python-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 127.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.2 Linux/6.5.0-1016-azure

File hashes

Hashes for plume_python-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 4cbd31fd6db262c4f3e1764c30ffe1b7e52ada1909cb336799e70b4d1639b6f5
MD5 7958956d43c2d2b8241b8aa2e001a6bc
BLAKE2b-256 e48ede3404a4f0bea30ab8ffdd2b1fc8ed5cf7c1642304c10198a0c816f75cfb

See more details on using hashes here.

Supported by

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