Skip to content

senselab is a Python package that simplifies building pipelines for biometric (e.g. speech, voice, video, etc) analysis.

License

Notifications You must be signed in to change notification settings

sensein/senselab

Repository files navigation

Build codecov Ruff

PyPI Python Version License

pages

Welcome to senselab! This is a Python package for streamlining the processing and analysis of behavioral data, such as voice and speech patterns, with robust and reproducible methodologies.

Caution:: this package is still under development and may change rapidly over the next few weeks.

Installation

Install this package via:

pip install senselab

Or get the newest development version via:

pip install git+https://github.com/sensein/senselab.git

Quick start

from senselab.audio.data_structures import Audio
from senselab.audio.tasks.preprocessing import resample_audios

audio1 = Audio.from_filepath('path_to_audio_file.wav')

print("The original audio has a sampling rate of {} Hz.".format(audio1.sampling_rate))
[audio1] = resample_audios([audio1], resample_rate=16000)
print("The resampled audio has a sampling rate of {} Hz.".format(audio1.sampling_rate))

For more detailed information, check out our Getting Started Tutorial.

Why should I use senselab?

  • Modular Design: Easily integrate or use standalone transformations for flexible data manipulation.
  • Pre-built Pipelines: Access pre-configured pipelines to reduce setup time and effort.
  • Reproducibility: Ensure consistent and verifiable results with fixed seeds and version-controlled steps.
  • Easy Integration: Seamlessly fit into existing workflows with minimal configuration.
  • Extensible: Modify and contribute custom transformations and pipelines to meet specific research needs.
  • Comprehensive Documentation: Detailed guides, examples, and documentation for all features and modules.
  • Performance Optimized: Efficiently process large datasets with optimized code and algorithms.
  • Interactive Examples: Jupyter notebooks provide practical examples for deriving insights from real-world datasets.

Contributing

Please see CONTRIBUTING.md before contributing.

To find out what's currently in progress, please check the Project Board.