【发布时间】:2015-05-22 00:51:16
【问题描述】:
我有兴趣使用立体相机来计算视频/图像的深度。该相机是来自 Leopard Imaging https://www.leopardimaging.com/LI-USB30-V024STEREO.html 的 USB 3.0 立体相机。我正在使用 MAC OS X 顺便说一句。
他们的客户支持告诉我这是一台“UVC”相机。当连接到苹果电脑时,它会显示绿色图像。
我的最终目标是使用 OpenCV 从两个镜头中获取左右帧,以便计算深度。我熟悉 OpenCV,但不熟悉使用立体相机。任何帮助将非常感激。到目前为止,我一直在 Python 3 中这样做:
import numpy as np
import cv2
import sys
from matplotlib import pyplot as plt
import pdb; pdb.set_trace()
print("Camera 1 capture", file=sys.stderr)
cap = cv2.VideoCapture(1)
print("Entering while", file=sys.stderr)
while(True):
_ = cap.grab()
retVal, frame = cap.retrieve()
#gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imshow('frame', frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
这行得通,但它只给了我一张没有深度的绿色图片/图像。有关如何从相机获取左右帧的任何建议?
【问题讨论】:
-
你得到的可能只是红外图像。要检索立体帧,您需要 openni 的帮助,默认情况下它不是内置的。(检查:
cv2.getBuildInformation()),因此您需要 openni sdk,并从 src 编译 opencv。
标签: python opencv openni stereo-3d