通常使用scikit-image进行图像读取与存储操作:

from skimage import io
img = io.imread('lena.jpg');
io.imshow(img)
io.imsave('lena2.jpg', img)
查看img大小:
img.shape
scikit-image对图像操作与matlab相似,比较适合matlab转python的同学
scikit-image安装:
pip install scikit-image 即可

矩阵常用操作:
以numpy为例

import numpy as np
#生成512, 512, 3的矩阵
img = np.ones([512, 512, 3]);
#或者 img = np.array(range(0, 512x512x3)).reshape((512, 512, 3)) x 0 复杂了点,展示一下矩阵操作
img.shape #查看矩阵维度
#将0-99列第一维值改为255
img[:, 0:100, 0] = 255
#将100-199列第二维值改为255
img[:, 100:200, 1] = 255
#将200-299列第三维值改为255
img[:, 200:300, 2] = 255
#将倒数第11-2行三维数值设为255
img[-10:-1, :, :] = 255
#将img保存为图片
io.imsave('color_strip.bmp', img)

然后会得到如下图案

python求图像质心 python图像矩阵_ci


#将图片数据保存到csv中

import pandas as pd
r = pd.DataFrame(img[:,:,1]);
g = pd.DataFrame(img[:,:,2]);
b = pd.DataFrame(img[:,:,3]);
data.to_csv('r.csv',  index=False, header=False)
data.to_csv('g.csv',  index=False, header=False)
data.to_csv('b.csv',  index=False, header=False)

#读取保存的csv文件

read_r = pd.read_csv('r.csv', header=None);
read_g = pd.read_csv('g.csv', header=None);
read_b = pd.read_csv('b.csv', header=None);