如何在 PyTorch 中調整影像的飽和度?


影像的飽和度指的是顏色的強度。顏色的飽和度越高,顏色就越鮮豔;顏色的飽和度越低,顏色就越接近灰色。

要調整影像的飽和度,我們使用 **adjust_saturation()** 函式。它是 **torchvision.transforms** 模組提供的功能轉換之一。**adjust_saturation()** 轉換同時接受 PIL 影像和張量影像。張量影像是形狀為 **[C, H, W]** 的 PyTorch 張量,其中 **C** 是通道數,**H** 是影像高度,**W** 是影像寬度。

此轉換也接受一批張量影像。如果影像既不是 PIL 影像也不是張量影像,則我們首先將其轉換為張量影像,然後應用 **adjust_saturation()**。飽和度值應為非負數。

語法

torchvision.transforms.functional.adjust_saturation(img, saturation_factor)

引數

  • **img** - 需要調整飽和度的影像。它是 PIL 影像或 PyTorch 張量。可以是單個影像或一批影像。

  • **hue_factor** - 一個非負數。0 將生成黑白影像,而 1 將生成原始影像。

輸出

它返回飽和度已調整的影像。

步驟

要調整影像的飽和度,可以按照以下步驟操作:

  • 匯入所需的庫。在以下所有示例中,所需的 Python 庫為 **torch、Pillow** 和 **torchvision**。確保你已安裝它們。

import torch
import torchvision
import torchvision.transforms.functional as F
from PIL import Image
  • 讀取輸入影像。輸入影像是 PIL 影像或 PyTorch 張量。

img = Image.open('panda.jpg')
  • 使用所需的飽和度因子調整影像的飽和度。

img = F.adjust_saturation(img, 5)
  • 視覺化飽和度已調整的影像。

img.show()

輸入影像

我們將在以下示例中使用此影像作為輸入檔案。

示例 1

在這個程式中,我們使用 **saturation_factor=5** 調整輸入影像的飽和度。

import torch
import torchvision
import torchvision.transforms as T
import torchvision.transforms.functional as F
from torchvision.io import read_image

# read input image
img = read_image('panda.jpg')

# adjust saturation
img1 = F.adjust_saturation(img, 5)

# convert img1 to PIL image
img1 = T.ToPILImage()(img1)

# display the PIL image
img1.show()

輸出

示例 2

在這個程式中,我們使用不同的 **saturation_factor** 調整輸入影像的飽和度。

import torch
import torchvision
import torchvision.transforms as T
import torchvision.transforms.functional as F
from torchvision.io import read_image
from torchvision.utils import make_grid

# read input image
img = read_image('panda.jpg')

# adjust saturation
img1 = F.adjust_saturation(img, 0)
img2 = F.adjust_saturation(img, 0.5)
img3 = F.adjust_saturation(img, 1)
img4 = F.adjust_saturation(img, 4)

# make image grid
grid_img = make_grid([img1, img2, img3, img4], nrow=2)

# convert the tensor image to PIL image
grid_pil = T.ToPILImage()(grid_img)

# display the PIL image grid
grid_pil.show()

輸出

更新於:2022年1月20日

1K+ 次瀏覽

啟動你的 職業生涯

透過完成課程獲得認證

開始學習
廣告