windows - 有没有办法从 Windows SDK 上的红外传感器获取无人机的高度?
问题描述
我正在使用Windows SDK和 Mavic 2 Pro。我想从位于底部的红外传感器获取无人机的高度。我已经看到通过getUltrasonicHeightInMeters()方法可以在Android SDK上实现这一点。但是,我在它的 Window 对应物上找不到类似的方法。
更新
我一直在玩无人机并从包括 Baro 在内的多个传感器获取信息。看起来,来自 Baro 的高度非常准确。我在室内测试了起飞、降落和改变高度,它是恒定的。
解决方案
在 Windows SDK 中,它被称为高度
method GetAltitudeAsync
async Task<ResultValue<DoubleMsg?>> GetAltitudeAsync()
Declaration: DJI.WindowsSDK.Components
Description:
Gets the flight controller's relative altitude of the aircraft relative to take off location, measured by the barometer, in meters.
Return:
async Task<ResultValue<DoubleMsg?>> A Task<ResultValue<DoubleMsg?>> object.
编辑
IR 端口未向外部 SDK 开放,并且 DJI 没有开放计划将其与下行流视觉数据合并。
为平坦的地形四处走动的一种方法是使用带有 GPS 高度的 brao fuse 使用扩展卡尔曼滤波器。
如果你想在复杂的地形中避开障碍物,你总是可以使用一些高级的方法,比如 SVO https://github.com/uzh-rpg/rpg_svo。它只使用视频流并输出您需要的深度。ETH小组的这项工作非常值得信赖,可以在低海拔到高海拔的户外环境中毫无问题地执行。
https://www.youtube.com/watch?v=hR8uq1RTUfA
您可以使用普通的相机流,如 DJI Wsdk 输出。3D 点以相对比例映射。通过与 GPS 或 baro 一起使用,您可以获得接近真实比例的近似值。
推荐阅读
- html - 从内容页面在母版页中添加元素
- java - JPA 选择关联并使用 NamedEntityGraph
- javascript - 很多时候 cypress 无法访问 /auth 页面并且找不到 id 或 class
- android - 如何为recyclerview中动态添加的项目设置OnclickListener?
- laravel - 在 Laravel 中重定向到 /folder/{param1}/{param2}
- php - PHP将多维数组的数组键附加到一维数组
- reactjs - ReactJS 中的“任务状态”框 - 找不到合适的设计组件
- javascript - 为什么 @Input() 更新数据 Angular 8 时不会触发 ngOnChanges()?
- react-native - TouchableOpacity onpress 不适用于导航
- reactjs - React - 使用 useRef 触发表单提交