最小的、独立的OpenEXR阅读器,用于单部件、未压缩的扫描行文件。

minexr的Python项目详细描述


minexr公司

minexr是一个独立的、快速的Python OpenEXR阅读器,用于单个部分、未压缩的扫描行文件。它与Blender生成的.exr文件兼容。在

假设

minexr对要读取的.exr文件做了两个假设:

  1. 具有任意数量通道的单部件文件
  2. 无像素数据压缩,以及
  3. 等通道类型(半通道、浮动通道、UINT通道)。在

这些假设允许我们高效地解析和读取.exr文件。特别是我们获得扫描线之间的恒定偏移量,这使得我们可以在不复制的情况下以(H,C,W)格式读取整个图像。在

使用

以下内容取自example.py

importminexrwithopen('file.exr','rb')asfp:reader=minexr.load(fp)rgba=reader.select(['Color.R','Color.G','Color.B'])# a HxWx3 np.array with dtype based on exr type....

Full example.py加载以下图像

^{1}$ 在

以前是用Blender/EEVEEcube.blend渲染的。在

运行时

以下计时由bench.py通过从.exr文件中重复读取RGBA图像而产生。计时包括文件和numpy操作。在

Module[sec/image]Note
OpenEXR 1.3.20.020with channel concatenate
OpenEXR 1.3.20.015without channel concatenate
minexr0.004with channel concatenate

安装

或者通过pip

^{pr2}$

或者克隆此存储库并调用

pip install -e .

测试

运行测试

pytest

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

推荐PyPI第三方库


热门话题
java时间戳检索方法   在Java中遍历所有HTML元素(Selenium测试)   xml将Java类更改为存储过程   java如何使用DateTime对象分割间隔对象   mysql VBA连接良好,但java没有   调试无法在Java中的简单输出程序中获取输入   如何在java中将eclipse控制台输出转换为txt文件   查询的java JPA筛选器属性   java可以使用blockingqueue实现循环缓冲区吗   在@SpringBootTest中使用类时,java@ConfigurationProperties不起作用   java Primefaces inplace editor内部动态加载的p:accordionPanel重新排序ArrayList on edit   java在使用通用图像加载器获取图像时,有没有办法指定额外的头文件?   从包外实例化受保护类的java   java Spring hibernate mysql无法获取数据   java确定给定的时间戳是否在postgresql中的同一天内   java Sonarqube多个项目的历史记录表