1

我刚刚开始使用 OpenImageIO 编写东西。在我的实验中,我试图从 exr 文件中提取一些选定的子图像并将它们写入另一个文件。但是,当我从文档中尝试以下示例时,我不断收到错误消息。

#!/usr/bin/env python

import OpenImageIO as oiio

filename = "a.exr"
final = "b.exr"

input = oiio.ImageInput.open (filename)
spec = input.spec ()
pixels = input.read_image ()
input.close ()

output = oiio.ImageOutput.create (final)
if output.supports("multiimage") :
    output.open(final, spec)
    output.write_image(pixels)
    output.close ()

当我尝试这个时,我收到以下错误:

ArgumentError: Python argument types in
    ImageOutput.open(ImageOutput, str, ImageSpec)
did not match C++ signature:
    open(PyOpenImageIO::ImageOutputWrap {lvalue}, std::string, boost::python::tuple {lvalue})
    open(PyOpenImageIO::ImageOutputWrap {lvalue}, std::string, OpenImageIO::v1_6::ImageSpec, OpenImageIO::v1_6::ImageOutput::OpenMode)

我想知道是否有人可以指出我在这里做错了什么?很感谢任何形式的帮助。

非常感谢

4

1 回答 1

0

您知道您具体使用的是哪个版本吗?

有点1.6的味道。那是几年前的事了。当前支持的版本是 2.0。你有可能使用现代版本吗?无论您遇到什么麻烦,都可能是很久以前解决的问题。

于 2019-04-11T04:49:28.807 回答