opencv -GUI接口介绍

 原文: GUI接口之读写保存图像


环境资源准备

  作者使用的是64位的win7 系统

1.   软件及版本

下载opencv-3.2.0-vc14 版本,python 使用 anaconda 2.4 版本,使用3.x版本的anaconda存在兼容性问题(目前opencv版本使用python2.7版本玩的)。

安装Python Anaconda2.4,PyCharm IDE,及opencv,将opencv\build\Python\2.7\x64  目录下的cv2.pyd文件拷贝到Anaconda2\Lib\site-packages下,打开PyCharm

2. 配置 pycharm 解释器

    参考文章 : 配置python解释器

    不配置时,在编写代码时,pycharm 一直提示: “NO python interpreter configured for the project”

   通过如下界面将解释器配置为 anaconda2。

 

   在创建工程,创建新的文件后,在pycharm中并不能立即运行或者debug需要配置Run/Debug


图像文件读写

 1. Read an image

      函数: cv2.imread(dir, flag)

     参数

      dir: 绝对路径或者当前python目录下的图像

       flag选项有三个

      cv2.IMREAD_COLOR : Loads a color image. Any transparency of image will be neglected. It is the default flag.
      cv2.IMREAD_GRAYSCALE : Loads image in grayscale mode
      cv2.IMREAD_UNCHANGED : Loads image as such including alpha channel

      上述三个宏对应的值分别为1, 0,-1

import numpy as np
import cv2

# Load an color image in grayscale
img = cv2.imread('messi5.jpg',0)
   如果read读取时,路径下面没有messi5.jpg文件,也不会报错,而仅仅在print img时,提示none,在进行实际编码时,要判断img的值

2. Display an image

       函数: cv.imshow("window name",image)

       参数

      window name: 打开图像的窗口 名称

      image : 1中读取的图像的句柄

     

cv2.namedWindow('image', cv2.WINDOW_NORMAL)
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

3. Write an image

    imwrite("dir",img_handler)

   dir: 目录及文件名

  img_handler: 图像句柄


4. 视频播放

  基本原理就是打开窗口,将视频以图画的形式不断显示。waitKey的时间修改为100 ms,相当于慢放。

 

import numpy as np
import cv2
cap = cv2.VideoCapture("test.avi")
while (cap.isOpened()):
    ret,frame = cap.read()
    gray =cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)

    cv2.imshow('frame',gray)
    if cv2.waitKey(100) & 0xff == ord('q'):
        break
cap.release()
cv2.destroyAllWindows()



其他GUI的操作

GUI接口

包括:

1)视频的抓取、播放、保存接口

2)鼠标事件的感知接口

3)画图形。例如圆,长方形 ,椭圆等

4)调色板功能介绍


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值