1. PIL图像转换为CV图像
# 使用PIL打开图像
pil_image = Image.open('your_image.jpg')
# 将PIL图像转换为NumPy数组
np_image = np.array(pil_image)
# OpenCV默认使用BGR颜色顺序,而PIL使用RGB。如果需要,可以转换颜色空间。
# OpenCV中的cv2.cvtColor()函数可以用来进行颜色空间的转换。
opencv_image = cv2.cvtColor(np_image, cv2.COLOR_RGB2BGR)
cv2.imwrite('your_image.jpg', opencv_image)
2. CV图像转换为PIL图像
image = cv2.imread('original_image.jpg')
# OpenCV读取的图像是BGR格式,而PIL需要RGB格式,因此进行转换
image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
# 将numpy数组转换为PIL Image对象
image_pil = Image.fromarray(image_rgb)
image_pil.save('your_image.jpg', 'JPEG', quality=85)