About this Application
Sub Bottom Profiler SEG-Y & SES Viewer · V.10-2026
This is a free, lightweight, client-side web application designed for the visualization, processing, and interpretation of Sub-Bottom Profiler (SBP) and high-resolution shallow seismic data.
Privacy & Security: 100% Local Processing.
This tool runs entirely within your web browser. Your SEG-Y and SES files are never uploaded. Parsing, signal processing, and rendering occur on your computer. Only the optional satellite basemap requests online map tiles.
1. Data Source & File Loading
- Loading: Select or drop a SEG-Y (.sgy, .segy) or classic Innomar envelope (.ses) file. The reader detects the format from its contents, not its filename.
- Innomar SES: Select LF or HF. Range, sound speed and navigation are read from each ping. Variable acquisition ranges are aligned in depth. SES range and navigation settings let you override calibration or select the eight SIS navigation slots. Leave calibration fields empty to use the file headers.
- Compatibility: Classic SES layout with 480 unsigned 16-bit samples per channel is supported. RAW, SES3, unrecognized proprietary layouts and SEG-Y revision 2 need conversion to a compatible SEG-Y file. This is not a universal reader for every file named .ses.
- Large files: The final processing uses all traces; the display may combine samples and traces into peak-preserving bins to limit memory. The status reports display resolution. Preview is temporary and cannot be digitized.
- Reloading: Changing file, channel or import calibration reloads the data and clears digitized layers after confirmation. Export your interpretation first. Applying signal processing preserves layers and the current view.
- Troubleshooting: If the generated image looks like pure static noise or is completely black, the automatic detection might have failed due to non-standard headers. Open this dropdown to manually force the Data Format (e.g., IEEE 32-bit Float) or Endianness, then click Apply and Reload.
2. Horizon Digitization (Interpretation)
Trace geological layers on the canvas. SEG-Y depth uses 1500 m/s and the recording delay. SES depth uses the acquisition range and sound speed (or your overrides). Displayed TWT uses a constant reference speed if the SES speed varies. These are acoustic depths: no additional draft, tide, heave or sediment-velocity correction is applied. Verify calibration before using exported depths.
- Zoom / Measure Tool:
- Left Mouse Button (Drag): Draw a dashed rectangle to perform a Window Zoom. The image will automatically crop to the selected depth and zoom in horizontally.
- Right Mouse Button (Drag): Draw a line between two points to measure distance (in meters/traces) and estimated depth difference.
- Draw Tool: First, create a new layer by clicking + New. To draw, hold down CTRL + Click (Left Mouse) to add connected points. To break a line and start a new disconnected segment on the same layer, simply perform a normal Click (without CTRL).
- Edit Tool: Drag existing points with the Left Mouse button to adjust them. Use the Right Mouse Button on a point to delete it.
- Export: Export digitized horizons as CSV or 3D DXF. Coordinates come from the source navigation and depths from the displayed calibration. For a reduced display, points refer to the representative trace/sample of each display bin, not necessarily the location of its strongest return.
3. Navigation and Map
The app extracts navigation from trace headers or the SES SIS slots. Source positions are retained; no automatic despiking or datum transformation is applied.
- Automatic Detection: If the file contains Latitude/Longitude (Decimal degrees or Arc-Seconds), the app automatically converts them and identifies the correct UTM Zone.
- UTM Zone (Fallback): If the file only contains raw X/Y meters, the app cannot guess your global location. It will use the Zone and Hemisphere specified in this menu to draw the map. If the map track appears in the wrong country, change the zone here and reload the file.
- Export Track: Saves the navigation track as a CSV file. Check the positions and the WGS84/UTM settings before use.
4. Signal Processing
Processes copies of the imported samples, which may contain a full waveform or an envelope. The source file is not modified. Click 'Apply Processing' after changing these values.
- Acoustic Band-Pass Filter: An Ormsby filter defined by four frequencies (F1, F2, F3, F4). It selects frequency components of the original acoustic waveform and is intended for full-waveform data. Settings must satisfy 0 ≤ F1 < F2 ≤ F3 < F4 ≤ half the sample rate (Nyquist); this limit is shown beside the controls.
- Gain Control (AGC): Normalizes amplitudes along each trace using a sliding time window in milliseconds. It can make weaker reflectors easier to see, but does not preserve the original amplitude ratios.
- Smoothing: An optional moving average over 3, 5 or 9 vertical samples. Available for both SES and SEG-Y. It reduces rapid sample-to-sample variations but also broadens thin reflectors; compare with smoothing off before interpreting small features.
- Performance: Processing runs in a worker with reusable FFT plans and bounded raw/filtered caches. Changing AGC reuses the filtered traces when they fit in cache. Cancel interrupts processing without modifying the source file.
Why is Band-Pass Filter disabled for SES files?
Classic Innomar SES stores the envelope: echo strength over time, not the original acoustic oscillation. The V3 therefore disables its acoustic band-pass control for SES as a precaution against applying transmit-frequency settings to envelope data. This is an application choice, not a mathematical impossibility of filtering SES.
An envelope can be frequency-filtered, but that filter acts on variations in echo amplitude, not on the original acoustic frequency band. It must use the envelope sample rate rather than the sonar transmit frequency, and can alter the shape and amplitudes of reflectors. A dedicated envelope frequency-filter mode is not implemented in this version; AGC and moving-average smoothing are available now.
SES converted to SEG-Y: Changing the file format does not recover the original waveform or phase. An exported envelope remains an envelope. V3 does not automatically identify every envelope stored inside a SEG-Y file, so an enabled checkbox is not proof of full-waveform content: leave acoustic band-pass off for such exports and verify the acquisition/export settings.
For acoustic band-pass processing, use an actual full-waveform recording, such as a suitable LF channel acquired in RAW or SES3 and exported to a supported SEG-Y format. RAW/SES3 are not imported directly by this build. See the Innomar manual, appendix A.17 for the distinction between data formats.
5. Profile Adjustments & Image Settings
These controls change the visual rendering in real-time without modifying the underlying data.
- Depth Range: Crop the top and bottom of the image. Enter the start and end depth in meters, then click Crop / Apply.
- Color Palette: Switch between grayscale, inverted grayscale (standard for SBP), seismic (blue/red), and copper.
- Brightness & Contrast: Standard image adjustments.
- Sensitivity (Pre-Gain): A logarithmic multiplier applied to the raw signal before it is mapped to colors. Useful if the overall signal is very weak.
- TVG (Depth Gain): Time-Variant Gain. Linearly increases brightness as depth increases to compensate for acoustic attenuation in the sediment.
- Trace Eq. (Local AGC): Equalizes brightness horizontally across traces. Useful if some pings are randomly darker/brighter due to source power fluctuations.