python版的openCV使用及下载

一、下载OpenCV模块

截止目前:现在OpenCV使用环境还是python3.8的版本所以咱们下载时记得用3.8版本的

终端下载:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python

这是国内的镜像下载能快一些;

下载成功的标志:

二、图像视频的加载和显示

2.1创建和显示窗口

namedWindow()   创建命名窗口

imshow()   显示窗口

destroyAllwindows()   摧毁窗口

resizeWindow()   改变窗口大小

waitKey()    等待用户输入

#OpenCV导包的时候,叫做CV2import  cv2#cv2.WINDOW_AUTOSIZE不允许修改窗口#创建窗口   cv2.nameWindow('window',cv2.WINDOW_AUTOSIZE)#更改窗口 大小cv2.resizeWindow('window',800,600)#展示窗口名字为window;cv2.imshow('window',0)#等待按键

#可以利用waitKey来销毁窗口,不用每次重启;0表示接受任意按键,其他的整数表示等待按键的时间,单位是毫秒;key是int型,最少16位,ascii码是8位

Key=cv2.waitWey(0)if Key &0xFF ==ord();‘q’:cv2.destroyAllWindows()

2.2读取图片

import matplotlib.pylot as plt图片 =cv2.imread("路径")图片.max#颜色不一样。是因为opencv读进来不是默认的图片,而是BGR,读进来,不要用别的方式展现,用opencv自己的方式展现;cv.2imshow(“图片”,img)plt.imshow(图片)#必须执行外部文件;table和空格混用的缩进问题,执行之后,会 自动把外部函数导入%run utils.py

2.3保存图片

cv2.imwrite(path,img);

2.4读取摄像头和视频数据

import cv2#视频其实本质上就是由一幅一幅的照片组成的,#打开摄像图cv2.namedWindow('video',cv2.WINDOW_NORMAL)cv2.resizeWindow('video',640,480)cap=cv2.VideoCapture(0)#类,首字母大写,代码书写规范# #打开视频,输入视频的地址# cap=cv2.VideoCapture('')#循环读取摄像头的每一帧# while True:while cap.isOpened():#读一帧数据,返回标记和这一帧数据,TURE表示读到了数据,False表示没读到数据,ret,frame=cap.read()#可以根据ret做个判断if not ret:#没读到数据,直接退出break#显示数据cv2.imshow("video",frame)key=cv2.waitKey(10)if key&0xFF==ord("q"):break#别忘了释放资源cap.release()cv2.destroyAllWindows()

2.5视频录制

# import cv2
# cap=cv2.VideoCapture(0)
# fourcc =cv2.VideoWriter_fourcc(*'mp4v')
# # 创建videoWriter
# vw=cv2.VideoWriter('output.mp4',fourcc,30,(640,480))# while True:
#     ret,frame=cap.read()
#     if not ret:
#         break
#     # 写每一帧数据
#     vw.write(frame)
#     cv2.imshow('frame',frame)
#     if cv2.waitKey(1)==ord('q'):
#         break

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/3863.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux简单命令

目录 显示目录下的内容 ls 切换工作目录 cd 查看-当前工作目录pwd 创建-文件夹 mkdir 创建-文件 touch 查看-文件内容 cat 查看-分屏查看文件内容 more 删除-文件、文件夹 rm 复制-文件、文件夹 cp 移动-文件、文件夹 mv 查找-命令的程序文件存放处 which 查找-按文…

Linux平台Unity下RTMP|RTSP低延迟播放器技术实现

技术背景 国产操作系统对于确保信息安全、促进技术创新、满足特定需求以及推动经济发展等方面都具有重要意义,多以Linux为基础二次开发。2014年4月8日起,美国微软公司停止了对Windows XP SP3操作系统提供支持,这引起了社会和广大用户的广泛关…

SCI一区级 | Matlab实现BES-CNN-GRU-Mutilhead-Attention多变量时间序列预测

SCI一区级 | Matlab实现BES-CNN-GRU-Mutilhead-Attention秃鹰算法优化卷积门控循环单元融合多头注意力机制多变量时间序列预测 目录 SCI一区级 | Matlab实现BES-CNN-GRU-Mutilhead-Attention秃鹰算法优化卷积门控循环单元融合多头注意力机制多变量时间序列预测预测效果基本介绍…

Unreal Engine创建Plugin

打开UE工程,点击编辑,选择插件 点击“新插件”按钮,选择“空白选项”填入插件名字"MultiPlayerPlugin",填入插件作者、描述,点击“创建插件”按钮打开C工程,即可看到插件目录,编译C工…

Linux网络编程---多进/线程并发服务器

一、多进程并发服务器 实现一个服务器可以连接多个客户端,每当accept函数等待到客户端进行连接时 就创建一个子进程 思路分析: 核心思路:让accept循环阻塞等待客户端,每当有客户端连接时就fork子进程,让子进程去和客户…

2分钟自己写小游戏:使用js和css编写石头剪刀布小游戏、扫雷小游戏、五子棋小游戏。新手老手毕业论文都能用。

