首页 > 其他分享 >【本地摄像头调用】【按指定键结束】【点击窗口关闭按钮结束】

【本地摄像头调用】【按指定键结束】【点击窗口关闭按钮结束】

时间:2023-02-07 09:34:31浏览次数:44  
标签:AUTOSIZE 结束 cv2 关闭 按钮 窗口 ASCII 摄像头 waitKey


在使用cv2调用摄像头时,我们常用循环语句完成capture的read和imshow,
这使得当点击opencv窗口右上角关闭按钮时,关闭的仅仅是某个时刻的窗口,下一秒又会因为循环语句imshow出来。
提供了cv2.getWindowProperty获取窗口属性,实现关闭窗口时退出程序。

 1 # -*- coding: utf-8 -*-
 2 '''
 3 # cv2 调用摄像头时关闭窗口退出程序
 4 # https://blog.csdn.net/qq_44740544/article/details/106184890
 5     在使用cv2调用摄像头时,我们常用循环语句完成capture的read和imshow,
 6     这使得当点击opencv窗口右上角关闭按钮时,关闭的仅仅是某个时刻的窗口,
 7     下一秒又会因为循环语句imshow出来。该博客提供了cv2.getWindowProperty获取窗口属性,实现关闭窗口时退出程序。
 8 '''
 9 import cv2
10 
11 cap = cv2.VideoCapture(0)   # 调用笔记本的摄像头
12 
13 while cap.isOpened():
14     ret, frame = cap.read()
15     cv2.imshow('windowName', frame)
16 
17     # 点击小写字母q 退出程序
18     # print('输入字符:', cv2.waitKey(1))
19 
20     # https://blog.csdn.net/Jin1Yang/article/details/125206681
21     # cv.waitKey()是一个键盘绑定函数。其参数是以毫秒为单位的时间。
22     # cv2.waitKey(delay):
23     #       delay≤0:一直等待按键;
24     #       delay取正整数:等待按键的时间(ms)。
25     # 该函数的返回值:
26     #       等待期间有按键:返回按键的ASCII码(比如:Esc的ASCII码为27);
27     #       等待期间没有按键:返回 值为-1;
28 
29     ### 点击指定的字符 ord('q') 或者 对应的ASCII 的字符时,关闭窗口 97 - a / 27 - ESC
30         # ord() 函数是 chr() 函数(对于8位的ASCII字符串)或 unichr() 函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,
31         # 返回对应的 ASCII 数值,或者 Unicode 数值,如果所给的 Unicode 字符超出了你的 Python 定义范围,则会引发一个 TypeError 的异常。
32     # if cv2.waitKey(1) == ord('q'):
33     # if cv2.waitKey(1) == 27:    # Esc的ASCII码为27
34     if cv2.waitKey(1) == 97:    # a 的ASCII码为97
35         break
36 
37     ### 点击窗口关闭按钮退出程序
38     # 程序正常运行, cv2.WND_PROP_AUTOSIZE 返回值为 1
39     # cv2.getWindowProperty('windowName', cv2.WND_PROP_AUTOSIZE) 为 1.0
40     # print(cv2.getWindowProperty('windowName', cv2.WND_PROP_AUTOSIZE), '\t\t', cv2.WND_PROP_AUTOSIZE)
41     # if cv2.getWindowProperty('windowName', cv2.WND_PROP_AUTOSIZE) < 1:
42     if cv2.getWindowProperty('windowName', 1) < 1:
43         print(cv2.WND_PROP_AUTOSIZE)
44         break
45 
46 cap.release()
47 cv2.destroyAllWindows()

 






标签:AUTOSIZE,结束,cv2,关闭,按钮,窗口,ASCII,摄像头,waitKey
From: https://www.cnblogs.com/lyj0123/p/17097300.html

相关文章

  • Odoo 自定义form表单按钮点击事件处理程序
    实践环境Odoo14.0-20221212(CommunityEdition)代码实现方案1通过研究发现,点击odooform表单按钮时,会调用odoo14\odoo\addons\web\static\src\js\views\form\form_co......
  • eclipes中安卓创建虚拟的OK按钮不能点
     错误原因:先看自己的处理器,是intel还是其他的处理器,如果是intel的处理器,请在SDK中下载interhaxm检查是否安装成功,去验证haxm是否已安装成功时,结果却失败出错了:scqueryi......
  • 无线摄像头出口美国需要做FCC-ID认证吗
    无线摄像头是将无线接收器嵌入到网络摄像机里的新型监控摄像机。它使用WIFI频道、符合IEEE802.11B/G标准协议。FCC认证是美国EMC 强制性认证、主要针对9KHz-3000GHz的......
  • 海康大华华为宇视等监控摄像头通过GB28181协议接入到LiveGBS流媒体平台如何给监控摄像
    监控摄像头、录像机或者平台通过GB28181协议接入到LiveGBS流媒体平台后,如果有加上特殊水印的需求,可以在通道配置里面自行配置。1、编辑通道LiveGBS管理页面->国标设备->......
  • 在C语言中使用enter键结束循环
    1网上查到的信息,enter键可以有对应\n\r、\r\n、\r、\n),首先确认在C语言中getchar()获取的是什么字符(’\n‘)         2使用代码实现,通过enter结束循......
  • homeassistant接入rtsp摄像头
    米家摄像头没有开放onvif协议,家里又都是米家的摄像头我全网找了几篇破解刷固件的觉得不可靠又浪费时间这里就不得不提一句估计后续有时间我会用这个方案:https://github......
  • PyQt5按钮点击信号clicked报错
    提问: 我把python文件包移动到了e盘,然后编辑器connect就报黄色了。重装了pythonpyqt5编辑器,现在编辑器没有黄色,但是:本机QT信号不可调用。用之前写的代码运行不报错,现在......
  • 关于寒假集训结束...
    这八天完结了tarjan,并往后学习了lca,二分答案(应该算是复习)和开了一点高斯消元。对比其他人吧,我的速度有点过于慢了。尤其是二分答案,那三个题一个研究了一天,最后总感觉还......
  • 经纬恒润800万像素摄像头搭载嬴彻科技L3重卡正式量产
        近日,经纬恒润自主研发的800万像素摄像头搭载嬴彻科技L3级自动驾驶重卡正式量产。此项目中,每辆重卡搭载了7颗800万像素摄像头,这是经纬恒润首个800万像素摄像头量......
  • js + css 按钮鼠标移动光晕 跟随
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"conten......