python 等比例缩小图片,python图像放大

  python 等比例缩小图片,python图像放大

  说明

  1.初始化目标尺寸的窗帘。所有值都相同。

  2.计算缩放比例。

  将原始图像的长边缩放至目标尺寸。

  3.让短边也按照这个比例放大缩小,得到的画面不会失真。

  4.缩放后的图像必须小于或等于目标尺寸。

  所以一定要能够粘贴在窗帘的中央,这样窗帘未覆盖的部分就会自动变成空白,省去了填充的步骤。

  5.获得想要的图片。

  实例

  importnumpyasnp

  fromPILimportImage

  defresize(img,size):

  #先创建一个目标大小的幕布,然后把放大的图片粘贴在中间,省去了两边填空的麻烦。

  canvas=Image.new(RGB ,size=size,color=#7777 )

  目标宽度,目标高度=尺寸

  宽度,高度=img.size

  offset_x=0

  offset_y=0

  如果highwidth3360 # Height是长边

  Height_=target_height#直接将高度调整到目标尺寸。

  Scale=height_/height#计算高度具体调整多少,得到一个缩放比例。

  Width_=int(width*scale)# Width以相同的比例缩放。

  offset _ X=(target _ width-width _)//2 #计算单边空白在X方向的距离

  Else:#同上

  宽度_=目标宽度

  比例=宽度_/宽度

  height_=int(高度*小数位数)

  offset _ y=(target _ height-height _)//2

  Img=img.resize ((width _,height _),image .双线性)#缩放高度和宽度。

  Canvas.paste (img,box=(offset _ x,offset _ y)) #将缩放后的图片粘贴到窗帘上。

  #box参数用于确定要粘贴的图片左上角的位置。Offset_x是X轴的单侧边距,offset_y是Y轴的单侧边距,保证画面可以填充到幕布的中央。

  return画布

  img=Image.open(1.jpg )

  Target__size=(500,300)#目标尺寸:宽500,高300

  res=resize(img,target__size)

  Res.save(new.jpg )以上是python实现图像比例缩放的方法。希望对你有帮助。更多python学习方向:Python基础课程

  本教程运行环境:windows7系统,Python 3.9.1,DELL G3电脑。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: