目录
前言
RVC快速入门。(参考文件:RVC SDK Documentaion.html)
一、简单示例
//包含使用RVC API的头文件
#include <RVC/RVC.h>
// 命名空间
using namespace RVC;
int main(int argc, char *argv[]) {
// 初始化RVC系统
RVC::SystemInit();
// 用户希望列出的可用设备的最大数量。
const int d_num = 10;
// 创建一个存放设备的数组。
RVC::Device devices[10];
// 记录实际可用设备数量。
size_t actual_size = 0;
// 列出可用的GigE设备。GigE为千兆以太网。
SystemListDevices(devices, d_num, &actual_size, RVC::SystemListDeviceType::GigE);
// 检查实际搜索的设备数量。找不到设备则终止程序。
if (actual_size == 0) {
return -1;
}
// 创建X1对象,选择第一个设备和右侧相机。
RVC::X1 x1 = RVC::X1::Create(devices[0], RVC::CameraID_Right);
// 打开 X1.
x1.Open();
// 如果X1未打开,则释放X1并关闭系统。
if (!x1.IsOpen()) {
RVC::X1::Destroy(x1);
RVC::SystemShutdown();
return 1;
}
// 使用默认捕获设置进行捕获,以获取3D点图和2D图像。
bool cap_state = x1.Capture();
// 如果捕获成功,则获取数据。
if (cap_state) {
//获取三维点云
RVC::PointMap pm = x1.GetPointMap();
//获取二维图像
RVC::Image img = x1.GetImage();
}
// 关闭X1.
x1.Close();
// 释放X1.
RVC::X1::Destroy(x1);
// 释放所有RVC资源。
RVC::SystemShutdown();
return 0;
}
二、问题和解决方案
1.找不到USB设备
USB摄像头仅支持USB3.0端口,检查是否已连接到USB2.0端口。
总结
简单入门和遇到的问题。