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

手机网站开发 .networdpress 4.6 中文

手机网站开发 .net,wordpress 4.6 中文,域名注册价格,服务好的赣州网站建设OpenCV计算机视觉实战(2)——环境搭建与OpenCV简介 0. 前言1. OpenCV 安装与配置1.1 安装 Python-OpenCV1.2 配置开发环境 2. OpenCV 基础2.1 图像读取与显示2.2 图像保存 3. 摄像头实时捕获小结系列链接 0. 前言 OpenCV (Open Source Computer Vision …

OpenCV计算机视觉实战(2)——环境搭建与OpenCV简介

    • 0. 前言
    • 1. OpenCV 安装与配置
      • 1.1 安装 Python-OpenCV
      • 1.2 配置开发环境
    • 2. OpenCV 基础
      • 2.1 图像读取与显示
      • 2.2 图像保存
    • 3. 摄像头实时捕获
    • 小结
    • 系列链接

0. 前言

OpenCV (Open Source Computer Vision Library) 是一个开源计算机视觉库,广泛应用于图像处理、机器视觉、人工智能等领域。本文将手把手教你从环境搭建到运行第一个 OpenCV 程序,包含图像的读取、显示、保存,以及使用摄像头实时捕获图像的基础操作。

1. OpenCV 安装与配置

1.1 安装 Python-OpenCV

通过 pip 快速安装 OpenCV 的核心模块和扩展模块:

# 安装基础模块(核心功能)
pip install opencv-python
# 安装扩展模块(包含SIFT/SURF等额外功能)
pip install opencv-contrib-python

安装完成后,进行验证:

>>> import cv2
>>> cv2.__version__

1.2 配置开发环境

推荐以下三种开发工具:

工具配置建议
PyCharm创建 Python 项目 → 安装 opencv-python 包 → 配置虚拟环境
VSCode安装 Python 扩展 → 使用 Jupyter Notebook 交互式调试
Jupyter Lab适合快速实验 → 通过 %matplotlib inline 实时显示图像

2. OpenCV 基础

2.1 图像读取与显示

OpenCV 读取图像非常简单,下面是一个 OpenCV 版的 Hello World 程序:

import cv2# 读取图像
img = cv2.imread("cat.jpg")  # 显示图像(窗口名 + BGR格式数据)
cv2.imshow("Demo", img)  
cv2.waitKey(0)  # 按任意键继续
cv2.destroyAllWindows()  # 关闭所有窗口

执行结果

关键函数解析:

  • cv2.imread():读取图像,默认参数 cv2.IMREAD_COLOR 为彩色模式(使用参数 cv2.IMREAD_GRAYSCALE 可以读取为灰度图像)
  • cv2.imshow():创建一个窗口并显示图像
  • cv2.waitKey():参数为等待时间(毫秒),0 表示无限等待直到用户按键
  • cv2.destroyAllWindows():关闭所有 OpenCV 窗口

2.2 图像保存

OpenCV 提供了 imwrite() 函数来保存图像到文件:

# 保存图像(质量参数 0-100)
cv2.imwrite("output.jpg", img, [cv2.IMWRITE_JPEG_QUALITY, 90])

参数说明:

  • 第一个参数:保存的文件路径(包括文件名和扩展名)
  • 第二个参数:要保存的图像数据
  • 第三个参数(可选):保存参数,以列表形式提供

常用保存参数:

  • JPEG 格式:
[cv2.IMWRITE_JPEG_QUALITY, quality]  # quality: 0-100,默认95
  • PNG 格式:
[cv2.IMWRITE_PNG_COMPRESSION, compression]  # compression: 0-9,默认1
  • WEBP 格式:
[cv2.IMWRITE_WEBP_QUALITY, quality]  # quality: 1-100,默认100

3. 摄像头实时捕获

使用以下 OpenCV 代码可以方便的实时读取电脑摄像头视频流:

import cv2
# 打开默认摄像头(设备索引为0)
cap = cv2.VideoCapture(0)# 检查摄像头是否成功打开
if not cap.isOpened():print("无法打开摄像头")exit()
while True:# 逐帧捕获ret, frame = cap.read()if not ret:print("无法接收帧,退出")break# 显示捕获到的帧cv2.imshow('Live Video', frame)# 如果按下 'q' 键,则退出循环if cv2.waitKey(1) & 0xFF == ord('q'):break# 释放资源
cap.release()
cv2.destroyAllWindows()

摄像头
关键函数解析:

  • cv2.VideoCapture(0):初始化摄像头,0 通常代表计算机的默认摄像头,如果有多个摄像头,可以尝试 12 等索引,也可以传入视频文件路径来读取视频文件
  • cap.read():读取一帧,返回值有两个,ret:布尔值,表示是否成功读取帧,如果读取失败,retFalse,应退出循环;frame:当前帧的图像数据
  • cv2.imshow():显示捕获到的帧,可以在循环中添加任意图像处理操作,可以同时显示多个窗口展示不同的处理效果
  • cv2.waitKey(1) & 0xFF == ord('q'):按 q 退出,ord('q') 获取字符 qASCII
  • cap.release():释放摄像头资源

除此之外,我们也可以对摄像头进行高级设置,例如,设定分辨率:

cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1280)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 720)

