摄像头技术OpenCV

进一步添加功能:

运动检测、调整亮度对比度、截图时添加日期水印、保存视频时可选择不同编码格式

摄像头技术OpenCV_第1张图片

完整代码:

import cv2
import time
import datetime


def camera_system():
    # 打开摄像头
    cap = cv2.VideoCapture(0)

    if not cap.isOpened():
        print("无法打开摄像头")
        return

    # 获取摄像头的宽度和高度
    frame_width = int(cap.get(3))
    frame_height = int(cap.get(4))

    # 定义视频编码器和创建视频写入对象
    encodings = {
        'XVID': cv2.VideoWriter_fourcc(*'XVID'),
        'MJPG': cv2.VideoWriter_fourcc(*'MJPG'),
        'H264': cv2.VideoWriter_fourcc(*'H264')
    }
    current_encoding = 'XVID'
    out = None
    recording = False

    # 加载人脸检测器
    face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')

    # 运动检测初始化
    first_frame = None
    motion_detected = False

    frame_count = 0
    start_time = time.time()
    gray_mode = False
    flip_mode = False
    brightness = 0
    contrast = 100

    while True:
        # 读取一帧画面
        ret, frame = cap.read()

        if not ret:
            print("无法获取画面")
            break

        # 计算帧率
        frame_count +

你可能感兴趣的:(计算机视觉项目,机器学习,人工智能,python)