系列文章目录 【复制就能用1】2分钟玩转轮播图,unslider的详细用法 【复制就能用2】css实现转动的大风车,效果很不错。 【复制就能用3】2分钟自己写小游戏:剪刀石头布小游戏、扫雷游戏、五子棋小游戏 【复制就能用4】2024最新智慧医疗智慧医院大数据…

MySQL:ACCESS DENIED FOR USER‘ROOT‘@‘IP地址

起因是使用若依的环境连接数据库时报错:远程数据库连接异常,最终原因是密码错误,且看分解 07:12:06.895 [main] INFO c.r.RuoYiApplication - [logStartupProfileInfo,686] - The following 1 profile is active: "druid" 07:12:…

阿里巴巴瓴羊基于 Flink 实时计算的优化和实践

摘要:本⽂整理⾃阿里云智能集团技术专家王柳焮⽼师在 Flink Forward Asia 2023 中平台建设专场的分享。内容主要为以下四部分: 阿里巴巴瓴羊基于 Flink 实时计算的平台演进Flink 能力优化与建设基于 Flink 的最佳实践未来规划 1. 阿里巴巴瓴羊基于 Flink…

等保测评有那些流程?为什么要做等保

根据《网络安全法》规定,网络运营者应当按照国家的网络安全技术标准和要求,采取技术措施保障网络安全,避免网络安全事件的发生。而等保测评是国家对企事业单位进行信息系统安全等级评定的一项重要制度,通过等级测评,可…

macOS 一些系统图标的存放位置 icns

macOS 一些系统图标的存放位置 icns macOS 中有很多好看的图标,有时候就想用一下它,我来告诉你他们的具体位置。 系统图标位置,像各种通用文件类型的图标都在这里面,里面好多高清的系统图标 /System/Library/CoreServices/Core…

Android Studio的button点击事件

xml添加onClick调用方法 public class MainActivity extends AppCompatActivity {// 创建系统时间的文本控件TextView systemTimeTextView;Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activit…

精酿啤酒:酿造工艺的自动化与智能化发展

随着科技的不断进步,自动化与智能化已成为啤酒酿造工艺的重要发展方向。Fendi Club啤酒紧跟时代潮流,积极推动酿造工艺的自动化与智能化发展,旨在提高生产效率、确保产品品质和满足市场需求。 Fendi Club啤酒引入自动化生产设备。他们采用自动…

外观模式【结构型模式C++】

1.概述 外观模式是一种结构型设计模式, 能为程序库、 框架或其他复杂类提供一个简单的接口。 2.结构   外观角色(Facade):为多个子系统对外提供一个共同的接口,知道哪些子系统负责处理请求,将客户端的请…

Qt下使用OpenCV截取图像并在QtableWidget表格上显示

文章目录 前言一、在QLabel上显示图片并绘制矩形框二、保存矩形框数据为CSV文件三、保存截取图像四、将截取图像填充到表格五、图形视图框架显示图像六、示例完整代码总结 前言 本文主要讲述了在Qt下使用OpenCV截取绘制的矩形框图像,并将矩形框数据保存为CSV文件&a…

235 基于matlab的时频盲源分离(TFBSS)算法

基于matlab的时频盲源分离(TFBSS)算法,TFBSS用空间频率分布来分离非平稳信号,可以分离具有不同时频分布的源信号,也能够分离具有相同谱密度但时频分布不同的高斯源。同时,该算法在时频域上局域化源信号能量…

vue 3 —— 笔记(模板语法,响应式变量)

模板语法: Vue 使用一种基于 html 的模板语法,使我们能声明式将其组件实例绑定到呈现的 dom 上 文本插值 基础数据绑定形式 双大括号 会替换相应组件实例 msg 属性的值 原始html 双大括号会将数据解释为纯文本 不是html 想插入html 使用 v-html 指令 &…

【SpringCloud】CircuitBreaker断路器之Resilience4J快速入门

【SpringCloud】CircuitBreaker断路器之Resilience4J快速入门 文章目录 【SpringCloud】CircuitBreaker断路器之Resilience4J快速入门1. 概述2. 服务熔断服务降级(CircuitBreaker)2.1 案例说明2.1.1 基于计数的滑动窗口2.1.2 测试2.2.1 基于时间的滑动窗口2.2.2 测试 3. 隔离(B…

前端单元测试的艺术:专业化策略与Vue项目高效实践指南

单元测试是软件开发中的基石,尤其对于前端领域,它为保证代码质量、提升开发效率、强化项目稳定性提供了不可或缺的支持。本文将深入剖析单元测试的核心理念,揭示其在前端开发中的独特价值,并提炼出一套专业且高效的实践策略&#…

git 基础知识(全能版)

文章目录 一 、git 有三个分区二、git 基本操作1、克隆—git clone2、拉取—git fetch / git pull3、查看—git status / git diff3.1 多人开发代码暂存技巧 本地代码4、提交—git add / git commit / git push5、日志—git log / git reflog6、删除—git rm ‘name’7、撤销恢…

阿里云服务器(Ubuntu22)上的MySQL8更改为大小写不敏感

因为windows上默认的mysql8.0是大小写不敏感的,部署到服务器上之后发现ubuntu默认的是大小写敏感,所以为了不更改代码,需要将mysql数据库设置为大小写不敏感的。 !!!重要一定要做好数据库的备份&#xff0…