zoukankan      html  css  js  c++  java
  • OpenCV中各函数解释

    举个例子

    import cv2
    clicked =False
    
    def onMouse(event,x,y,flags,param):
        global clicked
        if event == cv2.EVENT_LBUTTONUP:
            clicked=True
    
    cameraCapture =cv2.VideoCapture(0)
    cv2.namedWindow("MyWindow",0)
    cv2.resizeWindow("MyWindow",640,480)
    cv2.setMouseCallback("MyWindow",onMouse)
    
    print "Showing camera feed.Click window or press any key to stop."
    
    success,frame=cameraCapture.read()
    while success and cv2.waitKey(1)==-1 and not clicked:
        cv2.imshow("MyWindow",frame)
        success,frame=cameraCapture.read()
    cv2.destroyWindow("MyWindow")
    cameraCapture.release()

    一、namedWindow(const String,ing flag)

      Flag=0,表示按原图尺寸显示

      Flag=1,表示窗口可以自适应

    二、waitKey()

      waitKey()与waitKey(0)表示无线等待,针对视频流来说,cv2.waitKey(0)表示只显示当前帧图像,相当于暂停

      waitKey(n)表示等待n毫秒关闭窗口,针对视频流来说,cv2.waitKey(1)表示延时1ms切换到下一帧

      当等待时间内无任何操作,等待结束返回-1

      如果等待时间内有输入字符那么返回该字符的ASCII值

    e.g. while(waitKey(1)!='q'): 或者如上程序while waitKey(1)== -1:

      针对第一个:waitKey(1)表示延迟一秒;while waitKey(1):表示一直延迟;while(waitKey(1)!='q'):表示一直延迟直到键入q时

      针对第二个:前面同理;while waitKey(1)== -1:表示一直延迟,不键入字符。

    三、VideoCapture()和read()

      cameraCapture=cv2.VideoCapture(0)

      success,frame = cameraCapture.read()

      VideoCapture(0)表示打开笔记本内置摄像头,还可以VideoCapture("../test.avi")

      read()函数表示按帧读取视频,success,frame是read()的两个返回值,success是布尔值——如果读取帧是正确的则返回True,如果文件读取到结尾则返回False,Frame表示的是每一帧的图像,是一个三维矩阵

      

  • 相关阅读:
    SQL怎么随机提取出一条信息 mysql 获取随机记录
    css3 渐变 各浏览器兼容
    php的curl和socket的区别 转
    php获取本机真实IP地址
    SSH超时断开 ssh 老掉线
    php 获取远程服务器信息 get_headers 的使用
    如何删除右键菜单中的Catalyst(TM) Control Center选项
    多线程概念、案例!
    网络编程
    我的博客开通啦
  • 原文地址:https://www.cnblogs.com/cc-xiao5/p/11239587.html
Copyright © 2011-2022 走看看