繁体   English   中英

OpenCV 不想用 cv2.COLOR_BGR2GRAY 停止视频录制

[英]OpenCV do not want to stop video recording with cv2.COLOR_BGR2GRAY

当我运行此代码时:

from cv2 import *
image = cv2.VideoCapture(0, cv2.CAP_DSHOW)
fourcc_cod = cv2.VideoWriter_fourcc(*"XVID")
name = input()
video = cv2.VideoWriter(f"{name}.AVI",fourcc_cod,60,(640,480))
while (True):
    check,frame = image.read()
    frame1 = cvtColor(frame, cv2.COLOR_BGR2GRAY)
    video.write(frame1)
    cv2.imshow('myimage',frame1)
    if waitKey(1) ord('q'):
        cv2.destroyAllWindows()
video.release()
image.release()

即使我按“q”,它也不会停止录制视频

试试这个片段。

import cv2
cap = cv2.VideoCapture(0)
name = input()
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter(f'{name}.avi', fourcc, 20.0, (640, 480))
while True:
    ret, frame = cap.read()
    frame = cv2.flip(frame, 0)
    # uncomment belove line for grayscale
    # frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    # write the flipped frame
    out.write(frame)
    cv2.imshow('frame', frame)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break
# Release everything if job is finished
cap.release()
out.release() # video file writer
cv2.destroyAllWindows()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM