برنامه نویسی

TopIlimage در Pytorch (5) – Community Dev

TopIlimage () می تواند یک تصویر را تبدیل کند ([..., C, H, W]) ، Tensor یا ndarray به یک تصویر PIL (کتابخانه بالش) ([H, W, C]) و مقادیر آن را به مقیاس نمی رساند [0.0, 1.0] همانطور که در زیر نشان داده شده است. *در مورد mode استدلال (4):

from torchvision.datasets import OxfordIIITPet
from torchvision.transforms.v2 import ToPILImage, ToImage, PILToTensor
import numpy as np

def show_images(im, m=None):
    if m == None:
        m = [None for _ in range(len(im))]
    if len(im) > len(m):
        for _ in range(len(im)-len(m)):
            m.append(None)
    plt.figure(figsize=[14, 6])
    for i in range(len(im)):
        image = im[i]
        if torch.is_tensor(image):
            dpart = str(image.dtype).split(".")[1]
        elif isinstance(image, np.ndarray):
            dpart = str(image.dtype)
        title = "m" + str(m[i]) + "_PILImage from " \
                + type(image).__name__+ "(" + dpart + ")"
        plt.subplot(1, 3, (i+1))
        tp = ToPILImage(mode=m[i])
        plt.title(label=title, y=1, fontsize=14)
        plt.imshow(X=tp(image))
        plt.xticks(ticks=[])
        plt.yticks(ticks=[])
    plt.tight_layout()
    plt.show()

show_images(im=[np.array([[[0]]]), np.array([[[0, 1]]])], # int32
            m=["I", "LA"])
show_images(im=[np.array([[[0, 1, 2]]]), np.array([[[0, 1, 2]]]),
                np.array([[[0, 1, 2]]])], m=["RGB", "YCbCr", "HSV"])
show_images(im=[np.array([[[0, 1, 2, 3]]]), np.array([[[0, 1, 2, 3]]]),
                np.array([[[0, 1, 2, 3]]])], m=["RGBA", "CMYK", "RGBX"])
print()
show_images(im=[np.array([[[0, 1]]], dtype=np.int64)], m=["LA"])
show_images(im=[np.array([[[0, 1, 2]]], dtype=np.int64),
                np.array([[[0, 1, 2]]], dtype=np.int64),
                np.array([[[0, 1, 2]]], dtype=np.int64)],
            m=["RGB", "YCbCr", "HSV"])
show_images(im=[np.array([[[0, 1, 2, 3]]], dtype=np.int64),
                np.array([[[0, 1, 2, 3]]], dtype=np.int64),
                np.array([[[0, 1, 2, 3]]], dtype=np.int64)],
            m=["RGBA", "CMYK", "RGBX"])
print()
show_images(im=[np.array([[[0.]]]), np.array([[[0., 1.]]])], # float64
            m=["L", "LA"])
show_images(im=[np.array([[[0., 1., 2.]]]), np.array([[[0., 1., 2.]]]),
                np.array([[[0., 1., 2.]]])], m=["RGB", "YCbCr", "HSV"])
show_images(im=[np.array([[[0., 1., 2., 3.]]]),
                np.array([[[0., 1., 2., 3.]]]),
                np.array([[[0., 1., 2., 3.]]])],
            m=["RGBA", "CMYK", "RGBX"])
print()
show_images(im=[np.array([[[0.]]], dtype=np.float32),
                np.array([[[0., 1.]]], dtype=np.float32)], m=["L", "LA"])
show_images(im=[np.array([[[0., 1., 2.]]], dtype=np.float32),
                np.array([[[0., 1., 2.]]], dtype=np.float32),
                np.array([[[0., 1., 2.]]], dtype=np.float32)],
            m=["RGB", "YCbCr", "HSV"])
show_images(im=[np.array([[[0., 1., 2., 3.]]], dtype=np.float32),
                np.array([[[0., 1., 2., 3.]]], dtype=np.float32),
                np.array([[[0., 1., 2., 3.]]], dtype=np.float32)],
            m=["RGBA", "CMYK", "RGBX"])
print()
show_images(im=[np.array([[[0.+0.j, 1.+0.j]]])], m=["LA"]) # complex128
show_images(im=[np.array([[[0.+0.j, 1.+0.j, 2.+0.j]]]),
                np.array([[[0.+0.j, 1.+0.j, 2.+0.j]]]),
                np.array([[[0.+0.j, 1.+0.j, 2.+0.j]]])],
            m=["RGB", "YCbCr", "HSV"])
show_images(im=[np.array([[[0.+0.j, 1.+0.j, 2.+0.j, 3.+0.j]]]),
                np.array([[[0.+0.j, 1.+0.j, 2.+0.j, 3.+0.j]]]),
                np.array([[[0.+0.j, 1.+0.j, 2.+0.j, 3.+0.j]]])],
            m=["RGBA", "CMYK", "RGBX"])
print()
show_images(im=[np.array([[[0.+0.j, 1.+0.j]]], dtype=np.complex64)],
            m=["LA"])
show_images(im=[np.array([[[0.+0.j, 1.+0.j, 2.+0.j]]], dtype=np.complex64),
                np.array([[[0.+0.j, 1.+0.j, 2.+0.j]]], dtype=np.complex64),
                np.array([[[0.+0.j, 1.+0.j, 2.+0.j]]], dtype=np.complex64)],
            m=["RGB", "YCbCr", "HSV"])
show_images(im=[np.array([[[0.+0.j, 1.+0.j, 2.+0.j, 3.+0.j]]], 
                         dtype=np.complex64),
                np.array([[[0.+0.j, 1.+0.j, 2.+0.j, 3.+0.j]]], 
                         dtype=np.complex64),
                np.array([[[0.+0.j, 1.+0.j, 2.+0.j, 3.+0.j]]], 
                         dtype=np.complex64)],
            m=["RGBA", "CMYK", "RGBX"])
print()
show_images(im=[np.array([[[True, False]]])], m=["LA"]) # bool
show_images(im=[np.array([[[True, False, True]]]),
                np.array([[[True, False, True]]]),
                np.array([[[True, False, True]]])],
            m=["RGB", "YCbCr", "HSV"])
show_images(im=[np.array([[[True, False, True, False]]]),
                np.array([[[True, False, True, False]]]),
                np.array([[[True, False, True, False]]])],
            m=["RGBA", "CMYK", "RGBX"])
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا