python - 在 python : extrapolate background color 中旋转图像

标签 python image colors rotation python-imaging-library

我正在使用以下 python 代码旋转图像:

from PIL import Image

img = Image.open('banana.jpg')
rotated = img.rotate(10)
rotated.save('banana-rotated.jpg')

这会进行以下转换:

enter image description hereenter image description here

如您所见,背景是黑色的。 This question询问如何用特定颜色填充背景。但是,我想用图像的颜色填充背景。因为我需要旋转很多图片,所以我不想将背景设置为固定颜色。

有什么方法可以在边缘扩展图像使用从图像推断出的颜色?理想情况下,如果图像没有统一的背景,这也适用。

最佳答案

这可能会有所帮助:https://pillow.readthedocs.io/en/5.2.x/releasenotes/5.2.0.html#image-rotate

从 Pillow 5.2.0 开始,一个名为 fillcolor 的新命名参数已添加到 Image.rotate。此颜色指定要在旋转图像外部区域使用的背景颜色。

image.rotate(45, fillcolor='white')

如果图像旋转 x 度而不是 90,180,270,会有帮助,

关于python - 在 python : extrapolate background color 中旋转图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49510225/

相关文章:

python - 如何使用 Pandas 为数据框中新添加的值着色?

Python 非整数 float

image - JHipster : Blob/ImageBlob/VideoBlob/AudioBlob datatype

python - 渲染灰度图像

c# - 如何检查两个 System.Drawing.Color 结构是否以 16 位色深表示相同的颜色?

java - 位运算--如何改变现有的颜色?

python - 悄悄导入rpy

python - Heroku 上的 Django 应用 : Application Error

python元组划分

image - 在 Corona sdk 中显示图像