图像转换矩阵

一、Python pillow模块

pip install pillow

二、使用

from PIL import Image
import numpy as np
 
def loadImage():
    # 读取图片
    im = Image.open("风景.jpg")
    #im.size获取图片大小   
 
    # 显示图片
    im.show() 
    
    im = im.convert("L") 
    data = im.getdata()
    data = np.matrix(data)

    # 变换成683*1024,通过查看图片详情获得,或者一开始通过上面的im.size获取
    
    data = np.reshape( data, [683,1024] )
    new_im = Image.fromarray(data)

    # 显示图片
    new_im.show()
    
loadImage()

三、各类图像库使用

 opencv对于读进来的图片的通道排列是BGR,而不是主流的RGB!谨记

 1)opencv: cv2.imread:毋庸置疑,opencv是所有图像库中最全面也最强大的库

pip install opencv-python

  出现下面的错误:

pip install --user opencv-python
import cv2
import numpy as np

#读入图片:默认彩色图,cv2.IMREAD_GRAYSCALE灰度图

img = cv2.imread('pic.jpg')
cv2.imshow('src',img)

print(img.shape) # (h,w,c)   (528, 799, 3) 

print(img.size) # 像素总数目    1265616

print(img.dtype)#    uint8

print(img)#三维矩阵

  值得注意的是,opencv读进来的图片已经是一个numpy矩阵了,彩色图片维度是(高度,宽度,通道数)。数据类型是uint8

  https://www.cnblogs.com/skyfsm/p/8276501.html

原文地址:https://www.cnblogs.com/always-fight/p/9929127.html