在VC++中获取Rplidar数据并使用OpneCV显示出来

本文介绍了在VC++环境下,如何配置OpenCV3.0,下载Rplidar SDK,并创建解决方案来获取Rplidar数据。通过示例代码展示了如何使用OpenCV显示激光雷达数据,为2D SLAM的学习打下基础。
摘要由CSDN通过智能技术生成

在VC++中获取Rplidar数据并使用OpneCV显示出来

最近时间空闲下来想研究下SLAM,正好看到大牛的文章http://www.cnblogs.com/gaoxiang12/p/3695962.html,其中讲到如何用kinect深度相机做特征点匹配,进而算出位移。由于手头没有深度相机,想着无非是降个维度,使用2D激光雷达来做位置数据的获取,然后在网上继续查找关于激光雷达数据获取及特征匹配的文章,然后看到http://blog.csdn.net/renshengrumenglibing/article/details/8596401,虽然不是用的思岚科技的Rplidar,但是数据应该差异不大,决定从这个文章入手按照作者的套路用Rplidar一步步做数据获取和展现。

开发环境:Visual Studio 2013

OpenCV版本:OpenCV3.0

文章结构
- 配置OpenCV3.0
- 下载Rplidar sdk
- 创建解决方案并添加sdk项目
- Rplidar数据获取
- 使用OpenCV显示数据

先上显示效果图:
这里写图片描述

http://blog.csdn.net/renshengrumenglibing/article/details/8596401

配置OpenCV3.0

配置OpenCV花了很长时间,分别尝试下载OpenCV2.4.9和OpenCV2.4.10,环境变量都配好,跑测试程序均死在后提示“OpenCV 无法启动此程序,因为计算机中丢失opencv_core249.dll。请尝试重新安装改程序已解决此问题”尝试各种解决方案无果,抱着试试看的态度下载了OpenCV3.0.0,配置过程参考:http://blog.csdn.net/u010009145/article/details/50756751,最后成功,可以用了

下载Rplidar sdk

在思岚官网下载sdk和应用手册 http://www.slamtec.com/cn/Lidar
解压后可以在tools文件夹中先安装驱动,并记下设备对应的串口号,我的是com30
设备的初始化和数据获取,我是直接看的sdk中带的示例程序ultra_simple,直接看main.cpp很好理解。RPlidar的简单使用流程如下,这些代码是从main函数中摘出来的,方便理解

// create the driver instanc
//创建一个RPlidar的实例,一个实例对应一个设备
RPlidarDriver * drv = RPlidarDriver::CreateDriver(RPlidarDriver::DRIVER_TYPE_SERIALPORT);
// make connection... 连接
drv->connect(opt_com_path, opt_com_baudrate;
//startMotor 启动电机
drv->startMotor();
// start scan...
drv->startScan();
//获取一次旋转一周的数据
op_result = drv->grabScanData(nodes, count);
//停止扫描,停止电机,释放实例
drv->stop();
drv->stopMotor();
RPlidarDriver::DisposeDriver(drv);

如果我们新建一个项目,只需要将路径\rplidar_sdk.1.5.6\sdk\sdk中的sdk文件夹中文件拷贝出来就可以。

创建解决方案并添加sdk项目

在VC2013中按照以下目录结构创建解决方案

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值