图像像素(pixel):
pixel: 510 x 767(水平 x 竖直)
一、彩色
图像属性
import cv2
img1 = cv2.imread(r"D:\OpencvTest\example.jpg", cv2.IMREAD_COLOR) # 传入一张彩色图片
print(img1.shape) # (767, 510, 3) ===> (y, x, tunnel)
print(img1.size) # 1173510 byte(字节) ===> 767 x 510 x 3
print(img1.dtype) # uint8 ===> datatype: 图像的数据属性,一般为无符号整数类型变量+位数
img1[200, 370] # 访问某像素的色彩值
img1[200, 370, 0] # 访问某像素具体通道的色彩值, 0 ===> B, 1 ===> G, 2 ===> R
img1[200, 370] = [255, 255, 255] # 修改坐标(200, 370)像素的色彩
# 或者
img1.item((200, 370))
img1.item((200, 370, 0)) # 访问某像素具体通道的色彩值, 0 ===> B, 1 ===> G, 2 ===> R
img1.itemset((200, 370, 0), 255)
# 整个图像某色彩通道
img1[:, :, 0] # 整个图像b色彩通道
二、灰度
img2 = cv2.imread(r"D:\OpencvTest\example.jpg", cv2.IMREAD_GRAYSCALE) # 传入一张灰度图片
print(img2.shape) # (767, 510) ===> (y, x)
print(img2.size) # 391170 byte(字节) ===> 767 x 510 x 1
print(img2.dtype) # uint8
![](https://i-blog.csdnimg.cn/blog_migrate/19d1a68326968277c5509422759518cf.png)
img2[200, 370] # 访问某像素的色彩值
img2[200, 370] = 255 # 修改坐标(2, 7)像素的色彩
# 或者
img2.item((200, 370))
img2.itemset((200, 370), 255)
# 整个图像色彩通道
img[:, :]
复制某块像素至另一处:
area = img[100:130, 160:185]
img[200:230, 230:255] = area # 注意区域大小一样