【python读取小觅智能双目相机视频流】

python读取小觅智能双目相机视频流

小觅智能双目相机产品详细参数

  1. 分辨率:2560x720; 1280x480

  2. 深度分辨率:1280x720; 640x480

  3. 帧率:60FPS

双目相机可用于双目测距,比如可以将小觅智能双目相机和YOLOv5等等检测算法结合,通过生成视差获取深度信息 从而实现测距功能

小觅智能双目相机长这样
【python读取小觅智能双目相机视频流】_第1张图片

【python读取小觅智能双目相机视频流】_第2张图片

  • 在win10系统中要从相机中打开双目需要将分辨率调节到1280x720,否则只能打开一个摄像头;

  • 在python是使用用opencv打开小幂双目时,会发现也只能打开一个摄像头, 这也是分辨率的问题

  • 接下里是python读取小觅智能双目相机视频流的代码,此外还对双目相机的左右视图进行了切割和保存

直接上代码

import cv2
import os

# cap = cv2.VideoCapture(4 + cv2.CAP_DSHOW) # win10系统
cap = cv2.VideoCapture(0)   # ubuntu系统
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 2560 )
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 720)

img_save = './test_img_save/'
left_right_frame_save = './left_right_frame/'
if not os.path.exists(img_save):
    os.makedirs(img_save)
if not os.path.exists(left_right_frame_save):
    os.makedirs(left_right_frame_save)

i = 0
while(cap.isOpened()):
    # ret返回布尔值
    ret, frame = cap.read()
    lefe_frame = frame[:, 0:1280, :]
    right_frame = frame[:, 1280:, :]

    cv2.imwrite(img_save+ 'img_%d.png'%i, frame)
    cv2.imwrite(left_right_frame_save+ '%d_left.png'%i, lefe_frame)
    cv2.imwrite(left_right_frame_save+ '%d_right.png'%i, right_frame)
    # # 展示读取到的视频矩阵
    # cv2.imshow('image', frame)
    cv2.imshow('left_frame', lefe_frame )
    cv2.imshow('right_frame', right_frame)
    # 键盘等待
    k = cv2.waitKey(1)
    # # q键退出
    # if k & 0xff == ord('q'):
    #     break

    i+=1
# 释放资源
cap.release()
# 关闭窗口
cv2.destroyAllWindows()

你可能感兴趣的:(#,opencv知识点整理,python,opencv)