list-numpy-tensor-cv2-PIL 转换合集

2020-03-20  本文已影响0人  winter_sweetie

2020/3/20

1. numpy & list

1.1 List -> numpy

import numpy as np
np_arr = np.array(li) 

1.2 numpy->List:

li = np_arr.tolist() 

2. numpy & tensor

2.1 numpy -> tensor

import numpy as np
import torch
tensor_arr = torch.from_numpy(np_arr)

2.2 tensor -> numpy

import numpy as np
import torch
np_arr = tensor_arr .numpy()

3. cv2(numpy) & PIL

3.1 PIL-> cv2

事实上是PIL->numpy

import cv2
from PIL import Image
import numpy
 
image = Image.open("plane.jpg")
image.show()
img = cv2.cvtColor(numpy.asarray(image), cv2.COLOR_RGB2BGR)
cv2.imshow("OpenCV",img)
cv2.waitKey()

3.2 cv2 -> PIL

事实上是numpy -> PIL

import cv2
from PIL import Image
import numpy
 
img = cv2.imread("plane.jpg")
cv2.imshow("OpenCV",img)
image = Image.fromarray(cv2.cvtColor(img,cv2.COLOR_BGR2RGB))
image.show()
cv2.waitKey()

4. tensor&PIL

4.1 PIL -> tensor

from torchvision import transforms as T
from PIL import Image
image = Image.open("xxx.jpg")
t = T.ToTensor()(image)
patch = torch.from_numpy(np.asarray(img1))

4.2 tensor-> PIL

from torchvision import transforms as T
img = T.ToPILImage(t)
上一篇下一篇

猜你喜欢

热点阅读