使用python wand时图像合成结果不正确

使用python wand时图像合成结果不正确,python,wand,Python,Wand,我有3张图像需要合成在一起,但结果与后效合成的原始结果不一样。在后效中,我需要使用32位图像深度来进行一些合成,我尝试了ImageMagick,结果是正确的,我可以在批处理命令中完成,但我需要做的层比较大,处理时间相当长,然后我在python Wand中完成,我想我可以加快时间,但我坚持这一点,复合计算看起来都是负值 如何使用wand或其他库获得正确的结果?我也尝试了PythonMagick和pgmagick,但结果也是这样。谢谢 我使用的是Wand 0.5.1,ImageMagick版本是Im

我有3张图像需要合成在一起,但结果与后效合成的原始结果不一样。在后效中,我需要使用32位图像深度来进行一些合成,我尝试了ImageMagick,结果是正确的,我可以在批处理命令中完成,但我需要做的层比较大,处理时间相当长,然后我在python Wand中完成,我想我可以加快时间,但我坚持这一点,复合计算看起来都是负值

如何使用wand或其他库获得正确的结果?我也尝试了PythonMagick和pgmagick,但结果也是这样。谢谢

我使用的是Wand 0.5.1,ImageMagick版本是ImageMagick-7.0.8-Q16-HDRI(64位)

以下是我的代码和示例:

from wand import image as wi
from wand import api 

img = wi.Image()
img.read(filename='D:\\0225_red.jpg')
img.convert('TIFF')
img.depth=24
api.library.MagickSetOption(img.wand,'quantum:format','floating-point')
api.library.MagickSetOption(img.wand,'compose:clamp','off')

img2=wi.Image()
img2.read(filename='D:\\0225_pink.jpg')
img2.convert('TIFF')
img2.depth=24
api.library.MagickSetOption(img2.wand,'quantum:format','floating-point')
api.library.MagickSetOption(img2.wand,'compose:clamp','off')

img3=wi.Image()
img3.read(filename='D:\\0225_blue.jpg')
img3.depth=24
api.library.MagickSetOption(img3.wand,'quantum:format','floating-point')
api.library.MagickSetOption(img3.wand,'compose:clamp','off')

img.composite_channel('all_channels',img2 , 'minus_src')
img.composite_channel('all_channels',img3 , 'plus')
img.format = 'TIFF'
img.save(filename='D:\\0225_test.tif')
AE的结果:

我的代码的结果:


我怀疑问题与操作顺序有关。试试下面的

从wand.image导入图像
将图像(filename='D:\\0225\u red.jpg')作为img:
img.options['quantum:format']='floating-point'
img.options['compose:clamp']=“off”
图像(filename='D:\\0225_blue.jpg')为蓝色:
模拟合成频道(“所有频道”,蓝色,“加号”)
图像(filename='D:\\0225\u pink.jpg')为粉红色:
img.composite_channel('所有_channels',粉红色,'减去'src')
img.save(filename='D:\\0225\u test.tif')

您能发布原始图像吗,这样我们就有东西可以演示了?使用CLI命令也很有帮助。