图漾深度相机PM801 windows环境下cmake调试

图漾深度相机PM801 windows环境下cmake调试

最近项目上决定使用图漾的PM801深度相机,从图漾公司借来样机之后便开始准备调试,由于项目要求在windows环境下进行软件开发,以前都是在ubuntu下做传感器调试,第一次在windows里做,正好把过程做个记录,也算是自己的工作备忘(还成了第一篇CSDN文章)。

全部过程并不复杂,但是中间有些坑还是值得记录一下,大致分为几个步骤

Created with Raphaël 2.2.0 CMAKE安装 OpenCV安装,编译 图漾相机的SDK编译 网络IP设置 测试

CMAKE安装

Cmake是一个跨平台的安装平台工具,可以输出各种makefile和project,例如在windows中可以生成Visual C++的projects和workspace,然后在依据一般的建构方式使用。图漾提供的SDK可以使用CMAKE来进行标准的工程构建,所以首先需要下载安装CAMKE。

CMAKE的下载非常简单,直接去官网选择自己合适的版本下载就好。

传送门:CMAKE官网链接(https://cmake.org/download/).

同时一篇博主的详细安装流程也相当不错,同样传送门给出来:Windows下CMake安装教程(https://blog.csdn.net/u011231598/article/details/80338941/).

当然,必须提前安装好Visual Studio,否则后面cmake没办法编译的,同样也是直接在官网下载就好。

OpenCV安装编译

用深度相机必然是要用来做图像处理的,OpenCV必不可少,我的windows环境里什么库也没装过,所以得先把opencv装起来,也方便后面的开发。

首先在opencv官网选择要下载的版本和对应的平台,我下载的是opencv3.4.4,图漾的SDK支持opencv2.4.8及以上版本,所以我认为只要是2.4.8以上的都没问题。

选择想要的版本和对应的平台
OpenCV官网中在releases里选择想要下载的版本和对应的平台。

点击之后会跳转的下载界面,等待几秒之后就下载完成了。

下载成功之会在下载地址里看到opencv的文件夹,在一级目录下新建一个build文件,这是文件夹里的东西应该是这个样子:

opencv文件夹
其中build文件夹目前是空的,一会cmake生成的东西会放在这里,source里就是源码。

现在打开cmake里的cmake_gui.exe,就是cmake的图形界面来编译opencv(cmake_gui.exe一般在cmake文件夹中的bin文件夹里)。

在这里插入图片描述
这里where is the source code填源码的地址,where to build里填刚刚新建的build文件夹的地址,其中源码地址貌似只要地址里有源码即可,不需要写到源码的根目录地址,但是我没试过,各位可以试试。

填完之后点击Configure,选择自己的VS版本,然后Configure,等待一会之后出现configure done,就完成了Configure,如果中间有报错,根据提示解决掉,一般只可能是路径给错了,没有出现过什么其他error。

Configure完成后,点击Generate,同样等待一会,出现generate done,就完成了cmake编译OpenCV的过程了

Configure,Generating done
cmake编译成功后,就要进行最后一步VS编译opencv源码,在cmake编译之后,原本空的build文件夹多出了很多东西,这就是cmake生成的VS project,我们找到其中的工程文件——OpenCV.sln,打开之后就可以看见VS project了。

OpenCV.sln
opencv的VS project
在工具栏选择Debug(或者Release),然后右键ALL_BUILD,点击生成,等待一段时间(这里生成的时间会比较长),就会看到编译成功的提示,我这里是成功77个,失败0个,跳过0个

Debug
编译成功
到此,OpenCV的安装和编译就全部完成了,有兴趣的小伙伴可以拿一个简单的例程来测试一下,这里就不放opencv的测试过程了。

图漾相机的SDK编译

图漾的深度相机在Linux和windows平台下用的是同一个SDK,Camport3,下载地址在图漾给的用户手册里就有:

Camport3下载地址:https://github.com/percipioxyz/camport3

下载完成后的文件夹结构是这个样子:
Camport3文件夹结构
由于PM801深度相机采用以太网传输,所以不需要安装usb驱动,如果是usb传输的深度相机需要啊先安装usb驱动,在图漾操作手册里有流程介绍,这里就不详述了,直接进入Cmake过程。

在cmake编译SDK之前,我们先在系统的环境变量中设置一下opencv库的路径。

首先右键我的电脑,点击属性(或者控制面板->系统和安全->系统)
系统设置
点击高级系统设置,选择环境变量
环境变量
选择用户变量下的path,然后点击编辑,注意不是系统变量,是上面的用户变量,就是你的用户名+变量,改动系统变量会发生什么,我也不知道,总之不会有什么好事。
编辑添加用户变量
选择一个空白的路径,点击新建,然后输入自己的opencv库路径,就是opencv文件夹里bin的路径,我得路径如下图所示,改成自己的路径就可以,然后点击确定,完成路径配置。
添加opencv库路径
路径配置完成后就可以开始cmake编译SDK了,先在Camport3里的sample文件夹下新建一个build,用来装cmake生成的文件,打开cmake_gui,这里source路径写sample的路径,下面的同样写build的路径,然后点Configure,选择VS版本,等待configure done,然后点击Generate,同样等到generating done,跟编译opencv流程一样。
cmake编译SDK
编译完成后同样会在build文件夹里生成许多文件,找到VS project——Project.sln,双击打开
在这里插入图片描述
在VS project里右键ALL_BUILD,点击生成,等待一段时间,显示编译成功,编译过程中会有一堆warning,只要没有error,并且最终显示编译成功,就可以了(我这里显示成功22个,失败0个,跳过0个)。
生成project
SDK编译成功
编译成功后,点击build里的bin文件,生成的可执行文件就在里面了,按道理说这里只要点击要运行的exe文件,连上相机就可以用了。

但是!坑就在这里出现了,我点击Simpleview_FetchFrame.exe,提示出现缺少很多.dll文件,可能有的小伙伴不会遇到这种情况,如果遇到了,也不用慌张,很好解决。

首先,确认缺少的.dll文件,前面带opencv的,比如我缺少的opencv_core344d.dll,opencv_imgcodecs344.dll等,可以在opencv/build/bin/Debug里面找到,把这些缺失的.dll文件复制到系统的C:\Windows\System32和C:\Windows\SysWOW64中(我是两个文件夹都粘贴了)。

对于没有opencv前缀的,例如我缺失了一个tycam.dll,这个文件在camport3-master\lib\win\hostapp\x86
路径下,同样把它复制到C:\Windows\System32和C:\Windows\SysWOW64中,点击exe文件,应该就没有文件缺失提醒了。
opencv缺失dll文件
tycam.dll
此时点击.exe文件,应该是这个样子:
未连接相机报错
不用担心,这是由于相机和PC没有连接上导致的,下一步就是连接相机了。

网络IP 设置与相机连接

由于PM801采用以太网传输,所以只需要将电脑的主机IP与相机的IP地址设置在同一网段即可,相机的IP 地址我在Linux系统里已经设置过了,如果没有设置的可以参照图漾用户手册进行静态IP设置,同时PM801也支持动态IP设置,但是这里我采用的还是静态IP,我设置的相机IP 是192.168.0.10,所以在相机和电脑通过网线连接后,需要在网络设置里,右键以太网连接(选择连接上的那个),点击属性,然后选择Ineternet协议版本4(TCP/IPv4),在里面点击使用下面的IP地址,然后在第一行设置主机IP,最后一位只要在0-255之间都可以,不要和相机IP重复就行,然后掩码和网关也按照这么设置,点确定。

这里可以验证电脑和相机是否已经连接成功了,打开命令行(运行输出cmd),输入ping 相机IP地址,例如:

ping 192.168.0.10

如果连接成功,会看到电脑和相机之间的通信,如:
验证连接成功

测试相机

到此,所有流程都完成了,接下来就可以测试SDK是否能在windows平台上运行啦。

连接相机,点击SimpleView_FetchFrame.exe,听到相机启动的声音,然后RGB图,深度图等都可以显示出来了:
深度图

VS2017的安装包,cmake的文件包以我上传到附件上去了,如果不想去官网上找,直接下载下来用也是可以的。

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值