A GUI-based application for creating and running Seismic Unix workflows on Windows using the Linux subsystem
Project description
InSeis
A GUI-based application designed in Python for creating and running Seismic Unix workflows on Windows through the Windows Subsystem for Linux (WSL). InSeis bridges the gap between powerful Linux-based seismic processing and the Windows environment.
InSeis is part of a collection of open source tools to digitize and enhance vintage seismic sections. See https://a-pertuz.github.io/REVSEIS/ for more information.
📖 Table of Contents
✨ Features
- User-Friendly Interface: Easily create, edit, and run Seismic Unix workflows through an intuitive GUI
- Workflow Management: Save, load, and manage your processing workflows with full parameter preservation
- Process Library: Extensive library of pre-configured Seismic Unix processes organized by category
- Visualization: View seismic data directly in the application with built-in plotting capabilities
- Windows Integration: Use Seismic Unix on Windows through WSL without command-line complexity
- Format Conversion: Convert between SU and SEG-Y formats seamlessly
- Real-time Monitoring: Track workflow execution with detailed logging and progress indicators
💻 System Requirements
- Operating System: Windows 10/11 with WSL installed
- Memory: At least 8GB RAM recommended
- Python: 3.12 or higher
- Dependencies: Seismic Unix installed in WSL
- Disk Space: Sufficient space for seismic data processing and temporary files
⚙️ Installation
InSeis requires Windows Subsystem for Linux (WSL) to run. This allows you to use Linux tools directly on Windows.
Install WSL
- Open Command Prompt as Administrator (right-click, select "Run as administrator")
- Run the following command:
wsl --install - Wait for the installation to complete
- Restart your computer when prompted
- After restart, search for "Ubuntu" in the Start menu and launch it
- Follow the prompts to set up your new Linux environment. You may be asked to create a user account and password
- Run
sudo apt updateto ensure all packages are up to date
Note: If you encounter any issues, please refer to the official WSL installation guide: https://learn.microsoft.com/windows/wsl/install
Install Seismic Unix
- Open the Ubuntu terminal (search for "Ubuntu" in Windows Start menu)
- Copy and paste this entire command:
bash -c "$(wget -qO- https://gist.githubusercontent.com/a-pertuz/2b341bc8af2a37cde820d829f2789d99/raw/install_seismic_unix.sh)"- Press Enter and wait for the installation to complete. It may take several minutes
Important: Read and accept the Seismic Unix license agreement when prompted.
Install InSeis
pip install inseis
🚀 Quick Start
- Launch InSeis: Open the application from your Start menu or run
inseisin Command Prompt - Create a new workflow: The main interface displays available processes on the left and your current workflow on the right
- Load data: Add a data loading process to your workflow (e.g., "SEGYREAD")
- Add processing steps: Select and configure processing operations from the available processes list
- Run your workflow: Click "Run Workflow" to execute all steps in sequence
- View results: Results will be displayed automatically upon completion
Important note: Seismic Unix uses SU files as its native format. If you need SEGY files for external applications, use the "Convert SU to SEGY" utility in the menu bar after processing.
📚 Complete Tutorial
Interface Overview
The main application window consists of:
- Process Library Panel (Left): Contains all available Seismic Unix processes organized by category
- Workflow Canvas (Center): Where you build and configure your processing workflow
- Parameters Panel (Right): Shows parameters for the currently selected process
- Log Window (Bottom): Displays output and error messages from workflow execution
- Results Viewer (Tab): Visualizes processing results
Creating Workflows
Basic Workflow Structure
- Input: Data loading processes (e.g., "Load SU File", "SEGYREAD")
- Processing: Processing operations (filtering, deconvolution, migration, etc.)
- Output: Results are saved as SU files and displayed within the application
Saving and Loading Workflows
To save your workflow:
- Click "Workflows" > "Save Workflow..."
- Enter a name and description
To load a workflow:
- Click "Workflows" > "Load Workflow..."
- Select from your saved workflows
Workflow Example: Post-stack Migration and SNR Enhancement
-
Add SEGYREAD: Set input file path
tape=<input_file.segy> -
Add SEGYCLEAN: Clean unused headers in the SU file
-
Add SUAGC: Automatic gain control
panel=1, agc=1, wagc=0.75 -
Add SUMIX: Compute weighted moving average - trace mix
mix=.6,1,1,1,.6 -
Add SUKTMIG2D: Kirchhoff post-stack time migration
vfile=<velocity_model.bin>, hoffset=0, dx=25Requires a velocity model in binary format (see VelRecover)*
-
Add SUPEF: Spike deconvolution for improved vertical resolution
minlag=0.004, maxlag=0.12, pnoise=0.01 -
Add SUFXDECON: Random noise attenuation
fmin=12, fmax=60, twlen=0.3, ntrw=30, ntrf=4 -
Add SUTVBAND: Time-variant bandpass filtering
tf=0,1.5,2.5 f=10,12,55,60 f=14,16,50,55 f=14,16,45,50
🔧 Troubleshooting
WSL Connection Issues
- Ensure WSL is installed: Open PowerShell and type
wsl --list. If no distributions are listed, install one usingwsl --install - Verify WSL is running: Open PowerShell and type
wsl --list --running - Restart WSL service:
wsl --shutdownand then launch WSL again - Check network settings if you're accessing remote data
Seismic Unix Not Found
- Check your CWPROOT path in the Configuration menu
- Verify Seismic Unix installation: Run
suplane | suximagein WSL - Check environment variable:
echo $CWPROOTshould show the SU installation path - Reinstall if needed using the installation script
Input/Output File Issues
- Check file permissions
- Ensure paths don't contain special characters
- Use forward slashes in file paths
- Verify file formats are supported
Command Failures
- Check the log window for specific error messages
- Verify all required parameters are set
- Ensure input files exist and are accessible
- Check that all processes in the workflow are properly connected
❓ FAQ
Is InSeis compatible with all versions of Seismic Unix?
InSeis works with Seismic Unix versions 43 and newer. The installer script automatically installs the latest compatible version. If you have an existing installation of Seismic Unix, InSeis will attempt to use it if the path is correctly set in your .bashrc file.
How do I integrate results from SEGYRecover and VELRecover?
To use data from other REV-SEIS tools:
- SEGY files from SEGYRecover can be directly loaded using the "SEGYREAD" process
- Velocity models from VELRecover should be exported in binary format and can be loaded using the "Load Velocity Model" where necessary, for example during migration
- Use the workspace data directory structure to keep your project organized
Does InSeis work on macOS or Linux?
InSeis is designed specifically for Windows with WSL. On macOS or Linux, you can install Seismic Unix directly and use its native command-line interface or GUI alternatives like OpenSeaSeis or BotoSeis.
What is the difference between SU files and SEG-Y files?
SU (Seismic Unix) files and SEG-Y files are both formats for storing seismic data, but with key differences:
- SU files are the native format for Seismic Unix, with a simpler header structure and no EBCDIC header
- SEG-Y files are the industry standard with more extensive headers, including text headers with acquisition information
- InSeis can convert between these formats using the "SEGYREAD" and "SEGYWRITE" processes
Can I run batch processing?
Currently, InSeis processes one workflow at a time. However, you can save workflows and reuse them with different datasets. For batch processing, consider using saved workflows with different input parameters.
📄 Citation
If you use this software in your research, please cite it as:
Pertuz, A., Benito, M. I., Llanes, P., Suárez-González, P., & García-Martín, M. (2025c). InSeis: A Python GUI-based application that brings Seismic Unix routines to Windows using the Linux subsystem. Zenodo. https://doi.org/10.5281/zenodo.15053545
Find this software in the Zenodo Archive: https://doi.org/10.5281/zenodo.15053545
⚖️ License
This software is licensed under the GNU General Public License v3.0 (GPL-3.0).
You may copy, distribute and modify the software as long as you track changes/dates in source files. Any modifications to or software including (via compiler) GPL-licensed code must also be made available under the GPL along with build & installation instructions.
For the full license text, see LICENSE or visit https://www.gnu.org/licenses/gpl-3.0.en.html
For questions, support, or feature requests, please contact Alejandro Pertuz at apertuz@ucm.es
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file inseis-1.1.1.tar.gz.
File metadata
- Download URL: inseis-1.1.1.tar.gz
- Upload date:
- Size: 69.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8623fed01b53ca7653f86ddbb7435f593f8e04a44edc17c764d5bf60ecfc1615
|
|
| MD5 |
ce68e287531e5cdecaad362258e901ec
|
|
| BLAKE2b-256 |
ed95cc6962e964cc05af8d693d70ff68a77aa7a2c9a6bf5a7bcc781c88f836a6
|
File details
Details for the file inseis-1.1.1-py3-none-any.whl.
File metadata
- Download URL: inseis-1.1.1-py3-none-any.whl
- Upload date:
- Size: 80.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
488c433075e5408c20f088d8d485cdd5b6ee624d9b876836cd734efd89b4e5fb
|
|
| MD5 |
78bef1e281a1e6bea929a302daf7fa22
|
|
| BLAKE2b-256 |
4520d897304099c68aa12a1e672b048ed5b741ea60f7de264e87816e02421f86
|