Young87

SmartCat's Blog

So happy to code my life!

游戏开发交流QQ群号60398951

当前位置:首页 >跨站数据

百度AI市场热品试用 | 与TOF深度摄像头的初次交手

偶然机会,因合作项目需要收到了PicoZense TOF 深度摄像头 DCAM710,一款高性能的基于TOF的RGBD摄像头模组。

开箱

打开包装,看到的是 DCAM710的白色包装盒(12.4cm * 12.4cm * 5.4cm),外包装感觉简单干净
DCAM710的清单包含3样物品:

  • 摄像头模组一部
  • 电源适配器一部
  • USB 数据线一根
    在这里插入图片描述
    在这里插入图片描述
    打开盒子,映入眼帘的摄像头模组(103mm * 22mm * 33mm)和电源适配器;摄像头模组背部标签介绍了摄像头的主要指标值,分别是深度图的 FOV,RGB 图的 FOV,以及校正深度等;另外摄像头的底部有具体型号的介绍。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    USB 数据线在下层的盒子里,盒子上标有 USB Cable;拿出数据线简单测量了下,长度差不多90cm。
    在这里插入图片描述

试用

此款 Pico 公司采用飞行时间测距技术(TOF: Time of Flight)研发的 3D 成像模组。具有精度高、环境适应性强、尺寸小等优点。下面,我们来一步步解读。

第一步

通过PicoZense SDK 开发者指南,发现DCAM710这款TOF 相机支持 windows 和 linux 系统;windows 可以支持win7/8/10,linux支持 ubuntu 14.04/16.04。在这里不得不给PicoZense SDK 开发者指南点赞,提供的指南内容非常详细,按照给定的步骤就可以搭建试用环境。(关于 SDK 开发者指南文档的获取,可直接拨打店铺400电话与服务商客服人员联系)

第二步

测试DCAM710,选择了 ubuntu 16.04作为测试系统,重新安装了系统。实际的硬件跟笔记本电脑的连接比较简单,直接试用 USB 数据线将摄像头和笔记本电脑连接即可。
在这里插入图片描述

在运行具体程序之前,需要按照开发者指南进行所需的依赖安装,说明如下:

  • 对于已准备的 ubuntu 16.04系统,因为是最简版安装,所以需要先安装 gcc,g++,make 等工具;直接使用 ubuntu 自带的管理工具 apt-get安装即可。
  • 在终端中运行 sudo apt-get install v4l-utils,安装 v4l (video4linux)相关工具;然后运行 v4l2-ctl --list-devices 查看当前系统能够识别出来的视频设备列表。
    ——v4l是Linux 内核中关于视频设备的子系统,为linux 下的视频驱动提供了统一的接口,使得应用程序可以使用统一的API 函数操作不同的视频设备,极大地简化了视频系统的开发和维护。
    在这里插入图片描述
  • 安装 VDPAU(Video Decode and Presentation API for Unix),安装 libvdpau-dev 及 vdpauinfo。运行 vdpauinfo 查看,电脑是否支持 vdpau。支持时的输出参看下图。
    ——VDPAU最初由NVIDIA开发的针对其GeForce 8系列以及更高系列的GPU[2] ,在UNIX和类UNIX系统(包括 Linux、FreeBSD和Solaris)下基于X窗口系统下的开源库(libvdpau)和API。
    在这里插入图片描述

如果出现如下错误:
display: :0 screen: 0
Failed to open VDPAU backend libvdpau_i965.so: cannot open shared object file: No such file or directory
Error creating VDPAU device: 1
则执行如下命令:
cd /usr/lib/x86_64-linux-gnu/vdpau/
sudo ln -s libvdpau_va_gl.so libvdpau_i965.so
sudo ln -s libvdpau_va_gl.so.1 libvdpau_i965.so.1

对于 Intel 显卡的电脑,需要进行以下操作:
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install libvdpau-va-gl1
sudo apt-get install i965-va-driver
以上针对这块摄像头的依赖安装已经完成,在安装过程中如果发现还有其他依赖安装未完成,可以自行安装。

接下来,运行 SDK 里的 sample。(SDK 的获取,可直接拨打店铺400电话与服务商客服人员联系)
首先看下 SDK 的目录结构
在这里插入图片描述

  • Config 目录里是关于当前 sdk 的一下默认配置。
  • Document 目录里提供的是针对这块摄像头的中文版和英文版开发者指南,格式位 pdf。
  • Include 目录主要包括SDK 的头文件,如 PicoZense_api.h,PicoZense_define.h。从头文件的命名来看,就可以判断这块摄像头的 SDK 代码是很规范的。
  • Lib 目录主要包含 SDK 的 lib 文件,如 PicoZense_api.lib。Linux SDK 的 Lib 目录包含共 享库 so 文件。
  • Samples 目录主要包含使用 PicoZense SDK 开发的例程;包括 DepthFrameReader,FrameViewer等。
  • Thirdparty 目录主要包含 sdk 依赖的第三方库,主要是 opencv。
  • Tools 目录包含可查看 PicoZense 深度摄像头的深度图像,IR 灰度图像和彩色图像的工具 FrameViewer,与使用 Samples 目录中的 FrameViewer 编译出来的一致。
    在命令行模式下进入Samples
    在这里插入图片描述
    可以看到 Samples 下主要是读取不同形式帧信息的示例,如深度帧,灰度帧,RGB帧等。其中 FrameViewer 是可以同时读取多种帧信息的,尝试运行 FrameViewer 代码。
  1. SDK 已经将 Makefile 文件准备好了,直接 make 编译即可。成功编译后会发现生成了可执行的二进制文件 FrameViewer。
  2. 将硬件DCAM710摄像头通过 USB 数据线连接到笔记本电脑上,待摄像头的指示灯为绿色,表示系统能够成功识别该款摄像头。
  3. 在 Samples 目录下运行 FrameViewer,可以看到默认会看到深度图和 RGB 图。
    在这里插入图片描述
    通过阅读 FrameViewer.cpp 的代码发现,当前程序默认使用 PsNearRange 深度模式(main 函数中第38行,第57行);
    继续翻看 Include 里的 PicoZense_enums.h,发现这款摄像头一共有9种深度模式
    在这里插入图片描述
    在这里插入图片描述

试用感受

建议结合开发者文档和代码一起,并结合项目的实际场景需要,利用此款 TOF 摄像头进行针对性的数据采集和处理。

此款镜头通过百度AI硬件评测认证,并与百度人脸离线识别SDK结合,适用于38~80cm内的场景,逆光环境表现良好。可广泛应用于人脸识别,肢体识别,机器人避障导航,物流等行业。

先介绍到这里,想了解更多产品信息,可访问百度 AI 市场

除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog

上一篇: 百度飞桨适配MediaTek人工智能芯片,为智能产业落地开启新局

下一篇: 【华为云技术分享】漫谈Huawei LiteOS五大内核模块

精华推荐