python opencv3 窗口显示摄像头的帧
git:https://github.com/linyi0604/Computer-Vision
# coding:utf8 import cv2 """
在窗口显示摄像头帧 namedWindow() 指定窗口名
imshow() 创建窗口
DestroyWindow() 销毁所有窗口
waitKey() 获取键盘输入
setMouseCallback() 获取鼠标输入 """
"""
opencv窗口只有调用waitKey()后才能实时更新
waitKey() 只有窗口创建后才能捕获键盘
""" clicked = False def onMouse(event, x, y, flags, param):
global clicked
if event == cv2.EVENT_LBUTTONUP:
clicked = True cameraCapture = cv2.VideoCapture(0) # 传入摄像头设备的索引
cv2.namedWindow("MyWindow") # 设置窗口名称
cv2.setMouseCallback("MyWindow", onMouse) # 传入窗口名称和响应捕获的函数
"""
setMouseCallback() 第二个参数接收一个回调函数
回调事件可以取值如下:
cv2.EVENT_MOUSEMOVE 鼠标移动
cv2.EVENT_LBUTTONDOWN 左按键按下
cv2.EVENT_RBUTTONDOWN 右按键按下
cv2.EVENT_MBUTTONDOWN 中间键按下
cv2.EVENT_LBUTTONDBLCLK 双击左键
cv2.EVENT_RBUTTONDBLCLK 双击右键
cv2.EVENT_MBUTTONDBLCLK 双击中间 鼠标回调的标志参数可能是以下事件的桉位组合:
cv2.EVENT_FLAG_LBUTTON 按下鼠标左键
cv2.EVENT_FLAG_RBUTTON 按下鼠标右键
cv2.EVENT_FLAG_MBUTTON 按下中间
cv2.EVENT_FLAG_CTRLKEY 按下ctrl键
cv2.EVENT_FLAG_SHITKEY 按下shift键
cv2.EVENT_FLAG_ALTKEY 按下alt键
""" print("点击窗口或者按键停止") success, frame = cameraCapture.read()
while success and cv2.waitKey(1) == -1 and not clicked:
cv2.imshow("MyWindow", frame)
success, frame = cameraCapture.read() cv2.destroyAllWindows()
cameraCapture.release()
python opencv3 窗口显示摄像头的帧的更多相关文章
- python控制窗口显示隐藏
import win32con # 定义 import win32gui # 界面 import time # 时间 QQ= win32gui.FindWindow("TXGuiFounda ...
- 在Jetson TX2上显示摄像头视频并使用python进行caffe推理
参考文章:How to Capture Camera Video and Do Caffe Inferencing with Python on Jetson TX2 与参考文章大部分都是相似的,如果 ...
- python+opencv选出视频中一帧再利用鼠标回调实现图像上画矩形框
最近因为要实现模板匹配,需要在视频中选中一个目标,然后框出(即作为模板),对其利用模板匹配的方法进行检测.于是需要首先选出视频中的一帧,但是在利用摄像头读视频的过程中我唯一能想到的方法就是: 1.在视 ...
- 在Jetson TX2上捕获、显示摄像头视频
参考文章:How to Capture and Display Camera Video with Python on Jetson TX2 与参考文章大部分都是相似的,如果不习惯看英文,可以看看我下 ...
- Python初学——窗口视窗Tkinter
此篇文章是跟着沫凡小哥的视频学习的,附上学习网址:https://morvanzhou.github.io/tutorials/python-basic/ 什么是 tkinter 窗口1.1 什么是 ...
- python cmd 窗口 中文乱码 解决方法 (附:打印不同颜色)
python cmd 窗口 中文乱码 解决方法 (附:打印不同颜色) 前言 在 python 开发中,有时候想通过cmd窗口来和用户交互,比如显示信息之类的,会比自己创建 GUI 来的方便,但是随之而 ...
- 运行python程序不显示cmd方法
运行python程序不显示cmd方法 Pythonw xxx.py 将*.py改成*.pyw,然后执行*.pyw Python.exe和pythonw.exe不同: 执行时没有控制台窗口 所有向原有的 ...
- Windows MFC 两个OpenGL窗口显示与线程RC问题
问题为:背景界面是一个OpenGL窗口(对话框),在其上弹出一个OpenGL窗口(模态对话框)时, 1.上方的OpenGL窗口能响应鼠标操作等并刷新: 2.当移动或放大缩小上方的OpenGL窗口时,其 ...
- 关于ajax载入窗口使用RedirectToAction在窗口显示的问题
在过滤器中过滤用户是否登录,没有登录就RedirectToAction("Login", "Auth", new { Area = "Account& ...
随机推荐
- 【leetcode 简单】 第八十三题 反转字符串中的元音字母
编写一个函数,以字符串作为输入,反转该字符串中的元音字母. 示例 1: 输入: "hello" 输出: "holle" 示例 2: 输入: "leet ...
- sklearn_PCA主成分降维
# coding:utf-8 import pandas as pd import numpy as np from pandas import Series,DataFramefrom sklear ...
- HTML5之2D物理引擎 Box2D for javascript Games 系列 第二部分
这是系列第二部分,之前部分在本博客中找 源码demo存放在https://github.com/willian12345/Box2D-for-Javascript-Games 向世界添加刚体 刚体(B ...
- JDK1.8源码ArrayList
线程不安全的,如果要想线程安全必须在创建的时候就采用线程安全的方式创建: List list = Collections.synchronizedList(new ArrayList(...)); 引 ...
- 【Educational Codeforces Round28】
咸鱼选手发现自己很久不做cf了,晚节不保. A.Curriculum Vitae 枚举一下间断点的位置. #include<bits/stdc++.h> using namespace s ...
- idea git revert 究竟做了啥
git里面实现撤销commit 这个据我目前所知,有至少4个途径可以做到 1.git reset 2.git revert 3.git rm –cached 4.git checkout 这个可以参考 ...
- xgboost gbdt特征点分烈点
lightGBM与XGBoost的区别:(来源于:http://baijiahao.baidu.com/s?id=1588002707760744935&wfr=spider&for= ...
- java基础20 StringBuffer缓冲类
1.概要 StringBuffer 其实就是一个存储字符的容器 字符串特点:字符串是常量;它们创建之后不能更改了字符串一旦发生变化,那么立马创建一个新的对象.注意:字符串的内容不适合频繁修改的,因为一 ...
- 淘宝开放平台TOP SDK调用对接淘宝或天猫
如果在淘宝/天猫上开了网店,用户自己也有一套自己的管理平台,这时可能会考虑和淘宝进行数据对接.这就需要考虑调用阿里提供的开发接口来推送和接收数据. 对接的方式有2种,一种是通过http接口,另外一种是 ...
- Java--Jackson转换Date,Timestamp 到格式化字符串
package com.diandaxia.test; import java.sql.Timestamp; import java.util.Date; /** * Created by del-b ...