Uso simple de Pytorch transforms.Resize()

En pocas palabras, es para ajustar el tamaño del objeto PILImage . Tenga en cuenta que no puede ser una imagen leída con io.imread o cv2.imread. Estos dos métodos obtienen ndarray.

Escale el lado corto de la imagen a x, manteniendo la relación de aspecto:

transforms.Resize(x)

En general, la longitud y el ancho de la entrada del mapa de características a la red profunda son iguales, por lo que no se puede adoptar el método de escala proporcional, y la longitud y el ancho deben especificarse al mismo tiempo:

transforms.Resize([h, w])

Por ejemplo transforms.Resize([224, 224]), la imagen de entrada se puede convertir en un mapa de características de entrada de 224 × 224.

Aunque esto cambiará la relación de aspecto de la imagen, no se recorta por sí misma y aún se puede devolver la forma original mediante el método de cambio de tamaño:

from PIL import Image
from torchvision import transforms

img = Image.open('1.jpg')
w, h = img.size
resize = transforms.Resize([224,244])
img = resize(img)
img.save('2.jpg')
resize2 = transforms.Resize([h, w])
img = resize2(img)
img.save('3.jpg')

Una cosa a tener en cuenta es que la propiedad de tamaño del objeto PILImage devuelve w, h, y el orden de cambio de tamaño de los parámetros es h, w.

Supongo que te gusta

Origin blog.csdn.net/qq_40714949/article/details/115393592
Recomendado
Clasificación