跳转到主要内容

读写Netpbm文件

项目描述

Netpbmfile 是一个用于读取和写入 Netpbm 或相关格式的图像文件的 Python 库

  • PBM (可移植位图): P1 (文本) 和 P4 (二进制)

  • PGM (可移植灰度图): P2 (文本) 和 P5 (二进制)

  • PPM (可移植像素图): P3 (文本) 和 P6 (二进制)

  • PNM (可移植任意图): PBM、PGM 和 PPM 的总称

  • PAM (可移植任意图): P7、双值、灰度和 rgb

  • PGX (可移植灰度图有符号): PG、有符号灰度

  • PFM (可移植浮点图): Pf (灰度)、PF (rgb) 和 PF4 (rgba),只读

  • XV缩略图: P7 332 (rgb332),只读

Netpbm 格式在 https://netpbm.sourceforge.net/doc/ 中指定。

PGX 格式在 ITU-T Rec. T.803 中指定。

不执行伽玛校正或缩放。

作者::

Christoph Gohlke

许可证::

BSD 3-Clause

版本::

2024.5.24

快速入门

Python 包索引 安装 netpbmfile 包及其所有依赖项

python -m pip install -U "netpbmfile[all]"

请参阅 示例 了解如何使用编程接口。

源代码和支持在 GitHub 上可用。

要求

此版本已与以下要求和依赖项进行测试(其他版本可能也适用)

修订版

2024.5.24

  • 修复了GitHub上文档字符串示例未正确渲染的问题。

2024.4.24

  • 支持NumPy 2。

2023.8.30

  • 修复代码风格问题。

  • 添加py.typed标记。

2023.6.15

  • 停止支持Python 3.8和numpy < 1.21(NEP29)。

  • 改进类型提示。

2023.1.1

  • 几个破坏性更改

  • 将magicnum重命名为magicnumber(破坏性)。

  • 将tupltypes重命名为tupltype(破坏性)。

  • 将magicnumber和header属性更改为str(破坏性)。

  • 将pam参数替换为magicnumber(破坏性)。

  • 将byteorder参数从NetpbmFile.asarray移动到NetpbmFile(破坏性)。

  • 修复多图像文件的shape和axes属性。

  • 将maxval和tupltype参数添加到NetpbmFile.fromdata和imwrite。

  • 添加将注释写入PNM和PAM文件的功能。

  • 支持写入PGX和文本格式。

  • 添加Google样式docstrings。

  • 添加unittests。

2022.10.25

有关更早版本,请参阅CHANGES文件。

示例

将NumPy数组写入Netpbm文件为灰度二进制格式

>>> data = numpy.array([[0, 1], [65534, 65535]], dtype=numpy.uint16)
>>> imwrite('_tmp.pgm', data)

从Netpbm文件读取图像数据作为NumPy数组

>>> image = imread('_tmp.pgm')
>>> numpy.testing.assert_equal(image, data)

访问Netpbm文件的元数据和图像数据

>>> with NetpbmFile('_tmp.pgm') as pgm:
...     pgm.magicnumber
...     pgm.axes
...     pgm.shape
...     pgm.dtype
...     pgm.maxval
...     pgm.asarray().tolist()
...
'P5'
'YX'
(2, 2)
dtype('>u2')
65535
[[0, 1], [65534, 65535]]

从命令行查看Netpbm文件中的图像和元数据

$ python -m netpbmfile _tmp.pgm

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

netpbmfile-2024.5.24.tar.gz (29.4 kB 查看哈希值)

上传时间 源代码

构建分发

netpbmfile-2024.5.24-py3-none-any.whl (14.0 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面