Skip to content

MU-Smart/ClassyGlass

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ClassyGlass Dataset

The ClassyGlass Dataset contains multimodal time-series data collected from wearable smart glasses used by real participants. The dataset includes measurements from multiple onboard sensors, including an accelerometer, gyroscope, magnetometer, and pressure sensor. The data are organized by subject and recording session to support reproducible research and machine learning workflows.

Index

Overview

ClassyGlass is a comprehensive wearable sensing dataset designed for activity recognition and behavioral analysis research. It provides temporally aligned sensor streams recorded during controlled and semi-naturalistic sessions.

ClassyGlass Device
Figure 1: The ClassyGlass hardware setup with MetaMotionC sensor attached to the right temple.

Wearable IMU Sensor

Data were collected using the MetaMotionC wearable Inertial Measurement Unit (IMU) sensor Sensor Link. The device provides real-time and continuous motion and environmental sensing through an integrated 9-axis IMU and a pressure sensor. Data are transmitted via Bluetooth Low Energy (BLE) using an open-source API. Onboard Kalman filter–based sensor fusion is applied to improve signal quality and reduce noise. All sensor data are timestamped to enable precise synchronization across data streams.

ClassyGlass Device
Figure 2: The ClassyGlass hardware setup, showing the internal view of the MetaMotionC 10-axis IMU.

Sensor Specifications

Sensor Measurement Range Resolution Sampling Rate
Accelerometer ±2, ±4, ±8, ±16 g 16-bit 0.001–100 Hz (stream), up to 800 Hz (log)
Gyroscope ±125, ±250, ±500, ±1000, ±2000 °/s 16-bit 0.001–100 Hz (stream), up to 800 Hz (log)
Magnetometer ±1300 µT (x,y), ±2500 µT (z) 0.3 µT 0.001–25 Hz
Barometer/Pressure/Altimeter 300–1100 hPa 0.01 hPa 0.001–50 Hz

Directory Structure

Each dataset contains its own data description sheet. Follow that for dataset specific information

ClassyGlass/

Dataset Contents

File Format

File name: Each data file follows a structured naming convention that encodes metadata about the device, recording time, sensor type, and sampling configuration.
<experiment_id>_<device>_<timestamp>_<device_id>_<sensor_type>_<sampling rate>Hz_<firmware_version>.csv

Columns include:

  • timestamp — Time of measurement (ISO 8601 or Unix epoch in milliseconds)
  • elapsed - Time relative to starting time
  • x-axis, y-axis, z-axis — 6-axis Accelerometer sensor, Linear acceleration (m/s²)
  • x-axis, y-axis, z-axis — 6-axis Gyroscope sensor, Angular velocity (deg/s)
  • x-axis, y-axis, z-axis — 3-axis Magnetometer sensor, Magnetic field strength (T)
  • pressure — Barometer/Pressure/Altimeter, Atmospheric pressure (hPa)

Dataset Summary

The following table provides a comparative overview of the frame counts and total durations for both data subsets.

Sensor Type Dataset_1A Dataset_1B Dataset_2 (Discrete) Dataset_2 (Continuous TUG) Total
Accelerometer (100Hz) 1,504,164 2,982,352 2,057,652 315,682 6,859,850
Gyroscope (100Hz) 1,504,592 2,971,744 2,058,286 315,820 6,850,442
Magnetometer (20Hz) 296,744 592,144 410,672 62,994 1,362,554
Pressure (7.33Hz) 109,450 219,583 151,119 22,892 503,044
Duration 4h 10m 40s 8h 18m 19s 5h 42m 54s 0h 52m 40s 19h 04m 33s

Following table contains demographic informations

Characteristic Dataset 1 Dataset 2 Total
Count (N) 27 35 62
Gender 18M / 9F 25M / 10F 43M / 19F
Age Range 21–61 21–65 21–65
Glasses Wearers 60% ~62% ~61%

Activity Summary

Category Activity Description
Sedentary Sitting & Reading (Book)
Sitting & Writing (Notebook)
Computer: Typing
Computer: Browsing
Natural Fidgeting (Head/Body)
Transitional Moving Chair / Adjusting
Sit-to-Stand Transition
Pick up items from floor (Sitting)
Pick up items from floor (Standing)
Ambulatory Standing Still
Walking
Running
Taking Stairs
Donning/Doffing Wear/Remove Device (Sitting)
Wear/Remove Device (Standing)
Timed up and go test (TUG) Sit - Stand - Up - Walk to a point - turn - walk back to chair - sitdown


TUG test
Figure 3: Schematic of the Timed Up and Go (TUG) test. The TUG path and the four activities performed during a TUG. These transitions are: 1) sitting, 2) sit-to-stand 2) walking- out - turning - walking-in, 4) stand-to-sit. The continuous sequence challenges models to detect transitional boundaries e.g., the exact moment of ’Turn’) within a continuous stream.

Visualization of different activities

(a) Sitting and Reading

(b) Working on Computer

(c) Sit-to-Stand Transition

(d) Walking

(e) Picking Up Items

(f) Video Labeling (Ground Truth)

Figure 4: Data visualization of the ClassyGlass benchmark. (a-e) Multi-modal sensor fingerprints for distinct activities, showing 4 sensor streams (Accel, Gyro, Pressure, Mag). (f) An example of the high-fidelity synchronization between the video ground truth and accelerometer peaks used for validating the dataset labels.

Usage Notes

Category matching using mod of number ot the experiments

from pathlib import Path
import pandas as pd

file_path = "Datasets/Dataset_1A/User1/1_MetaWear_2019-09-14T13.41.43.335_F1E55E2FE95F_Accelerometer_100.000Hz_1.4.5.csv"

# Load CSV
df = pd.read_csv(file_path)

# Extract filename
filename = Path(file_path).name

# Parse first number before underscore
raw_exp_num = int(filename.split("_")[0])

# Mod with 11 (map 1 -> 11)
experiment_number = raw_exp_num % 11 or 11

if experiment_number == 1:
    experiment = "Reading a book"

print("Raw experiment number:", experiment_number)
print("Mapped experiment:", experiment)

Scripts for data visualization, feature extraction and classifications


License

  • 🧑‍💻 The code in this repository is licensed under the MIT License.
  • 📊 The datasets in the data/ directory are released under the CC BY 4.0 License.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published