C#
本章介绍如何在Windows系统中使用Visual Studio构建Mech-Eye API的C#例程。
例程简介
例程分为以下类别:Basic、Advanced和Util。
-
Basic例程:连接和采集数据。
-
Advanced例程:通过复杂、高阶的方式采集数据,设置部分型号特有参数。
-
Util例程:获取相机信息和设置通用参数。
各分类中包含的例程及其简介如下。
Basic
-
ConnectToCamera:连接相机。
-
ConnectAndCaptureImages:连接相机并获取2D图、深度图及点云数据。
-
Capture2DImage:从相机获取并保存2D图。
-
CaptureDepthMap:从相机获取并保存深度图。
-
CapturePointCloud:从相机获取并保存无纹理点云和纹理点云。
-
CapturePointCloudHDR:设置多个曝光时间,然后从相机获取并保存点云。
-
CapturePointCloudWithNormals:计算法向量,并保存含法向量的点云。
Advanced
-
ConvertDepthMapToPointCloud:从深度图生成并保存点云。
-
MultipleCamerasCaptureSequentially:使用多台相机按序获取并保存2D图、深度图及点云。
-
MultipleCamerasCaptureSimultaneously:使用多台相机同时获取并保存2D图、深度图及点云。
-
CapturePeriodically:在设定时间内,定时获取并保存2D图、深度图和点云。
-
Mapping2DImageToDepthMap:从覆盖掩膜的2D图和深度图生成并保存无纹理点云和纹理点云。
-
RenderDepthMap:获取并保存使用jet配色方案渲染的深度图。
-
TransformPointCloud:获取并保存自定义坐标系下的点云。
-
SetParametersOfLaserCameras:设置激光相机特有的参数。
-
SetParametersOfUHPCameras:设置UHP系列相机特有的参数。
-
RegisterCameraEvent:定义并注册检测相机事件的回调函数。
-
CaptureStereo2DImages:获取Deep(V3)、Laser L Enhanced(V3)、PRO XS(V4)、LSR L(V4)、LSR S(V4)和DEEP(V4)的两个2D相机的2D图像。
Util
-
GetCameraIntrinsics:获取并打印相机内参。
-
PrintCameraInfo:获取并打印相机型号、序列号、固件版本、温度等信息。
-
SetScanningParameters:设置3D参数、2D参数和感兴趣区域分组下的参数。
-
SetDepthRange:设置深度范围参数。
-
SetPointCloudProcessingParameters:设置点云后处理参数。
-
ManageUserSets:管理参数组,如获取所有参数组的名称、新增参数组、切换参数组和保存参数设置至参数组。
-
SaveAndLoadUserSet:从JSON文件导入并替换所有参数组,将所有参数组保存为JSON文件。
获取例程
C#例程包含在Mech-Eye SDK的安装路径中,也可从GitHub克隆获取克隆获取。安装路径中的例程为Mech-Eye SDK发布时的版本,GitHub上的例程可能包含最新修改。
-
安装路径中的例程位于xxx/Mech-Eye SDK-2.4.0/API/samples/csharp/area_scan_3d_camera路径下;
-
通过GitHub克隆获取的例程位于xxx/mecheye_csharp_samples/area_scan_3d_camera路径下。
安装必需软件
使用Mech-Eye API的C#例程,必须安装Mech-Eye SDK、Visual Studio和Emgu CV。
安装最新版本的Mech-Eye SDK
请根据Mech-Eye SDK安装指南安装或升级Mech-Eye SDK。
安装Visual Studio(2019或以上版本)
-
安装时,勾选以下工作负荷和单个组件,再点击安装。
-
桌面应用和移动应用分类的工作负荷:
-
.NET桌面开发
-
使用C++的桌面开发
-
通用Windows平台开发
-
-
单个组件:.NET Framework 4.8目标包
-
C#的Mech-Eye API基于.NET Framework 4.8。如未安装.NET Framework 4.8,将无法构建例程。 |
安装Emgu CV
CaptureDepthMap和RenderDepthMap例程中的功能依赖OpenCV软件库,因此需通过Visiual Studio的NuGet管理器安装Emgu CV(即OpenCV的.NET封装)。
具体安装方式请参考 Microsoft提供的指南。
构建及运行例程
在Visual Studio中构建例程后,可选择合适的方式运行例程。
使用Visual Studio构建例程
-
双击area_scan_3d_camera文件夹中的MechEyeCSharpSamples.sln。
-
在Visual Studio工具栏中,将解决方案配置从Debug改为Release模式。
-
在菜单栏中选择
。每个例程会生成对应的可执行文件(.exe),保存在Build文件夹中,该文件夹位于area_scan_3d_camera文件夹中。