如何在 PyTorch 中调整图像的锐度?


要调整图像的锐度,我们应用 **adjust_sharpness()**。它是 **torchvision.transforms** 模块提供的功能转换之一。**adjust_sharpness()** 转换接受 PIL 和张量图像。

张量图像是一个形状为 **[C, H, W]** 的 PyTorch 张量,其中 **C** 是通道数,**H** 是图像高度,**W** 是图像宽度。此转换还接受一批张量图像。如果图像既不是 PIL 图像也不是张量图像,则我们首先将其转换为张量图像,然后应用 **adjust_sharpness()**。锐度应为任何非负数。

语法

torchvision.transforms.functional.adjust_sharpness(img, sharpness_factor)

参数

  • **img** – 要调整锐度的图像。它是 PIL 图像或 torch 张量。它可以是单个图像或一批图像。

  • **sharpness_factor** – 一个非负数。0 将给出模糊的图像,而 1 将给出原始图像。

输出

  • 它返回锐度调整后的图像。

步骤

要调整图像的锐度,可以按照以下步骤操作:

  • 导入所需的库。在以下所有示例中,所需的 Python 库是 **torch**、**Pillow** 和 **torchvision**。确保您已安装它们。

import torch
import torchvision
import torchvision.transforms.functional as F
from PIL import Image
  • 读取输入图像。输入图像为 PIL 图像或 torch 张量。

img = Image.open('penguins.jpg')
  • 使用所需的锐度因子调整图像的锐度。

img = F.adjust_sharpness(img, 5.0)
  • 可视化锐度调整后的图像。

img.show()

输入图像

在第二个示例中,我们将使用以下图像作为输入文件。

示例 1

以下 Python 程序使用随机选择的 Gaussian 模糊使输入图像模糊。

# Import the required libraries
import torch
import torchvision
from torchvision.io import read_image
import torchvision.transforms.functional as F
import torchvision.transforms as T

# read input image as torch tensor
img = read_image('penguins.jpg')

# adjust sharpness
img = F.adjust_sharpness(img, 5.0)

# Convert the image tensor to PIL image
img_pil = T.ToPILImage()(img)

# display the sharpness adjusted image
img_pil.show()

输出

以上输出是原始输入图像的模糊图像。

示例 2

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

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

# adjust sharpness
img1 = F.adjust_sharpness(img, 0)
img2 = F.adjust_sharpness(img, 1.0)
img3 = F.adjust_sharpness(img, 4.5)
img4 = F.adjust_sharpness(img, 10.0)

# make a grid of 4 images
grid = make_grid([img1, img2, img3, img4], nrow=2)

# Convert it to PIL Image
grid_img = T.ToPILImage()(grid)

# display the grid images
grid_img.show()
grid_img

输出

更新于: 2022年1月25日

1K+ 浏览量

启动你的 职业生涯

通过完成课程获得认证

开始
广告

© . All rights reserved.