地震数据在seg y文件中的传输

segp的Python项目详细描述


Segpy是由Sixton North创建的开源软件,并根据GNU Affero通用公共许可证获得许可。

可选的商业许可条款可从60 North获得,就像您希望将Segpy重新发布为 作为专有封闭源代码产品的一部分,或使用segpy作为一部分提供软件即服务(saas) 一个专有的封闭源代码服务。

状态

生成状态:

https://travis-ci.org/sixty-north/segpy.svg?branch=masterDocumentation Statushttps://coveralls.io/repos/github/sixty-north/segpy/badge.svg?branch=master

安装

python包索引(pypi)中提供了segpy包:

https://badge.fury.io/py/segpy.svg

该包仅支持Python3。要安装:

$ pip install segpy

什么是赛格皮?

seg-y文件格式是勘探地球物理学家协会开发的几种存储标准之一。 地球物理地震数据。它是一个开放的标准,由SEG技术标准委员会控制。 非营利组织。

本项目的目标是在python 3中实现一个开放的seg-y模块,用于在seg-y文件和 纯python中的python数据结构。

基本用法

下面是一个简短的示例,它将非标准的小端seg-y转换为标准的大端seg-y:

from segpy.reader import create_reader
from segpy.writer import write_segy

with open('seismic_little.sgy', 'rb') as segy_in_file:
    # The seg_y_dataset is a lazy-reader, so keep the file open throughout.
    seg_y_dataset = create_reader(segy_in_file, endian='<')  # Non-standard Rev 1 little-endian
    print(seg_y_dataset.num_traces())
    # Write the seg_y_dataset out to another file, in big-endian format
    with open('seismic_big.sgy', 'wb') as segy_out_file:
        write_segy(segy_out_file, seg_y_dataset, endian='>')  #  Standard Rev 1 big-endian

create_reader()函数创建数据集,该数据集懒洋洋地从文件中获取跟踪,这就是为什么 在使用此数据集期间,文件必须保持打开状态以供读取。我们重写默认的endian参数 指定我们正在读取的seg-y文件是非标准的小字节顺序。在最后一行 示例我们将Dataset输出写入另一个文件,这次是使用标准的大端字节顺序。 注意,输入文件必须保持打开状态,因为write_segy()一次只从 输入数据集。这意味着总体内存使用率非常低,程序可以处理任意大的seg-y文件。

贡献

最简单的方法是使用segpy提交缺陷报告或遇到的任何其他问题。拜托 有关详细信息,请参见CONTRIBUTING.rst

开发

Segpy是由60 North公司创建的,旨在满足其需求。如果需要其他功能,请改进 性能、对早期版本python的可移植性,或修复的特定缺陷(这些缺陷标记为“unfunded” 在github问题跟踪程序中)60个北方有经验的segpy维护人员可以执行 资助开发工作。在http://sixty-north.com向六十号北询问。

Segpy版本

segpy 2.0是对python 3中seg-y阅读器的一个完整的重新构想,代表了与任何和所有旧版本的完全突破。 塞格比的版本。没有试图维护与segpy早期版本的api兼容性,也没有代码 跨版本共享。尽管早期版本的segpy是开源的,但它们从未像现在这样被“发布”。 segpy的早期版本已被弃用,并且完全不受支持。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java中的正则表达式使用什么正则表达式将掩码添加到带有certian模式的字符串中   java我无法使用myfaces 2.0.13和richfaces 4.0 final在Tomcat7中运行我的应用程序   java应用程序在POJO之间不能有重复的代码块   javamysql在Tomcat中创建内存泄漏   java将两种FragmentManager类型导入到同一个类中   需要java代码设计反馈:检查文件中的字符是否为允许的字符   为Java项目记录一个日志文件   java编译时,我收到错误:“unreachable statement”。我如何解决这个问题?   在java中启动运行带空格的外部exe   java如何设置展开/折叠文本视图的动画   java如何从2个整数中获得下一个最接近的整数?   JavaGooglePlaceAPI密钥   java在底部的导航栏中,即使我选择了那个图标,图标也不会突出显示。如何改变它?   java数据类型Double正在显示值0.0   java在不使用数组或任何使用数组或任何其他集合的函数的情况下查找用户给定的n个值的中值   java将dao实体类与mvc表单相链接是件好事吗   如果传递的是最终对象,是否仍应检查null?   java哈希代码出现而不是int,对象名称出现不正确?   针对Android的java Google游戏服务顽固错误