创建和显示窗口

创建和显示窗口,第1张

目录

1.预备知识

2.窗口显示


1.预备知识
  • namedWindow()   创建命名窗口
  • imshow()               显示窗口
  • destroyAllwindows()      摧毁窗口
  • resizeWindow()    改变窗口大小
  • waitKey()         等待用户输入

这里的命名都是首字母小写,后面单词的首字母大写,是c++风格的命名规范。

python函数命名规范,单词首字母小写,两个单词用下划线连接wait_key

并且严格区分大小写

  • namedWindow()   创建命名窗口

里面有两个参数,第一个是字符串,如"window",创建一个window名字的窗口

第二个是窗口设置,cv2.WINDOW_NORMAL,手动设置窗口大小。

或者cv2.WINDOW_AUTOSIZE,自动设置窗口大小

  • imshow()      显示窗口

里面有两个参数,第一个是显示哪一个窗口,如"window",显示window名字的窗口

第二个传递变量,如果不需要为0

  • resizeWindow()    改变窗口大小

第一个参数,"window"窗口名字是window,后面两个是宽度和高度。如800,600

注意:要改变窗口大小,namedWindow()创建命名窗口的时候,不能设置成cv2.WINDOW_AUTOSIZE自动设置模式

  • waitKey()         等待用户输入

waitKey会返回按键的ASCII码,利用waitKey销毁窗口

ord()  #ord是python中计算ASCII值得函数,例如ord('a')--->97

0代表接受任意按键,如果给其他任意整数,表示等待按键的时间,单位是毫秒

如果等待时间过了,就不等待了

并且python里面不支持'a'==97,C语言中支持

  • destroyAllwindows()      摧毁窗口

不需要参数,摧毁窗口

2.窗口显示
import cv2     # opencv的库函数为cv2

cv2.namedWindow("hello", cv2.WINDOW_NORMAL)  # 创建一个hello的窗口
cv2.resizeWindow("hello", 80, 600)             # 修改hello窗口的大小,800宽,600高

while True:         # 循环显示窗口,不然会一闪而过

    cv2.imshow("hello", 0)          # 显示窗口,没有定义变量,第二个参数为0
    a = cv2.waitKey(0)                 # 等待用户按键
    if ord('q') == a:
        cv2.destroyAllWindows()         # 当接收到q,摧毁窗口
        break                           # 跳出循环

注意:有的程序员第10行的退出代码,会写成

if a & 0xFF == ord('q')

因为ASCII码是8位的,相当于取a的低八位。写不写不影响

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/732346.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-27
下一篇 2022-04-27

发表评论

登录后才能评论

评论列表(0条)

保存