欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python中的opencv和PIL(pillow)转化操作

程序员文章站 2022-09-06 16:37:54
opencv > pilimport cv2 from pil import imageimg = cv2.imread("test.png")image = image.fromarray(c...

opencv > pil

import cv2 
from pil import image
img = cv2.imread("test.png")
image = image.fromarray(cv2.cvtcolor(img,cv2.color_bgr2rgb)) 

pil > opencv

import cv2 
from pil import image 
image = image.open("test.png") 
img = cv2.cvtcolor(numpy.asarray(image),cv2.color_rgb2bgr) 

补充:skimage与opencv图片格式的相互转换

skimage是python的一个图像库,常常与matplotlib一起作为视频、图像类的基本库。而opencv作为非常流行的视觉库,在图像处理中使用非常常见,本篇介绍两种库的图像格式的相互转换。

skimage

图像格式

通道:rgb

像素值:[0,1]

opencv

图像格式

通道:bgr

像素值:[0,255]

转换

转换过程现封装如下:

def skimage2opencv(src):
  src *= 255
  src.astype(int)
  cv2.cvtcolor(src,cv2.color_rgb2bgr)
  return src

def opencv2skimage(src):
  cv2.cvtcolor(src,cv2.color_bgr2rgb)
  src.astype(float32)
  src /= 255
  return src

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。

相关标签: python opencv PIL