Wednesday, July 8, 2026

Peer ReviewedDigital

Unsupervised seismic waveform classification

July 1, 2026
DOI: https://doi.org/10.3997/1365-2397.fb2026044

Unsupervised waveform classification is a proven technology for objective seismic facies analysis, yet its application often remains confined to proprietary commercial software. This tutorial bridges that gap by presenting a complete, hands-on workflow that empowers geoscientists to implement this technique using open-source Python libraries. The methodology is built around the K-Means clustering algorithm and is demonstrated through a progressive series of examples: a foundational 2D synthetic model, a more complex 2.5D meandering channel system, and a final application to a real-world 3D seismic volume. Applying this workflow to real data successfully identifies distinct seismic facies and delineates key geological features such as channels and fan systems. To ensure practical reproducibility and emphasise the hands-on nature of this tutorial, the entire workflow is accompanied by open-source Jupyter notebooks. Readers will learn the essential, practical steps to independently execute the entire analysis, from extracting waveform data around a horizon to determining the optimal number of facies with the elbow method and visualising the final, interpretable maps. The key takeaway is the ability to move beyond being a user of black-box software to becoming a creator of customised analytical workflows and code. This guide provides the practical knowledge needed to apply a powerful, data-driven interpretation technique, enabling greater flexibility, understanding, and innovation without the need for a commercial licence.