在python里,图片以数组的形式保存,我们用例子说明,用数组创建图1,并且修改左下角像素的颜色,如图2
图1
图2
# -*- coding: UTF-8 -*-
import cv2
import numpy as np
#创建4行3列 12个像素的3通道彩色图,
#第1维是行, 第2维是列,第3维的BGR值,
# 以下img 第0行,第0列是[255, 0, 0], 即图片的第一个像素为蓝色
img = np.array([
[[255, 0, 0], [0, 255, 0], [0, 0, 255]],
[[255, 255, 0], [255, 0, 255], [0, 255, 255]],
[[255, 255, 255], [128, 128, 128], [0, 0, 0]],
[[255, 255, 255], [255, 128, 0], [0, 255, 0]],
], dtype=np.uint8)
#注意,需要png ,jpg是有损压缩,重新打开后会有像素变化
cv2.imwrite("test.png", img)
cv2.imshow('img', img)
#重新读取
src = cv2.imread("test.png")
#修改左下角 像素的值, 修改后 第3行,第0列为红色
src[3][0][0] = 0
src[3][0][1] = 0
src[3][0][2] = 255
cv2.imshow('img2', src)
cv2.waitKey()

