欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python圖像處理之給圖片添加圓角效果的完整代碼

 更新時間:2025年03月06日 09:57:35   作者:蠟筆小新星  
在日常的圖像處理任務(wù)中,我們經(jīng)常需要對圖片進行一些美化和調(diào)整,今天,我將向大家介紹一個使用Python編程語言,結(jié)合PIL(Python Imaging Library)庫,給圖片添加圓角效果的方法,需要的朋友可以參考下

代碼解析

首先,我們需要導(dǎo)入PIL庫中的ImageImageDraw模塊。這兩個模塊提供了豐富的圖像處理功能。

from PIL import Image, ImageDraw

接下來,我們定義一個名為round_corners的函數(shù),該函數(shù)接受三個參數(shù):image_path(輸入圖片的路徑)、output_path(輸出圖片的路徑)和radius(圓角的半徑)。

def round_corners(image_path, output_path, radius):

在函數(shù)內(nèi)部,我們首先使用Image.open方法打開圖片,并將其轉(zhuǎn)換為"RGBA"模式,以便進行透明處理。

    image = Image.open(image_path).convert("RGBA")

然后,我們創(chuàng)建一個與原圖相同大小的空白圖像作為遮罩,這個遮罩將用于實現(xiàn)圓角效果。

    mask = Image.new("RGBA", image.size, (0, 0, 0, 0))

接下來,我們使用ImageDraw.Draw創(chuàng)建一個畫筆對象,并在遮罩上繪制一個圓角矩形。圓角矩形的填充顏色設(shè)置為白色(RGB值為(255, 255, 255))。

    draw = ImageDraw.Draw(mask)
    draw.rounded_rectangle((0, 0, image.width, image.height), radius, fill=(255, 255, 255))

現(xiàn)在,我們創(chuàng)建一個新的圖像對象result,其大小與原圖相同,并設(shè)置為"RGBA"模式。

    result = Image.new("RGBA", image.size)

使用paste方法,我們將原圖粘貼到新圖像上,并使用之前創(chuàng)建的遮罩來實現(xiàn)圓角效果。

    result.paste(image, mask=mask)

最后,我們使用save方法將處理后的圖片保存到指定的輸出路徑。

    result.save(output_path)

使用示例

下面是一個使用round_corners函數(shù)的示例。我們假設(shè)有一張名為20250306.png的圖片,并希望將其圓角半徑設(shè)置為300像素,處理后的圖片保存為20250306_output.png。

source_img = r'D:\test_pic\20250306.png'
output_img = r'D:\test_pic\20250306_output.png'
round_corners(source_img, output_img, 300)

完整示例

from PIL import Image, ImageDraw

def round_corners(image_path, output_path, radius):
    # 打開圖片,并轉(zhuǎn)換為RGBA模式,以支持透明背景
    image = Image.open(image_path).convert("RGBA")
    
    # 創(chuàng)建一個與原圖相同大小的空白圖像作為蒙版
    mask = Image.new("RGBA", image.size, (0, 0, 0, 0))
    
    # 創(chuàng)建一個畫筆對象,用于在蒙版上繪制圖形
    draw = ImageDraw.Draw(mask)
    
    # 在蒙版上繪制圓角矩形,圓角半徑為radius,填充顏色為白色(RGBA模式下為(255, 255, 255, 255))
    draw.rounded_rectangle((0, 0, image.width, image.height), radius, fill=(255, 255, 255, 255))
    
    # 創(chuàng)建一個新的圖像對象,大小與原圖相同,模式為RGBA
    result = Image.new("RGBA", image.size)
    
    # 將原圖粘貼到新圖像上,使用蒙版進行遮罩,只保留圓角矩形內(nèi)的部分
    result.paste(image, mask=mask)
    
    # 保存處理后的圖像到指定路徑
    result.save(output_path)

# 示例用法
source_img = r'D:\test_pic\20250306.png'  # 源圖片路徑
output_img = r'D:\test_pic\20250306_output.png'         # 輸出圖片路徑
round_corners(source_img, output_img, 300)            # 調(diào)用函數(shù),設(shè)置圓角半徑為300

實踐操作

你可以按照上面的示例代碼,將源圖片路徑和輸出圖片路徑替換為你自己的文件路徑,并調(diào)整圓角半徑的值來達到你想要的效果。運行代碼后,你將在指定路徑下找到處理后的圓角圖片。

結(jié)論

通過本文的教程,我們學(xué)會了如何使用Python編程語言結(jié)合PIL庫給圖片添加圓角效果。這個方法不僅簡單易行,而且效果顯著。在實際應(yīng)用中,我們可以根據(jù)需要調(diào)整圓角半徑的大小,以達到不同的視覺效果。無論是美化圖片還是進行圖像處理項目,這個方法都是一個非常實用的工具。希望這篇文章對你有所幫助!

以上就是Python圖像處理之給圖片添加圓角效果的完整代碼的詳細內(nèi)容,更多關(guān)于Python圖片添加圓角的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論