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

opencv基础:几个常用窗口方法

开始说了一些opencv中的一些常用方法。

namedWindow方法

在OpenCV中,namedWindow函数用于创建一个窗口,并给它指定一个名字。这个函数的基本语法如下:

import  cv2cv2.namedWindow('窗口名称', '标识' )
  • 窗口名称:其实窗口名称,其实也是这个窗口的id,方便对其进行操作。

  • 标识,这个其实有一个默认值WINDOW_AUTOSIZE,用于设置窗口的各种属性。当然其还有很多值:

在这里插入图片描述

  • cv2.WINDOW_NORMAL : 窗口可改变大小,也是常用的一个窗口。

  • cv2.WINDOW_FULLSCREEN: 窗口是全屏显示。

  • cv2.WINDOW_OPENGL: 打开OpenGL绘图

但是如果如下写:

import  cv2cv2.namedWindow('窗口', cv2.WINDOW_NORMAL  )

窗口只会一闪而逝,所以一般不会单独时候,后面会有一个整体例子。

resizeWindow 方法

这个方法,可以设置创建好的窗口,具体呈现的大小。

cv2.resizeWindow('窗口名称', 宽(直接数值),高(直接数值))

窗口名称必须存在namedWindow方法创建的窗口名字中。

来一个例子:

import  cv2
# cv2.namedWindow('窗口名称', cv2.WINDOW_NORMAL  )
cv2.resizeWindow('窗口名称', 1920, 1080)

在这里插入图片描述

imshow 方法

其实前面两个就算是创建好好窗口,窗口也是一瞬就消失需要一个将这个窗口持续呈现,是所以就有个这个方法。

cv2.imshow('窗口名称', img)
  • 窗口名称:窗口的名称,是一个字符串。在调用cv2.imshow后,这个窗口会显示对应的图像。
  • img:要显示的图像,通常是一个NumPy数组。这个数组的维度是二维的,第一个维度表示图像的高度,第二个维度表示宽度。此外,数组的元素应该是8位无符号整数类型,因为OpenCV默认以BGR方式解释图像。可以是cv2.imread() 读取的图片返回值
import  cv2cv2.namedWindow('窗口名称', cv2.WINDOW_NORMAL  )
cv2.resizeWindow('窗口名称', 1920, 1080)
# 这个地方的0代表的是灰度模式
cv2.imshow('窗口名称', 0)

但是这样的,窗口还是会一闪即逝,还需要其它方法。

waitKey 方法

cv2.waitKey(delay=0)
  • delay:表示在函数返回之前等待用户输入的毫秒数。如果参数为0,则会一直等待用户输入;如果参数大于0,则会在指定的时间后自动返回,而不管用户是否输入。

这个函数返回一个整数,表示用户输入的字符的ASCII码。如果用户按下回车键(ASCII码为10),则函数返回13。

import  cv2cv2.namedWindow('窗口名称', cv2.WINDOW_NORMAL  )
cv2.resizeWindow('窗口名称', 1920, 1080)
# 这个地方的0代表的是灰度模式
cv2.imshow('窗口名称', 0)
# 0 代表一直等到 数值的话,其单位毫秒
key = cv2.waitKey(0)

在这里插入图片描述

destroyAllWindows和destroyWindow 方法

这个看名字就知道了就是销毁窗口。

  • destroyAllWindows:销毁所有的窗口
  • destroyWindow :销毁某个的窗口
    cv2.destroyAllWindows()cv2.destroyWindow("窗口名称")

现在来一个整体的例子:

import  cv2
cv2.namedWindow('窗口名称', cv2.WINDOW_NORMAL  )
cv2.resizeWindow('窗口名称', 1920, 1080)
# 这个地方的0代表的是灰度模式
cv2.imshow('窗口名称', 0)
# 0 代表一直等到 数值的话,其单位毫秒
key = cv2.waitKey(0)
if(key == 'q'):# 这个是销毁所有窗口# cv2.destroyAllWindows()# 这个是销毁指定窗口cv2.destroyWindow("窗口名称")

imread 方法

imread() 用于读取图像文件并将其加载到内存中。它接受一个参数,即要读取的图像文件的路径,并返回一个 NumPy 数组,其中包含图像的像素数据。

cv2.imread(filename[, flags])
  • filename 是要读取的图像文件的路径。
  • flags是一个可选参数,用于指定读取图像的方式。它可以是以下值之一:
    • cv2.IMREAD_COLOR:以彩色方式读取图像(默认值)。
    • cv2.IMREAD_GRAYSCALE:以灰度方式读取图像。
    • cv2.IMREAD_UNCHANGED:以原始格式读取图像(包括 alpha 通道)。
import  cv2
cv2.namedWindow('阴风阵阵', cv2.WINDOW_NORMAL )
cv2.resizeWindow('阴风阵阵', 1092, 514)
img=cv2.imread('1.jpg')
cv2.imshow('阴风阵阵', img)
# 0 代表一直等到 数值的话,其单位毫秒
key = cv2.waitKey(0)
if(key == 'q'):# 这个是销毁所有窗口# cv2.destroyAllWindows()# 这个是销毁指定窗口cv2.destroyWindow("阴风阵阵")

在这里插入图片描述

http://www.lryc.cn/news/127485.html

相关文章:

  • web后端解决跨域问题
  • 06 json数据解析和列表控件
  • 分布式 - 消息队列Kafka:Kafka生产者架构和配置参数
  • MAUI+Blazor:windows 打包踩坑
  • web集群学习:搭建 LNMP应用环境
  • 我的创作纪念日(256天)
  • Vue 转 React 指南
  • Oracle外部表ORACLE_LOADER方式加载数据
  • 【RocketMQ】NameServer总结
  • Wordcloud | 风中有朵雨做的‘词云‘哦!~
  • 《孤注一掷》现实版:29万打水漂,华为程序员也躲不过的诈骗
  • C语言库函数之 qsort 讲解、使用及模拟实现
  • Maven之mirrorof范围
  • 游戏中的UI适配
  • 【Linux命令详解 | gzip命令】 gzip命令用于压缩文件,可以显著减小文件大小
  • IP 协议的相关特性和数据链路层相关知识总结
  • 探索C语言中的常见排序算法
  • 【UE】Web Browser内嵌网页在场景中的褪色问题
  • rust入门系列之Rust介绍及开发环境搭建
  • embed mongodb 集成spring
  • ssh远程连接服务器
  • 性能分析之MySQL慢查询日志分析(慢查询日志)
  • 每日一练 | mongo集群如何创建分片键
  • Postman
  • chapter 3 Free electrons in solid - 3.1 自由电子模型
  • 搭建博客时前端美化内容CSS推荐
  • Linux中 socket编程中多进程/多线程TCP并发服务器模型
  • 【内网穿透】如何实现在外web浏览器远程访问jupyter notebook服务器
  • win10下如何安装ffmpeg
  • 分代收集 + 垃圾回收算法