Inspiration
Elephants communicate using low-frequency “rumbles” that can travel long distances and play a critical role in social behavior, coordination, and survival. However, these signals are often buried under environmental noise such as vehicles and airplanes, making them difficult to analyze. We were especially inspired by ongoing efforts from researchers studying elephant communication, including the long-term goal of building an “elephant translator” to decode the surprisingly complex language of elephants. These efforts rely on large amounts of recorded audio, but a major challenge is that many recordings are unusable due to overlapping environmental noise. Before researchers can even begin analyzing patterns or building models to interpret elephant communication, they first need a reliable way to clean up these recordings and isolate the actual elephant rumbles. This project focuses on solving that foundational problem, creating a tool that removes noise while preserving the structure of elephant vocalizations, helping make these recordings more usable for future research and analysis.
What it does
Rumble Refine is an interactive tool that removes environmental noise from elephant audio recordings while preserving the structure of low-frequency rumbles. Users can:
- Select an audio file and a labeled segment
- Run a noise-filtering pipeline
- View before/after spectrograms
- Listen to the cleaned audio output This makes it easier to visualize and analyze elephant communication patterns.
How we built it
We built a signal-processing pipeline in Python that operates in the frequency domain using spectrograms. Our approach includes:
- Short-Time Fourier Transform (STFT) to analyze frequency content over time
- Noise profiling from non-rumble regions
- Soft spectral gating using a sigmoid-based mask
- Median filtering to remove vertical artifacts
- Frequency weighting to emphasize low-frequency elephant signals
- Inverse STFT to reconstruct cleaned audio We wrapped this pipeline in an interactive Streamlit web app so users can easily run and visualize results.
Challenges we ran into
One of the biggest challenges was separating elephant rumbles from overlapping noise in the same frequency range. Since environmental noise can share similar low-frequency characteristics, simple filtering techniques were not enough. Also faced challenges with:
- Tuning the spectral mask to avoid removing the actual signal
- Handling different types of noise (vehicles vs airplanes)
- Deploying the app with all required dependencies and data
Accomplishments that we're proud of
- Successfully isolating low-frequency elephant rumbles from noisy recordings
- Building a full end-to-end pipeline from raw audio to cleaned output
- Creating an intuitive UI with visual and audio feedback
- Deploying a working web app that others can interact with
What we learned
- How to work with real-world noisy data
- Practical applications of signal processing techniques
- Debugging and deploying Python applications in a cloud environment
What's next for Rumble Refine!
- Automatic detection of elephant calls (no spreadsheet needed)
- Machine learning models for classification and pattern recognition
- Improved separation of overlapping signals
- Real-time processing for live monitoring applications
Log in or sign up for Devpost to join the conversation.