Skip to main content

A Python-based converter for sonar logs used by PINGMapper

Project description

PyPI - Version

A Python-based convertor for sonar logs collected with consumer-grade fishfinders.

PINGVerter is designed to pre-process sonar logs for PINGMapper post-processing. It is not intended to function as a stand-alone package.

Compatibility

Installation

pip install pingverter

Usage - Example Only

PINGVerter can be used as a stand-alone engine for decoding sonar logs and exporting ping attributes to CSV. While this functionality is described here, please use PINGMapper for all sonar log processing.

Humminbird

# Import
from pingverter import hum2pingmapper

# Parameters
inFile = r'C:\Path\To\Recording\Rec00001.DAT'
projDir = r'C:\Path\To\Outputs\MyProject'

sonar_object = hum2pingmapper(inFile, projDir)

Lowrance

# Import
from pingverter import low2pingmapper

# Parameters
inFile = r'C:\Path\To\Recording\Log.sl2'
projDir = r'C:\Path\To\Outputs\MyProject'

sonar_object = low2pingmapper(inFile, projDir)

Garmin

# Import
from pingverter import gar2pingmapper

# Parameters
inFile = r'C:\Path\To\Recording\Log.RSD'
projDir = r'C:\Path\To\Outputs\MyProject'

sonar_object = gar2pingmapper(inFile, projDir)

Garmin RSD files can also be exported as synchronized raw sample projects for viewer applications, with optional per-channel waterfall PNG previews:

from pingverter import gar

inFile = r'C:\Path\To\Recording\Log.RSD'
outDir = r'C:\Path\To\Outputs\SonarProject'

sonar_object = gar(inFile, nchunk=500, exportUnknown=True)
manifest = sonar_object.write_sonar_data_player_project(outDir, include_pngs=True)

The project writer creates manifest.json, pings.csv, frames.jsonl, samples.u16le, and one channel PNG per decoded Garmin channel.

You can also use the shared export API for any supported source format:

from pingverter import export_sonar_data_player_project

inFile = r'C:\Path\To\Recording\Line001.xtf'
outDir = r'C:\Path\To\Outputs\SonarProject'

manifest = export_sonar_data_player_project(inFile, outDir, include_pngs=True)

Cerulean

# Import
from pingverter import cerul2pingmapper

# Parameters
inFile = r'C:\Path\To\Recording\Log.svlog'
projDir = r'C:\Path\To\Outputs\MyProject'

sonar_object = cerul2pingmapper(inFile, projDir)

JSF

# Import
from pingverter import jsf2pingmapper

# Parameters
inFile = r'C:\Path\To\Recording\Line001.jsf'
projDir = r'C:\Path\To\Outputs\MyProject'

sonar_object = jsf2pingmapper(inFile, projDir)

XTF

# Import
from pingverter import xtf2pingmapper

# Parameters
inFile = r'C:\Path\To\Recording\Line001.xtf'
projDir = r'C:\Path\To\Outputs\MyProject'

sonar_object = xtf2pingmapper(inFile, projDir)

Outputs from the above examples will be exported to C:\Path\To\Outputs\MyProject\meta.

Acknowledgments

PINGVerter has been made possible through mentorship, partnerships, financial support, open-source software, manuscripts, and documentation linked below.

NOTE: The contents of this repository are those of the author(s) and do not necessarily represent the views of the individuals and organizations specifically mentioned here.

Future Development, Collaborations, & Partnerships

If you are interested in partnering on future developments, please reach out to Cameron Bodine.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pingverter-2.1.3.tar.gz (71.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pingverter-2.1.3-py3-none-any.whl (78.6 kB view details)

Uploaded Python 3

File details

Details for the file pingverter-2.1.3.tar.gz.

File metadata

  • Download URL: pingverter-2.1.3.tar.gz
  • Upload date:
  • Size: 71.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for pingverter-2.1.3.tar.gz
Algorithm Hash digest
SHA256 a412ff85a4b2b04a7026c14fb2c11d5df654a44db544fa0e129ab59b22baf427
MD5 0125d8605749423d205b0ffd95242fcc
BLAKE2b-256 d928ad553863caa3937295bf08f3e8c1939a80757bdb5a89ac885711d7fe6f75

See more details on using hashes here.

File details

Details for the file pingverter-2.1.3-py3-none-any.whl.

File metadata

  • Download URL: pingverter-2.1.3-py3-none-any.whl
  • Upload date:
  • Size: 78.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for pingverter-2.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5ca287975933b124d52520cfa75a2eb5d7caa79a1675e1be7da5334a2eb1db07
MD5 2ecb480a5b6977d2cedac80aade10a82
BLAKE2b-256 c4272e9232b031e0ad37bbbb283e9505f311171b747e7f42c1123f0ff0419694

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page