示例:
img = cv2.imread('tree.jpg')
print(img)
效果展示:
说明:
可以根据像素的行和列的坐标来获取它的像素值。对于 BGR 图像来说,返回的值为 B G R 的值;
对于灰度图来说,返回的是他的灰度值(也叫亮度值 intensity)
获取、修改像素值:
px = img[100,100]
print(px)
blue = img[100, 100, 0] # 可以用类似的方法修改像素值
print(blue)
img[100, 100] = [255,255,255]
print(img[100,100])
'''
[247 113 2]
247
[255 255 255]
'''
注意:上面提到的方法被用来选取矩阵的一个区域,比如前5行的后3列;
对于获取每一个像素值,也许使用 Numpy 的 array.item() 和 array.itemset() 会更好,但是返回的值是标量;
注意:Numpy 是经过优化了的进行快速矩阵计算的软件包,所以我们不推荐逐个获取像素值并修改,这样会很慢,能用矩阵运算就不要用循环。
如果想要获得所有的 BGR 的值,我们需要使用 array.item() 来分割他们
获取、修改像素值的更好方法:
print(img.item(10, 10, 2))
img.itemset((10,10,2), 100)
print(img.item(10, 10, 2))
'''
7
100
'''
转载请注明转自:https://blog.csdn.net/Owen_goodman/article/details/107044885