机器视觉——cv2窗口

1、窗口控制

1.1 创建窗口

cv2.imshow()函数在显示图像时,指定的窗口如果不存在,则会按默认设置创建一个窗口,窗口大小由图像大小决定,且不能更改。

cv2.nameWindow()函数用于创建窗口,格式如下:

cv2.namedWindow(window_name, flag)

【参数说明】

  • window_name:窗口名称
  • flag:窗口属性

常用的属性:

  • cv2.WINDOW_NORMAL:用户可以调整窗口大小,无限制。
  • cv2.WINDOW_AUTOSIZE:默认值,用户无法调整窗口大小,窗口大小由显示的图像决定。
  • cv2.WINDOW_FULLSCREEN:窗口将全屏显示。
  • cv2.WINDOW_GUI_EXPANDED:窗口中可显示状态栏和工具栏。
  • cv2.WINDOW_FREERATIO:窗口将尽可能多地显示图片(无比例限制)。
  • cv2.WINDOW_KEEPRATIO:窗口由图像的比例决定。

示例:

import numpy
import cv2
img=numpy.zeros((240,320),dtype=numpy.uint8)    #创建黑色图像
img[70:170,110:210]=255                         #设置白色区域
cv2.namedWindow('test3-1',cv2.WINDOW_NORMAL)    #创建普通窗口
cv2.imshow('test3-1',img)                       #在窗口中显示图像
cv2.waitKey(0)

【运行结果】

机器视觉——cv2窗口_第1张图片

1.2 关闭窗口

OpenCV两个用于关闭窗口的函数:

(1)关闭所有窗口

cv2.destroyAllWindows()

(2)关闭制定窗口

cv2.destroyWindow (winname)

1.3 调整窗口尺寸

cv2.resizeWindow()函数用于更改窗口大小,其基本格式如下:

cv2.resizeWindow(winname,size)

【参数说明】

  • winname:窗口名称
  • size:表示窗口大小的二元组
import cv2
img=cv2.imread('lena.jpg')  	#读取图像
s=img.shape
cv2.imshow('lena',img)          #显示图像
key=cv2.waitKey(500)
cv2.resizeWindow('lena',(s[0]//2,s[1]//2))
cv2.waitKey(0)

你可能感兴趣的:(opencv,计算机视觉,人工智能,python)