源代码
Python
PythonGitHub
1#!/usr/bin/env python3
2"""Minimal PointCloud example: colorized point cloud from stereo depth + RGB."""
3
4import depthai as dai
5
6pipeline = dai.Pipeline()
7
8# Cameras
9colorSockets = pipeline.getDefaultDevice().getConnectedCameras(dai.CameraSensorType.COLOR)
10colorSocket = colorSockets[0] if colorSockets else dai.CameraBoardSocket.CAM_A
11color = pipeline.create(dai.node.Camera).build(colorSocket)
12
13# Color output aligned to depth
14colorOut = color.requestOutput((640, 400), type=dai.ImgFrame.Type.RGB888i,
15 resizeMode=dai.ImgResizeMode.CROP, enableUndistortion=True)
16
17depth = pipeline.create(dai.node.Depth).build(dai.node.Depth.Algorithm.AUTO, None, (640, 400))
18depth.setAlignTo(colorOut)
19
20# Point cloud
21pc = pipeline.create(dai.node.PointCloud)
22pc.initialConfig.setLengthUnit(dai.LengthUnit.METER)
23
24depth.depth.link(pc.inputDepth)
25colorOut.link(pc.inputColor)
26
27q = pc.outputPointCloud.createOutputQueue(maxSize=4, blocking=False)
28
29with pipeline:
30 pipeline.start()
31 while pipeline.isRunning():
32 pcd = q.get()
33 if pcd.isColor():
34 xyz, rgba = pcd.getPointsRGB()
35 numPoints = len(xyz)
36 else:
37 xyz = pcd.getPoints()
38 numPoints = len(xyz)
39 print(f"Points: {numPoints}, {pcd.getWidth()}x{pcd.getHeight()}, "
40 f"color={pcd.isColor()}, Z=[{pcd.getMinZ():.2f}, {pcd.getMaxZ():.2f}]")需要帮助?
请前往 OAKChina 官网 获取技术支持或解答您的任何疑问。