当前位置: 首页 > article >正文

OpenCV图像基本操作

学习目标:

学习一些OpenCV中对于图像的基本操作


学习内容:

        第一步导入库和所需的图像。 

import cv2
import numpy as np
img=cv2.imread("lena.png")
# cv2.imshow("img",img)
# cv2.waitKey(0)

访问和修改图片像素

        访问图片像素(100,100) 处的值。

px=img[100,100]
print(px)

 

        访问图片像素(100,100)处的蓝色通道值。

blue=img[100,100,0]
print(blue)

 

        修改图片像素(100,100)处的值。

img[100,100]=[255,255,255]
print(img[100,100])

 

访问图像属性

        访问图像形状。

print(img.shape)

         打印像素总数。

print(img.size)

        查看图像数据类型。

print(img.dtype)

 

图像ROI

        图像ROI即对于图像中感兴趣的区域。

roi=img[100:250,100:250]
cv2.imshow("roi",roi)
cv2.waitKey(0)

分割和合并图像通道

        这里提供两种分割图像通道的方法。 

b,g,r=cv2.split(img)
# b=img[:,:,0]
# g=img[:,:,1]
# r=img[:,:,2]

cv2.imshow("b",b)
cv2.imshow("g",g)
cv2.imshow("r",r)
cv2.waitKey(0)

         代码执行情况。

        合并三个通道。

img=cv2.merge((b,g,r))
cv2.imshow("img",img)
cv2.waitKey(0)

 

        修改整个通道值。

img[:,:,2]=0
cv2.imshow("img",img)
cv2.waitKey(0)

        以上为本篇文章的全部内容,感谢你抽出宝贵的时间阅读这篇文章。如果你有任何疑问或建议,欢迎在评论区留言,我们一起交流进步。愿你的代码之路越走越顺,生活充满阳光!


http://www.kler.cn/a/550388.html

相关文章:

  • github上文件过大无法推送问题
  • 解压rar格式的软件有哪些?8种方法(Win/Mac/手机/网页端)
  • 华为昇腾 910B 部署 DeepSeek-R1 蒸馏系列模型详细指南
  • gradio创建openai前端对接deepseek等模型流式输出markdown格式文本
  • Windows 图形显示驱动开发-CPU 内存调节和64KB 页面支持
  • 力扣每日一题【算法学习day.127】
  • Python——寻找矩阵的【鞍点】(教师:恒风)
  • 接口测试及常用接口测试工具(Postman/Jmeter)
  • Linux学习笔记之虚拟地址空间
  • 【Linux】--- 信号阻塞、信号捕捉
  • TransCNN模型详解
  • JUC并发二
  • 健康的生活方式小结---秋浦四郎
  • Micropython RPI-PICO 随记-LVGL实战3 综合调试
  • Java中CompletableFuture异步工具类
  • 微信云开发小程序音频播放踩坑记录 - 从熄屏播放到iOS静音
  • 碰一碰发视频@技术原理与实现开发步骤
  • 在docker中部署fastdfs一些思考
  • 2步破解官方sublime4最新版本 4192
  • Dest1ny漏洞库: 美团代付微信小程序系统任意文件读取漏洞