python 灰度图转矩阵_图像转换矩阵

一、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

你可能感兴趣的:(python,灰度图转矩阵)