MyNixOS website logo
Description

'multimolang': Multimodal Language Analysis.

Process 'OpenPose' human body keypoints for computer vision, including data structuring and user-defined linear transformations for standardization. It optionally, includes metadata extraction from filenames in the UCLA 'NewsScape' archive.

multimolang: Multimodal Language Analysis Tools

multimolang is a package designed to support multimodal data analysis for linguistic research. It serves as the main repository for the MULTIFLOW project and provides tools to process, analyze, and derive insights from multimodal datasets, starting with gesture trajectories extracted from video data.

The first implemented tool, dfMaker, processes raw OpenPose data into structured dataframes, optimized for large-scale, multimodal data science workflows. Future versions of multimolang will include additional tools for prosody analysis and multimodal language integration.


Installation

# Install from the local tar.gz file
install.packages("multimolang_0.1.1.tar.gz", repos = NULL, type = "source")

# Or install using devtools
devtools::install_github("daedalusLAB/multimolang")

Functions

Currently, the main function in the package is dfMaker, which provides:

  • Flexible Input Configuration: Accepts JSON files from OpenPose as input.
  • Transformation Capabilities: Scales and normalizes body keypoints for gesture trajectory analysis.
  • Big Data Optimization: Designed to handle large-scale multimodal datasets efficiently.

Example Usage

Process OpenPose Data

# Define paths to example data included with the package
input.folder <- system.file("extdata", "ex_videos", "o1", package = "multimolang")
output.file <- file.path(tempdir(), "processed_data.csv")
output.path <- tempdir()

# Run dfMaker with example data
df <- dfMaker(
input.folder = input.folder,
output.file = output.file,
output.path = output.path,
no_save = FALSE,
fast_scaling = TRUE,
transformation_coords = c(1, 1, 5, 5)
)

# View the resulting data
head(df)

Development Status

Below is the current progress and pending tasks for multimolang:

ElementStatus
Package NameDefined and unique in CRAN (planned for submission).
DESCRIPTION FileComplete with title, description, authors, maintainer, version, and dependencies.
LicenseLGPL-3
DocumentationComplete for the dfMaker function, with examples.
NEWS FileNot included; optional for the first version.
TestsImplemented to ensure proper functionality.
READMEIncluded here.
Cross-Platform CompatibilityTested on Linux and Windows OS operating systems.
Included FunctionsIncludes dfMaker; additional tools planned for multimodal analysis in future updates.

Note: Future updates will incorporate tools for prosody and voice analysis, as well as co-speech gesture processing.


About MULTIFLOW

The MULTIFLOW project investigates the interplay between gesture, prosody, and language to uncover multimodal signatures in communication. Learn more about our research and goals.

Publications in Preparation

  • R functions for creating dataframes from OpenPose raw data.

    • Analyzing gesture trajectories from normalized body keypoint detection.
    • Building Massive Co-Speech Gesture Datasets for Specific Linguistic Patterns.
    • Gestural behavior is systematically attuned to language: Novel data analysis of co-speech gesture and its implications for multimodal interfaces.

    Contributing

    We welcome contributions to multimolang! For bug reports, feature requests, or collaboration inquiries, open an issue on GitHub.


See Also


License

The license for this package is pending. For further inquiries, contact the project maintainer.

Metadata

Version

0.1.1

License

Unknown

Platforms (77)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-freebsd
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64-windows
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows