如何将 cv2 / Pillow 修改后的图像写入磁盘?
How can I write a cv2 / Pillow-modified image out to disk?
我用 Image.open() 打开了一张图片。我做了一些更改,重新分配像素 RGV 值,并尝试保存。
当我尝试保存时,我得到:
Trace back (most recent call last):
File "./shimmer", line 97, in <module>
cv2.imwrite('/home/christos/portrait-out.jpg', result)
TypeError: Expected Pre<cv::UMat> for argument 'img'
创建图像时会发生这种情况,baseline = Image.open('/home/christos/portrait-new-mini.jpg')
。
在搜索中我发现了类似的报告错误,但没有明确说明 "Here’s what works and how’s why."
我也看到过类似的工作完成但没有类似记录困难的页面。
如果需要,我可以 post 我的代码,但我猜测问题是由 cv2.imwrite()
调用和我想提供给调用的东西狭义定义的。
您似乎在 Pillow 中打开图像并尝试使用 OpenCV 保存 Pillow 图像。 OpenCV 需要一个 numpy 数组。在使用 opencv 写入文件之前,您应该先转换图像。
检查此 post :
我想,它会解决你的问题
我用 Image.open() 打开了一张图片。我做了一些更改,重新分配像素 RGV 值,并尝试保存。
当我尝试保存时,我得到:
Trace back (most recent call last):
File "./shimmer", line 97, in <module>
cv2.imwrite('/home/christos/portrait-out.jpg', result)
TypeError: Expected Pre<cv::UMat> for argument 'img'
创建图像时会发生这种情况,baseline = Image.open('/home/christos/portrait-new-mini.jpg')
。
在搜索中我发现了类似的报告错误,但没有明确说明 "Here’s what works and how’s why."
我也看到过类似的工作完成但没有类似记录困难的页面。
如果需要,我可以 post 我的代码,但我猜测问题是由 cv2.imwrite()
调用和我想提供给调用的东西狭义定义的。
您似乎在 Pillow 中打开图像并尝试使用 OpenCV 保存 Pillow 图像。 OpenCV 需要一个 numpy 数组。在使用 opencv 写入文件之前,您应该先转换图像。
检查此 post :
我想,它会解决你的问题