{"id":13719709,"url":"https://github.com/equinor/pyvds","last_synced_at":"2025-08-10T03:05:37.609Z","repository":{"id":47097736,"uuid":"391019016","full_name":"equinor/pyvds","owner":"equinor","description":"Read VDS files with segyio-like syntax","archived":false,"fork":false,"pushed_at":"2024-07-10T07:31:01.000Z","size":55,"stargazers_count":6,"open_issues_count":2,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-03T18:51:48.573Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/equinor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-07-30T10:07:41.000Z","updated_at":"2025-05-22T23:50:25.000Z","dependencies_parsed_at":"2023-01-31T03:15:16.885Z","dependency_job_id":null,"html_url":"https://github.com/equinor/pyvds","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/equinor/pyvds","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equinor%2Fpyvds","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equinor%2Fpyvds/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equinor%2Fpyvds/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equinor%2Fpyvds/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/equinor","download_url":"https://codeload.github.com/equinor/pyvds/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equinor%2Fpyvds/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269668193,"owners_count":24456497,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T01:00:54.496Z","updated_at":"2025-08-10T03:05:37.581Z","avatar_url":"https://github.com/equinor.png","language":"Python","funding_links":[],"categories":["Software","Software and Tools"],"sub_categories":["Seismic and Seismology"],"readme":"# pyVDS\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n[![CircleCI](https://circleci.com/gh/equinor/pyvds/tree/master.svg?style=shield)](https://circleci.com/gh/equinor/pyvds/tree/master)\n[![PyPi Version](https://img.shields.io/pypi/v/pyvds.svg)](https://pypi.org/project/pyvds/)\n\nConvenience wrapper around Bluware's OpenVDS+ Python bindings which enables \nreading of VDS files with a syntax familiar to users of segyio.\n\n---\n\n### Installation\n\nRequires [**openvds** package from Bluware](https://community.opengroup.org/osdu/platform/domain-data-mgmt-services/seismic/open-vds).\n\n**N.B. This is licensed under CC-BY-ND 4.0**\n\n- Wheels from [PyPI](https://pypi.org/project/pyvds/): `pip install pyvds`\n- Source from [Github](https://github.com/equinor/pyvds): `git clone https://github.com/equinor/pyvds.git`\n\n---\n\n### Usage\n\n#### Use segyio-like interface to read VDS files ####\n```python\nimport pyvds\nwith pyvds.open(\"in.vds\")) as vdsfile:\n    il_slice = vdsfile.iline[vdsfile.ilines[LINE_IDX]]\n    xl_slice = vdsfile.xline[LINE_NUMBER]\n    zslice = vdsfile.depth_slice[SLICE_IDX]\n    trace = vdsfile.trace[TRACE_IDX]\n    trace_header = vdsfile.header[TRACE_IDX]\n    text_file_header = vdsfile.text[0]\n```\n\n#### Read a VDS file with underlying functions ####\n```python\nfrom pyvds.accessors import VdsReader\nwith VdsReader(\"in.vds\") as reader:\n    inline_slice = reader.read_inline_number(LINE_NUMBER)\n    crossline_slice = reader.read_crossline(LINE_IDX)\n    z_slice = reader.read_zslice_coord(SLICE_COORD)\n    sub_vol = reader.read_subvolume(min_il=min_il, max_il=max_il,\n                                    min_xl=min_xl, max_xl=max_xl,\n                                    min_z=min_z, max_z=max_z)\n```\n\n---\n\n### Creating VDS files\n\nExample of creating wavelet compressed VDS file from SEG-Y:\n```\n.\\SEGYImport.exe --vdsfile \u003coutput_file\u003e --compression-method wavelet --tolerance 1 \u003cinput_file\u003e\n```\nSEGYImport may be obtained from [Bluware's OpenVDSPlus distribution](https://bluware.jfrog.io/native/Releases-OpenVDSPlus/2.1)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fequinor%2Fpyvds","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fequinor%2Fpyvds","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fequinor%2Fpyvds/lists"}