同步采集双usb摄像头,保存图片用于标定

import os
import threading
import time
import cv2
import numpy as np
cap1 = cv2.VideoCapture(0)
cap1.set(3,800)
cap1.set(4, 600)
cap2 = cv2.VideoCapture(1)
cap2.set(3,800)
cap2.set(4, 600)

# 拍照文件目录
folder = 'img/'
if os.path.exists(folder):
    pass
else:
    os.makedirs(folder)

# 拍照次数
counter = 1

def shot(pos, frame):
    global counter
    path = folder + pos + "_" + str(counter) + ".bmp"
    cv2.imwrite(path, frame)
    print("snapshot saved into: " + path)

#cv2.namedWindow("capture", 0)

while cap1.isOpened() and cap2.isOpened():
    # success0 = cap1.grab()
    # success1 = cap2.grab()
    # if success0 and success1:
    #     frame1 = cap1.retrieve()
    #     frame2 = cap2.retrieve()

    _, frame1 = cap1.read()
    _, frame2 = cap2.read()
    if not _:
        break
    # imgray = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
    # cv2.imshow("frame1", frame1)
    # cv2.imshow("frame2", frame2)
    frameUp = np.hstack((frame1, frame2))
    cv2.imshow("frame2", frameUp)
    k = cv2.waitKey(100) & 0xff

    if k ==27:   #Esc
        # cv2.imwrite("frame1.jpg", frame1)
        # cv2.imwrite("frame2.jpg", frame2)
        break
    elif k == ord('q'):
        # 存储图片
        # cv2.imwrite("camera.jpg",  frameUp )
        shot("left", frame1)
        shot("right", frame2)
        counter = counter + 1
        # cv2.imwrite("frame1.jpg", frame1)
        # cv2.imwrite("frame2.jpg", frame2)
        continue

cap1.release()
cap2.release()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值