基本思想:学习oak双目相机的使用复现官网demo和简单的人脸检测
前言:
设备型号:OAK-D-Pro
一、环境配置参考
台式机ubuntu系统调用OAK相机_MFT小白的博客-优快云博客
二、测试
2.1 test_depthai.py
按下 t 键可实现图像切换,观察视差。
import depthai as dai
import cv2
import numpy as np
# # 实例化管道对象
# pipeline = dai.Pipeline()
# mono = pipeline.createMonoCamera()
# mono.setBoardSocket(dai.CameraBoardSocket.LEFT)
# xout = pipeline.createXLinkOut()
# xout.setStreamName("left")
# mono.out.link(xout.input)
# with dai.Device(pipeline) as device:
# queue = device.getOutputQueue(name="left")
# frame = queue.get()
# imOut = frame.getCvFrame()
# cv2.imshow("imOut", imOut)
# cv2.waitKey()
def getFrame(queue):
# Get frame from queue
frame = queue.get()
# Convert frame to OpenCV format and return
return frame.getCvFrame()
def getMonoCamera(pipeline, isLeft):
# Configure mono camera
mono = pipeline.createMonoCamera()
# Set Camera Resolution
mono.setResolution(dai.MonoCameraProperties.SensorResolution.THE_400_P)
if isLeft:
# Get left camera
mono.setBoardSocket(dai.CameraBoardSocket.LEFT)
else :
# Get right camera
mono.setBoardSocket(dai.CameraBoardSocket.RIGHT)
return mono
def getStereoPair(pipeline, monoLeft, monoRight):
# Configure stereo pair for depth estimation
stereo = pipeline.createStereoDepth()
# Checks occluded pixels and marks them as invalid
stereo.setLeftRightCheck(True)
# Configure left and right cameras to work as a stereo pair
monoLeft.out.link(stereo.left)
monoRight.out.link(stereo.right)
return stereo
def mouseCallback(event, x, y, flags, param):
global mouseX, mouseY
if event == cv2.EVENT_LBUTTONDOWN:
mouseX = x
mouseY = y
if __name__ == '__main__':
# pipeline = dai.Pipeline()
# # Set up left and right cameras
# monoLeft = getMonoCamera(pipeline, isLeft = True)
# monoRight = getMonoCamera(pipeline, isLeft = False)
# # Set output Xlink for left camera
# xoutLeft = pipeline.createXLinkOut()
# xoutLeft.setStreamName("left")
# # Set output Xlink for right camera
# xoutRight = pipeline.createXLinkOut()
# xoutRight.setStreamName("right")
# # Attach cameras to output Xlink
# monoLeft.out.link(xoutLeft.input)
# monoRight.out.link(xoutRight.input)
mouseX = 0
mouseY = 640
# Start defining a pipeline
pipeline = dai.Pipeline()
# Set up left and right cameras
monoLeft = getMonoCamera(pipeline,

本文介绍了如何在OAK-D-Pro设备上使用DepthAI进行环境配置,包括配置MonoCamera和StereoDepth,以及利用预训练模型进行人脸检测和深度测量。提供了test_depthai.py和test_model_depthai.py代码示例,展示了如何实现实时的图像处理和结果展示。
最低0.47元/天 解锁文章
777

被折叠的 条评论
为什么被折叠?



