加载中...

OpenCV窗口操作

在Python中创建窗口

import  cv2
import  numpy as  np

cv2.namedWindow('new', cv2.WINDOW_NORMAL)
cv2.resizeWindow('new', 1920, 1080)
cv2.imshow('new', 0)

key = cv2.waitKey(0)
if(key == 'q'):
    exit()

cv2.destroyAllWindows()

加载图片

import  cv2
import  numpy as  np

cv2.namedWindow('img', cv2.WINDOW_NORMAL)
img = cv2.imread("/D/img")
cv2.imshow('img', img)

key = cv2.waitKey(0)
if(key == 'q'):
    exit()

cv2.destroyAllWindows()

保存图片

import  cv2
import  numpy as  np

cv2.namedWindow('img', cv2.WINDOW_NORMAL)
img = cv2.imread("/D/img")
cv2.imshow('img', img)

key = cv2.waitKey(0)
if(key & 0xFF == ord('q')):
    break
elif(key & 0xFF == ord('s')):
    cv2.imwrite("/D/img",img)
cv2.destroyAllWindows()

读取视频

import  cv2
import  numpy as  np

cv2.namedWindow('video', cv2.WINDOW_NORMAL)
cv2.resizeWindow('video', 1920, 1080)
#获取视频设备
cap = cv2.VideoCapture("D:/demoqt/go.mp4")

while True:
    ret, frame = cap.read()
    cv2.imshow('video', frame)
    key = cv2.waitKey(1)
    if(key & 0xFF == ord('q')):
        break
#释放
cap.release()
cv2.destroyAllWindows()

控制鼠标

import cv2
import numpy as np

def mouse_callback(event, x, y, flags, userdata):
    print(event)
cv2.namedWindow('mouse', cv2.WINDOW_NORMAL)
cv2.resizeWindow('mouse', 640, 360)
#设置鼠标回调
cv2.setMouseCallback('mouse', mouse_callback, "123")
#先高后长
img = np.zeros((360, 640,  3), np.uint8)
while True:
    cv2.imshow('mouse', img)
    key = cv2.waitKey(1)
    if key & 0xFF == ord('q'):
        break
cv2.destroyAllWindows()

trackbar操作

import cv2
import numpy as np

def callback():
    pass
#创建窗口
cv2.namedWindow('trackbar', cv2.WINDOW_NORMAL)

#创建trackbar
cv2.createTrackbar('R', 'trackbar',  0, 255, callback)
cv2.createTrackbar('G', 'trackbar',  0, 255, callback)
cv2.createTrackbar('B', 'trackbar',  0, 255, callback)

img = np.zeros((480, 640, 3), np.uint8)

while True:
    

    r = cv2.getTrackbarPos('R', 'trackbar')
    g = cv2.getTrackbarPos('G', 'trackbar')
    b = cv2.getTrackbarPos('B', 'trackbar')

    img[:] = [b, g, r]

    cv2.imshow('trackbar', img)

    key = cv2.waitKey(10)
    if key & 0xFF == ord('q'):
        break

cv2.destroyAllWindows()
posted @ 2022-03-21 14:01  江上莲花香  阅读(212)  评论(0)    收藏  举报