cv2.imwrite() SystemError: <built-in function imwrite> 返回 NULL 没有设置错误

Ser*_*cía 4 python cv2

我正在尝试将 np 数组保存为图像。问题是,如果我在 imwrite 函数中写入路径它可以工作,但是如果我将它存储在一个变量中然后使用这个变量作为路径它不起作用并返回一个错误。

这有效:

cv2.imwrite('my/path/to/image.png', myarray[...,::-1])
Run Code Online (Sandbox Code Playgroud)

这不起作用

new_image_path = path/'{}+.png'.format(np.random.randint(1000))
cv2.imwrite(new_image_path, myarray[...,::-1])
Run Code Online (Sandbox Code Playgroud)

它返回此错误:

SystemError: <built-in function imwrite> returned NULL without setting an error
Run Code Online (Sandbox Code Playgroud)

Oph*_*r S 5

该方法cv2.imwrite不适用于 Path 对象。调用方法时只需将其转换为字符串:

cv2.imwrite(str(new_image_path), myarray[...,::-1])
Run Code Online (Sandbox Code Playgroud)