1. 读入PNG图片(RGBA)
from PIL import Image
from skimage import io
import cv2
img_pillow = Image.open(path) #<class 'PIL.PngImagePlugin.PngImageFile'> RGBA
img_skimage = io.imread(path) #<class 'numpy.ndarray'> RGBA
img_cv = cv2.imread(path,cv2.IMREAD_UNCHANGED) #<class 'numpy.ndarray'> BGRA
#通过img_cv[:, :,[0,2]] = img_cv[:,:,[2,0]] 验证三者读取出来的图像是等价的numpy
2. 转化为灰度图片
from skimage.color import colorconv
#全部不一致了
gray_pillow = np.array(img_pillow.convert('L'))
gray_skimage = (colorconv.rgb2gray(colorconv.rgba2rgb(img_skimage))*255).astype(np.uint8) #这里因为归一化了,需要重新映射
gray_cv = cv2.cvtColor(img_cv, cv2.COLOR_BGR2GRAY)