OpenCV+python计算机视觉图像处理——P11的学习笔记

https://www.bilibili.com/video/BV1QJ411W7SS?p=11&spm_id_from=pageDriver

P11 学习笔记

对应的是 04像素操作 文件

import cv2  # 引入openCV
img = cv2.imread('image0.jpg', 1) 
# img中保存的是解析之后的图片数据

# img 中是一个矩阵的结构,要使用中括号,矩阵中的第一个值描述的是X轴坐标,第二值描述的是Y坐标,这里就是[100, 100]。
(b,g,r) = img[100, 100]   # bgr
print(b, g, r)  #打印图片中坐标为 100,100 处的像素值

for i in range(1, 100)
img[i+10, 100] = (255, 0, 0)

cv2.imshow('image', img)
cv2.waitKey(0)  #1000ms

1 如何读取图片中每个具体的像素值

图片读取的坐标系结构
中间发方框表示图片
x轴描述的是图片的宽度,也就是图片的列
y轴描述的是图片的高度,也就是图片的行
如果想读取图片中的坐标为(100,100)的点,这个点由一个唯一的X轴和唯一的Y轴进行确定。
如何读取坐标为(100, 100)的像素值

img[100, 100] 语句解析
img 中是一个矩阵的结构,要使用中括号,矩阵中的第一个值描述的是X轴坐标,第二值描述的是Y坐标,这里就是[100, 100]。

图片读取出来后,以元组的形式进行存储,所以用小括号。正常情况下,是三基色RGB,但是OpenCV读取图片是bgr,即第一个颜色是蓝色,第二个值是绿色,第三个值是红色。

2 像素的写入

绘制一条直线,从第10行,第 100列开始,到第110行,第100列结束。可以用一个for循环,从第10行开始,一直到第110行,列不变,画一条蓝色的线。

for i in range(1, 100)
img[i+10, 100] = (255, 0, 0)
因为 OpenCV中的图片是以bgr形式保存的,所以这里的255表示的是蓝色分量的值。当绿色分量和红色分量均设置为0时,说明这是纯蓝色。

cv2.waitKey(0) #1000ms
1s = 1000ms,里面的参数不设置成0也行,自己给定一个数值也可以,比如给定1000,说明是暂停1000毫秒。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值