OpenCV学习笔记-图像翻转和鼠标操作


图像翻转函数为flip(src, flipCode, dst= None)

flipCode: 翻转模式,flipCode==0垂直翻转(沿X轴翻转),flipCode>0水平翻转(沿Y轴翻转),flipCode<0水平垂直翻转(先沿X轴翻转,再沿Y轴翻转,等价于旋转180°)
鼠标操作的函数为
setMouseCallback(windowName, onMouse, param=None)
windowName :是要绑定的窗口名称
onMouse: 点击鼠标执行的函数
param:鼠标回调事件,默认情况下为0

OpenCV不提供任何处理窗口事件的方法。例如,当单机窗口的关闭按钮时,只是关闭窗口,并不能关闭应用程序,不过可以通过设置全局变量,影响条件来关闭程序

在摄像头上应用

import cv2 as cv
clicked = False
def onMouse(event, x, y, flags, param):
    global clicked
    if event == cv.EVENT_LBUTTONUP:
        clicked = True

cap = cv.VideoCapture(0)
cv.namedWindow('mywindow')
cv.setMouseCallback('mywindow', onMouse)

print('show camera feed. click window or press any key to stop')

success, frame = cap.read()
frame = cv.flip(frame, -1)
while success and cv.waitKey(1) == -1 and not clicked:
    cv.imshow('mywindow', frame)
    success, frame = cap.read()
    frame = cv.flip(frame, 1)

cv.destroyAllWindows()
cap.release()



已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页