如何在pyvips中分配图像组件?

How to assign image components in pyvips?

我正在使用 pyvips 库,它有一个特殊的图像对象,这些对象有 3 个带对应于 HSV(或其他)颜色 space 组件。问题在于,在过滤其中一个 HSV 组件后,不允许将其再次分配给原始图像。在此代码上,您可以看到写入的内容和错误。

import pyvips
image = pyvips.Image.new_from_file('image.jpg', access='sequential')
image_hsv= image.colourspace("hsv")
result = image_hsv[0].hist_local(40, 40, max_slope=5)
image_hsv[0] = result

TypeError: 'Image' object does not support item assignment

我也试过直接将一个 numpy 数组分配给 image_hsv[0] 但都没有用。

库文档:此处为文档 https://libvips.github.io/pyvips/

图像对象文档:https://libvips.github.io/pyvips/vimage.html

通过避免辅助变量,它最终对我有用。

image = pyvips.Image.new_from_file('image.jpg', access='sequential')
image_hsv= image.colourspace("hsv")
image_hsv[0].hist_local(40, 40, max_slope=5)