В PyTorch функция Resize() используется для изменения размера входного изображения до заданного размера. Модуль torchvision.transforms обеспечивает различные преобразования изображений. Подробно мы обсудим изменение размера изображений с помощью PyTorch в Python.

Содержание

Изменение размера изображения

Функция Resize() используется для изменения размера входного изображения до заданного размера. Это преобразование дает различные преобразования с помощью модуля torchvision.transforms.

Синтаксис:

torchvision.transforms.Resize(size)

Параметр:

size: это параметр, размер которого нужно изменить. размер — это ряд типа(h,w), где h — высота, а w — вес выходных изображений в пакете. Если размер изображения имеет формат int, то после изменения размера изображение будет квадратным.

Пример

Модуль torchvision.transforms обеспечивает различные преобразования изображений.

Существует функция Resize(), которая используется для изменения размера входного изображения до заданного размера. Функция Resize() принимает как PIL, так и тензорные изображения.

Код:

В следующем коде мы импортируем все необходимые библиотеки, такие как импорт факела, импорт torchvision.transforms как T, импорт изображения из PIL и импорт matplotlib.pyplot как график.

  • imge = Image.open(‘Butterfly.png’): Здесь мы читаем входное изображение.
  • size = imge.size используется для вычисления размера изображения.
  • Transforms = T.Resize(size =(200,400)) используется для определения преобразования или изменения размера изображения с заданным размером.
  • imge = Transforms(imge) используется для применения преобразования к входному изображению.
  • print(«Размер после изменения размера:», imge.size) используется для печати размера после изменения размера с помощью функции print().
# Importing Libraries
import torch
import torchvision.transforms as T
from PIL import Image
import matplotlib.pyplot as plot

# Read the input image
imge = Image.open('NewYork.png')

# Compute the size(width, height) of image
size = imge.size
print("The size of the original image:", size)

# Define transform or resize the image with given size
transforms = T.Resize(size =(200,400))

# Apply the transformation on the input image
imge = transforms(imge)
print("The size after resize:", imge.size)
plot.imshow(imge)
plot.show()

Выход:

После запуска приведенного выше кода мы получаем следующий вывод, в котором видим, что размер изображения после изменения размера печатается на экране.

Пример изменения размера изображения PyTorch

Как PyTorch изменяет размер тензора изображения

Тензор изображения определяется как тензор факела формы(C,H,W). Здесь C представляет количество каналов, H представляет высоту изображения, а W представляет ширину изображения.

Функция Resize() используется для изменения размера тензора входного изображения до заданного размера.

Код:

В следующем коде мы импортируем все необходимые библиотеки, такие как импорт факела, импорт torchvision.transforms как T, импорт изображения из PIL, импорт matplotlib.pyplot как график.

  • image = Image.open(‘Flower.jpg’) Здесь мы читаем изображение PIL.
  • size = image.size используется для вычисления размера изображения.
  • print(«Размер исходного изображения:», size) используется для печати размера исходного изображения.
  • Transforms = trans.Resize(size =(300,500)) используется для определения преобразования или изменения размера тензора изображения.
  • image = Transforms(image) используется для применения преобразования к входному изображению.
  • print(«Размер после изменения размера:», image.size) используется для печати размера после изменения размера.
# import the required libraries
import torch
import torchvision.transforms as trans
from PIL import Image
import matplotlib.pyplot as plot

# Read the input image
image = Image.open('Chicago.jpg')

# compute the size of the image
size = image.size
print("The size of the original image:", size)

# Define transform or resize the image tensor
transforms = trans.Resize(size =(300,500))

# Apply the transformation on the input image
image = transforms(image)
print("The size after resize:", image.size)
plot.imshow(image)
plot.show()

Выход:

После запуска приведенного выше кода мы получаем следующий вывод, в котором видим, что размер тензорного изображения изменяется и печатается на экране.

PyTorch изменяет размер тензора изображения

Как PyTorch изменяет размер изображения

Преобразования изменения размера изображения PyTorch используются для изменения размера входного изображения до заданного размера. Если изображение представляет собой тензор факела, то оно имеет форму H, W.

Синтаксис:

torchvision.transforms.Resize(size, interpollation=InterpolationMode.BILINEAR, max_size=None, antialias=None)

Параметры:

  • size: размер определяется как желаемый размер вывода. Размер представляет собой ряд типа(h,w), где h — высота, а w — вес выходных изображений в пакете. Если размер изображения имеет формат int, то после изменения размера изображение будет квадратным.
  • interpollation: желаемая интерполяция определяется как перечисление, определенное torchvision.transforms.InterploationMode. Если входные данные являются тензорными, поддерживаются только InterpolationMode.Nearest.
  • max_size: Максимальный размер, разрешенный для большего края изображения с измененным размером. Если больший край изображения превышает max_size после изменения размера в соответствии с размером.
  • antialias: если изображение является изображением PIL, флаг игнорируется и всегда используется сглаживание. Если изображение тензорное, флаг по умолчанию имеет значение False и может быть установлен в значение True для InterpolationMode.BILINEAR.

PyTorch изменяет размер 3D-изображения

Изменение размера 3D-изображения PyTorch используется для изменения размера 3D-изображения до заданного размера. Функция Resize() принимает как PIL, так и тензорные изображения.

Код:

В следующем коде мы импортируем все необходимые библиотеки, такие как импорт факела, импорт matplotlib.pyplot как графика, импорт numpy как np, импорт преобразований из torchvision, импорт изображения из PIL.

  • image = Image.open(‘teddy.jpg’) используется для чтения изображения PIL.
  • size = image.size используется для вычисления размера изображения.
  • Transforms = Transforms.Resize(size =(350,550)) используется для определения преобразования или изменения размера трехмерного изображения.
  • image = Transforms(image) используется для преобразования входного изображения.
