Python_提取图片像素值
Python_提取图片像素值使用PIL.Iamge和numpy模块打开图片from PIL import Imageimage = Image.open("test.png")导入数组import numpyarray = numpy.array(image)print(array)'''[[[000][ 84 150 206][255 255 255]...[255 255 255][255 2
·
Python_提取图片像素值
使用PIL.Iamge
和numpy
模块
打开图片
from PIL import Image
image = Image.open("test.png")
导入数组
import numpy
array = numpy.array(image)
print(array)
'''
[[[ 0 0 0]
[ 84 150 206]
[255 255 255]
...
[255 255 255]
[255 255 255]
[255 255 255]]
[[255 255 255]
[ 84 150 206]
[255 255 255]
...
[255 255 255]
[255 255 255]
[255 255 255]]
[[255 255 255]
[ 84 150 206]
[ 84 150 206]
...
[255 255 255]
[255 255 255]
[255 255 255]]
...
[[255 255 255]
[255 255 255]
[255 255 255]
...
[255 255 255]
[ 84 150 206]
[255 255 255]]
[[255 255 255]
[255 255 255]
[255 255 255]
...
[255 255 255]
[ 84 150 206]
[ 84 150 206]]
[[255 255 255]
[255 255 255]
[255 255 255]
...
[255 255 255]
[255 255 255]
[ 0 0 0]]]
'''
这个三位数组的意义是图片以行与列分布像素值,像素值内RGB值
也就是说
array.shape == (162, 136, 3)
array.shape[0] == "图片的像素单位的总行数"
array.shape[1] == "图片的像素单位的总列数"
array.shape[2] == 3 # RGB是三个值
判断某一像素点的像素值
(array[x,y,:] == [R,G,B]).any()
# 或者是使用a.all()
(array[x,y,] == [R,G,B]).all()
# 如果需要比较的像素值是相同的
(array[x,y,:] == num).all()
# 均返回False或者True
更多推荐
已为社区贡献1条内容
所有评论(0)