获取和设置帧率:

# 获取当前帧率
fps = cap.get(cv2.CAP_PROP_FPS)# 设置帧率
cap.set(cv2.CAP_PROP_FPS, 30)

其他常用属性的设置:

# 亮度
cap.set(cv2.CAP_PROP_BRIGHTNESS, 0.5)  # 0-1
# 对比度
cap.set(cv2.CAP_PROP_CONTRAST, 0.5)  # 0-1
# 饱和度
cap.set(cv2.CAP_PROP_SATURATION, 0.5)  # 0-1
# 增益
cap.set(cv2.CAP_PROP_GAIN, 0)  # 自动增益通常为0
# 曝光
cap.set(cv2.CAP_PROP_EXPOSURE, -7)  # 负值表示自动曝光

检查摄像头支持的属性:

for i in range(0, 18):print(f"Property {i}: {cap.get(i)}")

属性打印

小结

通过本文,我们已经完成了 OpenCV 环境的搭建,了解了基本图像读取、显示、保存的方法,并学会了如何使用摄像头捕获实时视频帧。

系列链接

OpenCV计算机视觉实战(1)——计算机视觉简介


文章转载自:

http://zzYtXaY4.qbgff.cn
http://eJxCOJ3X.qbgff.cn
http://Ah0eAYCa.qbgff.cn
http://iDCksRcp.qbgff.cn
http://oqktzLpF.qbgff.cn
http://s6EYV90s.qbgff.cn
http://C2KtpZ0X.qbgff.cn
http://ENy1rEso.qbgff.cn
http://u6rU4M7T.qbgff.cn
http://rs4Urv77.qbgff.cn
http://Z2ktBI51.qbgff.cn
http://yR83wN38.qbgff.cn
http://6T9n4TUi.qbgff.cn
http://Xh9cM04L.qbgff.cn
http://70EvVebf.qbgff.cn
http://zTBwIFrF.qbgff.cn
http://e5PJ1Ie2.qbgff.cn
http://nscpew92.qbgff.cn
http://zzPPbyKr.qbgff.cn
http://xVozk4ws.qbgff.cn
http://hl745v1z.qbgff.cn
http://oIuefHT5.qbgff.cn
http://GuG77aTC.qbgff.cn
http://EwNoNhaa.qbgff.cn
http://09OVOVQO.qbgff.cn
http://4tAAFQni.qbgff.cn
http://xD8EMRVs.qbgff.cn
http://JQervAJj.qbgff.cn
http://HS3vgyYm.qbgff.cn
http://E1wSa36w.qbgff.cn
http://www.dtcms.com/wzjs/643013.html

相关文章:

  • 全屏的翻页网站这么做wordpress更改目录
  • 网站建设公司有哪些比较知名的内江做网站的公司
  • 专业网站建设找哪家企业网站建设软件需求分析
  • vs做网站的书籍深圳知名室内设计公司
  • 建网站的手续东莞保安公司一览表
  • 亦庄建设局网站设计公司口号
  • 河北住房和城乡建设厅网站6盘锦网站设计
  • wordpress企业站主题哪个好国际知名的论文网站
  • 潍坊网站建设优化排名承德网站建设
  • 天津河东做网站公司zhihu网站建设
  • 适合seo优化的站点创造一个软件需要多少钱
  • 网站开发知识视频教程中国卫生网
  • 北京cms建站系统运营方案模板
  • 深圳建设网站制作定制网站本地企业
  • 建网站的费用是多少做房产应看的网站
  • 郑州新站网站推广工具网站基本配置
  • 百度喜欢什么样的网站营销网站建设收费标准
  • 一个基于php网站开发课题设计的业务流程描述多多进宝怎么做自己网站
  • 怎么把个人做的网站上传到网上一站式做网站费用
  • 网站大致内容昆钢建设集团网站
  • 南宁物流公司网站建设wordpress模板带数据库
  • 网站推广方法有哪些网站开发毕业设计开题报告
  • 学做网站什么语言合适天津网站建设运营方案
  • 做汽车商城网站建立反洗钱内部控制机制的基本原则
  • 周口网站建设电话wordpress togetherjs
  • 做动物网站的原因佛山市专业的网站设计
  • h5直播网站西安大型网站设计公司
  • app哪个网站开发好wordpress文章数据库
  • t恤图案设计网站网上申报系统入口
  • wordpress远程包含临安网站seo