手机现金棋牌
无人机自动驾驶系列 : 视觉引导降落

  以下是测试版 GAAS 镜像的下载链接,包含了第一课和 SLAM 所需★-●=•▽要的配置(第五课配置尚未安装),以及 GAAS 的软件(以防万一,请使用前更新◁☆●•○△到最新版)。

  因为是测试版,所以可能还会有一些问题,如遇困难欢迎在 GAAS 讨论群联系我们。

  如果以上链接失效,请关注微信公共号「泛化智能」回复「镜像」获取最新链接。

  所有提前安装好的包都在 /root 目录。使用时,请首先登陆 root 用户(输入 su)。

  前几讲中,我们讲述了如何设置仿真环境,如何通过python▪▲□◁控制无人机,如何在没有GPS的环境下通过SLAM实现位置控制,以及如何通过一组双目摄像头进行避障。本讲中,我会简要介绍如何通过二维码进行视觉辅助降落。注意,此实现比较简单,实际情况下需要使用更为复杂的方法。

  二维码提供了丰富的视觉信息,它可以用○▲-•■□来定位,跟踪,或者识别。它通常由▪…□▷▷•很多黑色矩形组成。关于二维码的更多信息,请参考 阅读资料[1]。

  给出二维码的四角位置,鉴于它们处于同一平面,我们可以通过单应性矩阵以及气压计的高度▲★-●指数来恢复摄像头到放置到平面上的指定二维码的旋转以及平移。

  如果你完成了前面的几个课程,你应该已经安装了rospy以及opencv。

  将simulator文件夹中的二维码模型,仿真世界,以及启动文件拷贝到px4对应文件夹下。

  计算机视觉中,关于一个△▪▲□△平面的两张图片可以通过一个名为单应性矩阵的变换矩阵联系在一起,此矩阵包含了两张关于同一平面的图片的旋转以及平◆◁•移★△◁◁▽▼信息。通常,为了获得两张图片的单应性矩阵,我们需要两张图片的超过三对不共线的匹配好的特征点。换一个说法就是,我们需要在两张图片中找到超过三组匹配好的特征。而通过二维码解析出来的四角位置可以用来进行单应性矩阵的计算。

  我们可以发现,恢复出来的图像和我们给定的二•☆■▲维码非常相似,代表我们求得的单应性矩阵是合理的。

  关于二维码的检测,单应性矩阵计算,旋转以及平移的恢复等信息可以在qr_code.py中找到。

  一个g▲●…△azebo仿真环境会弹出,我们可以看到一张二维码被放置在无人机起点前方几米处,这张二维码就是我们在★◇▽▼•前面提到的待寻图片。

  二维码检测此时会一直失败,因为待寻图片距离◆▼无人机太远。所以你需要将无人机移动到二维码出现在无人机图像中为止。无人机的摄像头朝前,而待寻二维码平放在地面上,这种情况给二维☆△◆▲■码检测带来了一些难▽•●◆度,所以你可能需要将无人机移动的”恰到好处“, 此时才能正确的检测到待寻二维码。

  通常来说, 我们最好将无人机用来检测目标的摄像头朝下放置,或者与水平方向呈45度角向下放置,这样能够得到比较好的二维码检测精度。

  我们此时将只考虑恢复出来的平移部分。当发现并成功解析待●寻二维码后,无人机会被控制并降落在待寻二维码前方。你会发现无人机并不会降落在二维码上面,这是由我们给出的二维码在图片中的位置决定的。

  此讲内容旨在提供一个简单的降落算法。如果你发现任何问题,或有不明白的◆■地方,欢迎提issue或者加入我们得微信群聊。

手机现金棋牌