图片的像素相关知识点
1. 基础概念
像素: 图片中的一个个方块
(每一种颜色都可以用RGB三种颜色分量进行合成)
颜色深度: 8bit的颜色深度可以表示的颜色范围0~ 255(共256种颜色)
图片的宽高
eg:640*480表示水平方向上有640个像素点,竖直方向上有480个像素点
图片的数据大小
1.14M=宽度 * 高度 * 3 * 8bit (整体再除以8得到单位为B字节)
(1)宽度 * 高度得到总的像素点
(2)每个像素有RGB三个颜色分量
(3)每个颜色分量有8bit的颜色深度
注: ①对于png图片:
每个像素点还存在alpha通道(描绘图片的透明度)
②颜色存储格式除了RGB还有bgr
图片像素的读取
(1)图片存储的坐标系结构
(2)读取坐标系下(100,100)这个点的像素值
import cv2
img = cv2.imread('image0.jpg',1)
(b,g,r) = img[100,100]
print(b,g,r)
①img中是矩阵结构,用[], 分别表示x和y坐标
②以元组形式进行存储
③在opencv中读取图片是以bgr形式
eg:255 0 0表示蓝色
像素的写入
在图片上绘制一条从(10,100)到(110,100)的蓝色直线
停留的时间可以设置为0也可设置为其他值
for i in range(1,100):
img[10+i,100] = (255,0,0)
cv2.imshow('image',img)
cv2.waitKey(0)