sidescanpy.io.sdf#
Klein Marine Systems SDF (Sonar Data File) reader.
Parses Klein SDF files: a sequence of fixed-format pages, each with a 4-byte sync marker followed by a 512-byte header and variable-length sonar data.
This module provides:
SDFSonarPage— typed dataclass for sonar data pages (versions 3501 and 3502; low- and high-frequency channels).read_sdf()/read_sdf_iter()— read pages from a file.convert()— convert pages into a SideScanSurvey.
Klein conventions captured here:
Position fields (latitude/longitude) are stored as float64 in radians; this module converts to degrees on parse.
Attitude fields (heading/pitch/roll) are stored as float32 in degrees; no unit conversion needed.
Page sizes in the header exclude the 4-byte marker; total page on disk is page_size_field + 4.
Year is normally 4-digit (e.g. 2026); some firmware stores offset-from-1900. Auto-detected via < 200 check.
The SDF page of the documentation describes the field mapping and quirks.
2026 rshomberg@uri.edu
Modules