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表示的是每一帧的图像,是一个三维矩阵

  

转载于:https://www.cnblogs.com/cc-xiao5/p/11239587.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值