PyTorch टेंसर एक n-डायमेंशनल ऐरे (मैट्रिक्स) होता है जिसमें एक ही डेटा टाइप के एलिमेंट्स होते हैं। टेंसर नम्पी ऐरे जैसा होता है। नम्पी ऐरे और PyTorch टेंसर्स के बीच अंतर यह है कि टेंसर संख्यात्मक गणनाओं को तेज करने के लिए GPU का उपयोग करते हैं। त्वरित गणनाओं के लिए, इमेज को टेंसर्स में बदला जाता है।
इमेज को PyTorch टेंसर में बदलने के लिए, हम निम्नलिखित चरण अपना सकते हैं:
चरण
आवश्यक लाइब्रेरी इम्पोर्ट करें। आवश्यक लाइब्रेरी हैं torch, torchvision, Pillow.
इमेज पढ़ें। इमेज या तो PIL इमेज होनी चाहिए या numpy.ndarray (HxWxC) रेंज [0, 255] में। यहां H, W, और C इमेज की ऊंचाई, चौड़ाई और चैनलों की संख्या हैं।
इमेज को टेंसर में बदलने के लिए ट्रांसफॉर्म परिभाषित करें। हम ट्रांसफॉर्म को परिभाषित करने के लिए transforms.ToTensor() का उपयोग करते हैं।
उपरोक्त परिभाषित ट्रांसफॉर्म का उपयोग करके इमेज को टेंसर में बदलें।
इनपुट इमेज

उदाहरण 1
# Import the required libraries import torch from PIL import Image import torchvision.transforms as transforms # Read the image image = Image.open('Penguins.jpg') # Define a transform to convert the image to tensor transform = transforms.ToTensor() # Convert the image to PyTorch tensor tensor = transform(image) # print the converted image tensor print(tensor)आउटपुट
tensor([[[0.4510, 0.4549, 0.4667, ..., 0.3333, 0.3333, 0.3333], [0.4549, 0.4510, 0.4627, ..., 0.3373, 0.3373, 0.3373], [0.4667, 0.4588, 0.4667, ..., 0.3451, 0.3451, 0.3412], ..., [0.6706, 0.5020, 0.5490, ..., 0.4627, 0.4275, 0.3333], [0.4196, 0.5922, 0.6784, ..., 0.4627, 0.4549, 0.3569], [0.3569, 0.3529, 0.4784, ..., 0.3922, 0.4314, 0.3490]], [[0.6824, 0.6863, 0.7020, ..., 0.6392, 0.6392, 0.6392], [0.6863, 0.6824, 0.6980, ..., 0.6314, 0.6314, 0.6314], [0.6980, 0.6902, 0.6980, ..., 0.6392, 0.6392, 0.6353], ..., [0.7255, 0.5412, 0.5765, ..., 0.5255, 0.5020, 0.4157], [0.4706, 0.6314, 0.7098, ..., 0.5255, 0.5294, 0.4392], [0.4196, 0.3961, 0.5020, ..., 0.4510, 0.5059, 0.4314]], [[0.8157, 0.8196, 0.8353, ..., 0.7922, 0.7922, 0.7922], [0.8196, 0.8157, 0.8314, ..., 0.7882, 0.7882, 0.7882], [0.8314, 0.8235, 0.8314, ..., 0.7961, 0.7961, 0.7922], ..., [0.6235, 0.5059, 0.6157, ..., 0.4863, 0.4941, 0.4196], [0.3922, 0.6000, 0.7176, ..., 0.4863, 0.5216, 0.4431], [0.3686, 0.3647, 0.4863, ..., 0.4235, 0.4980, 0.4353]]])
उपरोक्त पायथन प्रोग्राम में, हमने PIL इमेज को टेंसर में बदला है।
उदाहरण 2
हम OpenCV का उपयोग करके भी इमेज पढ़ सकते हैं। OpenCV का उपयोग करके पढ़ी गई इमेज numpy.ndarray टाइप की होती हैं। हम transforms.ToTensor() का उपयोग करके numpy.ndarray को टेंसर में बदल सकते हैं। निम्नलिखित उदाहरण देखें।
# Import the required libraries import torch import cv2 import torchvision.transforms as transforms # Read the image image = cv2.imread('Penguins.jpg') image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) # Define a transform to convert the image to tensor transform = transforms.ToTensor() # Convert the image to PyTorch tensor tensor = transform(image) # Print the converted image tensor print(tensor)आउटपुट
tensor([[[0.4510, 0.4549, 0.4667, ..., 0.3333, 0.3333, 0.3333], [0.4549, 0.4510, 0.4627, ..., 0.3373, 0.3373, 0.3373], [0.4667, 0.4588, 0.4667, ..., 0.3451, 0.3451, 0.3412], ..., [0.6706, 0.5020, 0.5490, ..., 0.4627, 0.4275, 0.3333], [0.4196, 0.5922, 0.6784, ..., 0.4627, 0.4549, 0.3569], [0.3569, 0.3529, 0.4784, ..., 0.3922, 0.4314, 0.3490]], [[0.6824, 0.6863, 0.7020, ..., 0.6392, 0.6392, 0.6392], [0.6863, 0.6824, 0.6980, ..., 0.6314, 0.6314, 0.6314], [0.6980, 0.6902, 0.6980, ..., 0.6392, 0.6392, 0.6353], ..., [0.7255, 0.5412, 0.5765, ..., 0.5255, 0.5020, 0.4157], [0.4706, 0.6314, 0.7098, ..., 0.5255, 0.5294, 0.4392], [0.4196, 0.3961, 0.5020, ..., 0.4510, 0.5059, 0.4314]], [[0.8157, 0.8196, 0.8353, ..., 0.7922, 0.7922, 0.7922], [0.8196, 0.8157, 0.8314, ..., 0.7882, 0.7882, 0.7882], [0.8314, 0.8235, 0.8314, ..., 0.7961, 0.7961, 0.7922], ..., [0.6235, 0.5059, 0.6157, ..., 0.4863, 0.4941, 0.4196], [0.3922, 0.6000, 0.7176, ..., 0.4863, 0.5216, 0.4431], [0.3686, 0.3647, 0.4863, ..., 0.4235, 0.4980, 0.4353]]])