در PyTorch، میتوانید با استفاده از تابع ()torch.from_numpy یک تصویر را به تانسور تبدیل کنید و دادههای تصویر را بهعنوان یک آرایه numpy ارسال کنید. داده های تصویر باید در قالب (ارتفاع، عرض، کانال) باشد.
در اینجا مثالی از نحوه تبدیل یک تصویر به تانسور آورده شده است:
import cv2
import torch
# Read an image using OpenCV
image = cv2.imread("path/to/image.jpg")
# Convert the image to a tensor
tensor = torch.from_numpy(image)
برای تبدیل یک تانسور به یک تصویر برای نمایش، میتوانید از تابع ()torch.numpy برای تبدیل تانسور به یک آرایه numpy استفاده کنید و سپس از OpenCV یا هر کتابخانه دیگری برای نمایش تصویر استفاده کنید.
در اینجا مثالی از نحوه تبدیل تانسور به تصویر آورده شده است:
import cv2
import torch
# Create a tensor
tensor = torch.rand(3, 256, 256)
# Convert the tensor to a numpy array
image = tensor.numpy()
# Display the image using OpenCV
cv2.imshow("Image", image)
cv2.waitKey(0)
cv2.destroyAllWindows()
توجه داشته باشید که در مثال بالا، تانسور باید به شکل (کانال، ارتفاع، عرض) باشد و قبل از تبدیل به تصویر، ابتدا نرمال شود.
اگر میخواهید تصویر را ذخیره کنید، میتوانید از تابع ()cv2.imwrite استفاده کنید و مسیری را که میخواهید تصویر را ذخیره کنید، مشخص کنید.
cv2.imwrite("path/to/save/image.jpg",image)
ذکر این نکته ضروری است که مثالهای بالا تنها یکی از راههای تبدیل تصویر به تانسور و بالعکس هستند، میتوانید از کتابخانههای دیگری مانند PIL یا skimage نیز استفاده کنید.