亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python怎么實現圖像等比縮放

發布時間:2021-09-07 10:49:52 來源:億速云 閱讀:562 作者:小新 欄目:編程語言

小編給大家分享一下python怎么實現圖像等比縮放,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

說明

1、初始化目標尺寸的幕布,所有值都是一樣的。

2、把原圖中較長的邊放縮到目標尺寸大小,計算出放縮比例。

3、使短邊也能按此比例放縮,得到的圖片就不會變形。

4、縮放后的圖像必須小于等于目標尺寸。

因此必須能夠粘貼在幕布的中心,這樣幕布中沒有被覆蓋的地方就會自動變成留白,省去了填充步驟。

5、得到想要的圖片。

實例

import numpy as np
from PIL import Image
 
 
 
def resize(img, size):
    # 先創建一個目標大小的幕布,然后將放縮好的圖片貼到中央,這樣就省去了兩邊填充留白的麻煩。
    canvas = Image.new("RGB", size=size, color="#7777")  
    
    target_width, target_height = size
    width, height = img.size
    offset_x = 0
    offset_y = 0
    if height > width:              # 高 是 長邊
        height_ = target_height     # 直接將高調整為目標尺寸
        scale = height_ / height    # 計算高具體調整了多少,得出一個放縮比例
        width_ = int(width * scale) # 寬以相同的比例放縮
        offset_x = (target_width - width_) // 2     # 計算x方向單側留白的距離
    else:   # 同上
        width_ = target_width
        scale = width_ / width
        height_ = int(height * scale)
        offset_y = (target_height - height_) // 2
 
    img = img.resize((width_, height_), Image.BILINEAR) # 將高和寬放縮
    canvas.paste(img, box=(offset_x, offset_y))         # 將放縮后的圖片粘貼到幕布上
    # box參數用來確定要粘貼的圖片左上角的位置。offset_x是x軸單側留白,offset_y是y軸單側留白,這樣就能保證能將圖片填充在幕布的中央
    
    return canvas
 
 
img= Image.open('1.jpg')
 
target__size=(500,300)  # 目標尺寸:寬為500,高為300
res = resize(img,target__size)
 
res.save('new.jpg')

以上是“python怎么實現圖像等比縮放”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

晋州市| 缙云县| 团风县| 潼关县| 兰考县| 清丰县| 灵武市| 托克托县| 宁城县| 杭锦后旗| 巍山| 白玉县| 三明市| 长宁区| 汉阴县| 湄潭县| 佳木斯市| 库尔勒市| 内乡县| 张家川| 鄯善县| 义乌市| 韶关市| 中方县| 高台县| 南投市| 乌鲁木齐市| 铁力市| 伊金霍洛旗| 海南省| 错那县| 保山市| 南溪县| 景德镇市| 湖南省| 乳山市| 牙克石市| 手机| 开化县| 阿拉善盟| 礼泉县|