# Importing Libraries
import torch  
import matplotlib.pyplot as plt  
import numpy as np  
from torchvision import transforms  
from PIL import Image 

# Read a PIL Image
image = Image.open('Houston.jpg')
image
# Compute the size(width, height) of image
size = image.size
print(size)


# Define transform or resize the 3D image 
transforms = transforms.Resize(size =(350,550))

# Use of the transformation on the input image
image = transforms(image)
print("The size after resize:", image.size)
plot.imshow(image)
plot.show()

Выход:

После запуска приведенного выше кода мы получаем следующий вывод, в котором мы видим, что значения изменения размера 3D-изображения PyTorch печатаются на экране.

PyTorch изменяет размер 3D-изображения

Как изменяет размер изображения на графическом процессоре

Прежде чем двигаться дальше, мы должны иметь некоторые знания о графическом процессоре.

GPU означает графический процессор и представляет собой обученную электронную схему, предназначенную для обработки и изменения памяти для улучшения качества изображений.

Код:

В следующем коде мы импортируем все необходимые библиотеки, такие как импорт факела, импорт matplotlib.pyplot как графика, импорт numpy как np, импорт преобразований из torchvision, импорт изображения из PIL.

  • image = Image.open(‘Rose.jpg’) используется для чтения изображения PIL.
  • устройство = torch.device(«cuda», если torch.cuda.is_available(), иначе «ЦП») используется для определения пути и установки графического процессора.
  • size = image.size используется для вычисления размера изображения.
  • Transforms = Transforms.Resize(size =(450,650)) используется для определения преобразования или изменения размера изображения на графическом процессоре.
  • image = Transforms(image) — использование преобразования входного изображения.
  • print(«Размер после изменения размера:», image.size) используется для печати размера после изменения размера.
# Importing Libraries
import torch  
import matplotlib.pyplot as plot  
import numpy as np  
from torchvision import transforms  
from PIL import Image 

# Read a PIL Image
image = Image.open('San Diego.jpg')
image

# Define path and set GPU
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")

# Compute the size(width, height) of image
size = image.size
print(size)


# Define transform or resize the an image on GPU
transforms = transforms.Resize(size =(450,650))

# Use of the transformation on the input image
image = transforms(image)
print("The size after resize:", image.size)
plot.imshow(image)
plot.show()

Выход:

В приведенном ниже выводе вы можете видеть, что PyTorch изменяет размер изображения на графическом процессоре, напечатанного на экране.

PyTorch изменяет размер изображения на графическом процессоре

PyTorch изменяет размер пакета изображений

Пакет определяется как процесс расположения вещей в наборах или группах. Здесь мы изменяем размер изображения в пакетном режиме, используя функцию Resize().

Код:

В следующем коде сначала мы импортируем все необходимые библиотеки, такие как import torch, import torchvision.transforms.functional, import Import from PIL.

  • image = Image.open(“Philadelphia.jpg”): Здесь мы читаем изображение.
  • print(«Размер фактического изображения:»,image.size, «\n») используется для печати размера исходного изображения с помощью функции print().
  • Cropimage = fn.center_crop(image, output_size=[450]) используется для обрезки изображения с помощью fn.center_crop().
  • resizeimage = fn.resize(image, size=[200]) используется для изменения размера изображения.
  • print(«Размер изображения с измененным размером:»,resizeimage.size»,\n») используется для печати размера изображения с измененным размером.
# Import Library
import torch
import torchvision.transforms.functional as fn
from PIL import Image

# Read the image
image = Image.open("Philadelphia.jpg")
print("Size of actual image:",image.size, "\n")
image

# Crop the image
cropimage = fn.center_crop(image, output_size=[450])
print("Size of cropped image:",cropimage.size,"\n")
cropimage

# Resize the image
resizeimage = fn.resize(image, size=[200])
print("Size of resized image:",resizeimage.size,"\n")
resizeimage

Выход:

После запуска приведенного выше кода мы получаем следующий вывод, в котором мы видим, что размер фактического изображения, обрезанное изображение и изображение с измененным размером печатаются на экране.

PyTorch изменяет размер пакета изображений

Вот как мы понимаем изменение размера изображения PyTorch в виде пакета с помощью функции Resize().

Как изменяет размер входного изображения

В PyTorch есть функция Resize(), которая используется для изменения размера входного изображения до заданного размера.

Это преобразование дает различные преобразования с помощью модуля torchvision.transforms.

Код:

В следующем коде мы импортируем все необходимые библиотеки, такие как импорт факела, запросы на импорт, импорт torchvision.transforms, импорт изображения из PIL.

  • image = Image.open(“Philadelphia.jpg”) используется для загрузки изображения.
  • print(«Размер фактического изображения:»,image.size, «\n») используется для печати размера фактического изображения.
  • preprocess = T.Compose([ T.Resize(246), T.CenterCrop(234) ]) используется для изменения размера изображения.
  • print(“Размер изображения с измененным размером”, y.size”,\n”) используется для печати размера изображения с измененным размером с помощью функции print().
# Importing Libraries
import torch
import requests
import torchvision.transforms as T
from PIL import Image

# Read the image
image = Image.open("Philadelphia.jpg")
print("Size of actual image:",image.size, "\n")
image

# Resize the image
preprocess = T.Compose([
   T.Resize(246),
   T.CenterCrop(234)
])

y = preprocess(image)
print("Size of resized image" ,y.size,"\n")
y

Выход:

После запуска приведенного выше кода мы получаем следующий вывод, в котором видим, что входное изображение изменения размера PyTorch печатается на экране.

PyTorch изменяет размер входного изображения

Добавить комментарий