Opencv与PIL图片格式互转
说明
1、Opencv处理图片的格式是BGR,PIL处理图片的格式是RGB。因此若要实现二者的相互转换则必须确保转换前二者的图片格式是正确的,否则会出现错误。
例如:由PIL转Opencv时,一定要确保,当前图片的格式是BGR类型。
2、PIL保存图片的路径可以包含中文,Opencv保存图片的路径不可以包含中文,否则会保存不成功。也就是我为什么要进行转换的原因。
一、PIL转Opencv
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()
二、Opencv转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()