基于Opencv的摄像头显示

import cv2
import argparse

#read_video
#获取参数
parser = argparse.ArgumentParser()

#添加参数
parser.add_argument(‘video_output’, help=‘video output’)

#解析参数
args = parser.parse_args()

#加载路径

capture = cv2.VideoCapture(0)

#是否摄像头打开
if capture.isOpened() is False:
print(‘Camera Error!’)

#获取帧的宽度、高度、fps
frame_width = capture.get(cv2.CAP_PROP_FRAME_WIDTH)
frame_height = capture.get(cv2.CAP_PROP_FRAME_HEIGHT)

fps = capture.get(cv2.CAP_PROP_FPS)

#对视频进行编码
fourcc = cv2.VideoWriter_fourcc(*“XIVD”)
#output_color = cv2.VideoWriter(args.video_output, fourcc, int(fps), (int(frame_width), int(frame_height)), True)
output_gray = cv2.VideoWriter(args.video_output, fourcc, int(fps), (int(frame_width), int(frame_height)), False)

#读取灰度视频
while capture.isOpened():
ret, frame = capture.read()
if ret is True:
# 将彩色视频存入新的视频文件中
frame = cv2.flip(frame, 1) # 水平翻转
# color_frame = frame
# output_color.write(color_frame)

    # 彩色转为灰度
    gray_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    # 将灰度视频存入新的视频文件中
    output_gray.write(gray_frame)

    # 显示视频
    # cv2.imshow('color', color_frame)
    cv2.imshow('gray', gray_frame)

    if cv2.waitKey(20) & 0xFF == ord('q'):
        break
else:
    break

capture.release()
output_gray.release()
cv2.destroyAllWindows()

你可能感兴趣的:(Opencv,opencv)