https://github.com/bykhov/water-drop-impact-audio-ml

https://github.com/bykhov/water-drop-impact-audio-ml

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (6.9%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: bykhov
  • Language: Jupyter Notebook
  • Default Branch: main
  • Size: 6.8 MB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created 7 months ago · Last pushed 7 months ago
Metadata Files
Readme Citation

README.md

Automatic Classification of Water Drop Impact Characteristics Using Audio

This repository accompanies the manuscript:

Automatic Classification of Water Drop Impact Characteristics Using Audio Information
Merav Arogeti, Etan Fisher, and Dima Bykhovsky

The work investigates whether impact velocity and drop volume can be inferred from audio recordings of water-drop impacts using modern signal-processing and machine-learning methods.

The repository includes: - Dataset of water-drop impact audio recordings - Code to reproduce all the results reported in the paper - Supplementary results and plots beyond these in the paper


Dataset

The experiments operate on a pre-processed dataset serialized as data_drops.pkl . The file is expected to contain the following keys:

  • segmentsfloat array of shape (N, T) with time-domain audio segments (e.g., sampled at 44.1 kHz; each segment is aligned to an impact event).
  • s_label_data — sequence of raw impact velocities for each segment (length N).
  • v_label_data — sequence of raw drop volumes for each segment (length N).
  • unique_speeds — sorted unique velocities (used to map raw labels to class indices).
  • unique_volumes — sorted unique volumes (used to map raw labels to class indices).

Notebook and Script Overview

  • catch22.ipynb — catch22 features
  • minirocket.ipynb — MiniRocket features/classifier
  • mfcc.ipynb — MFCC spectrogram features with feature selection
  • mfcc_average.ipynb — temporally averaged MFCCs
  • periodogram.ipynb — PSD/periodogram features
  • rise.ipynb — Random Interval Spectral Ensemble (RISE)
  • spectrogram.ipynb — STFT features with feature selection
  • scattering_tr.ipynb — Scattering Transform features (Kymatio)
  • ts_fresh_comp.ipynb — compact feature set tsfresh
  • ts_fresh_eff.ipynb — full feature set from tsfresh
Scripts
  • drop_lib2.py — library of utility functions for loading and processing the dataset
  • drop_lib3.py — library of utility functions for loading and processing the dataset (different FE for volume and velocity)

Owner

  • Name: Dima Bykhovsky
  • Login: bykhov
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this code or data, please cite our paper."
title: "Automatic Classification of Water Drop Impact Characteristics Using Audio Information"
version: "0.1.0"
date-released: "2025-08-13"
authors:
  - family-names: "Arogeti"
    given-names: "Merav"
  - family-names: "Fisher"
    given-names: "Etan"
  - family-names: "Bykhovsky"
    given-names: "Dima"
repository-code: "https://github.com/<your-org-or-user>/water-drop-impact-audio-ml"
type: "software"

GitHub Events

Total
  • Push event: 1
  • Create event: 1
Last Year
  • Push event: 1
  • Create event: 1

Dependencies

requirements.txt pypi
  • kymatio *
  • librosa *
  • matplotlib *
  • numpy *
  • pandas *
  • pycatch22 *
  • scikit-learn *
  • scipy *
  • seaborn *
  • sktime *
  • tqdm *
  • tsfresh *