资料介绍
描述
指挥中心需要知道他们的人员在哪里以及哪里存在危险并且可能正在接近他们。
无人机有机载传感器,其数据实时映射,包括二氧化碳、氧气、温度、湿度、气压和光照水平。备用接地垫被重新指定为着陆平台。在接地垫上创建了使用三种不同颜色块的着陆标记,并教 Pixycam2 识别和报告每个块的 xy 坐标边界。
Pixycam2 连接到 FMU66 I2C 连接器。我们想将红外“激光雷达”距离传感器连接到 FMUK66 上的 Telem2 UART,但不幸的是,这个端口被用作通过 USB 接口连接到 Coral-dev 板的 Mavlink 远程端口。因此,我们通过 PL2303 USB 转 UART 电缆将向下的距离传感器连接到 Coral 上的备用 USB 端口,并使用 mavlink 协议将数据发送到 PX4 固件。
该系统的功能类似于 IR-LOCK 着陆系统,该系统使用原始的 Pixycam 并剥离了 IR 过滤器。Pixycam2 协议与原始的 Pixycam 不同,我们的系统可以识别多个物体,以便在着陆时更精确的 xy 方向,并允许我们创建高度的 z 坐标估计。我们使用备用接地垫作为我们的着陆平台,并使用彩色胶带创建三个 10 厘米见方的方块。
因为我们知道 Pixycam2 识别的彩色块的尺寸,所以我们可以将其用作距离标记。TFMini“激光雷达”系统(不是真正的激光雷达,而是一个飞行时间红外传感器)是多余的,但添加了额外的高度数据,这些数据是我们的 Pixycam2 PX4 驱动程序的平均高度数据。我们训练 Pixycam2 识别带有“顶部”、“右”和“左”标签的块。
我们重新分配了 IR-LOCK PX4 驱动程序的原始代码,针对 Pixycam2 协议对其进行了修改,并添加了代码以根据三个可识别的色块而不是 IR-LOCK 的单一目标在 xy 坐标中定位无人机。我们还添加了代码以使用 Pixycam2 的 xy 坐标计算 z 坐标,这为我们提供了接近着陆台时识别块的大小。此 z 距离用于增强从 Coral Dev 板配套计算机通过 Mavlink 发送的 TFMini“激光雷达”传感器数据。
Pixycam2 自动着陆系统的 C++ PX4 驱动程序代码可在我们的 Hovergames PX4 git repo fork 中获得。
自动充电系统
我们收到了带有 hovergames 套件的基本锂聚合物充电器,可通过 4 针或 5 针连接器为 3 节或 4 节锂聚合物电池充电。我们的无人机由 3 节锂聚合物电池供电,该电池使用四根电线进行充电。我们使用铜带在 Pixyxam2 着陆垫上创建了四个着陆垫,这些着陆垫与无人机起落架上的四个铜带部分相匹配。
Pixycam2 着陆系统的分辨率约为 10 厘米(2.5 英寸),因此我们创建了四个 10 厘米见方的铜箔充电垫,并通过我们在着陆垫上铺设的铜带走线将它们反馈回充电器。当 Pixycam2 精密着陆系统采取将无人机放置在着陆垫上,它还将充电触点置于充电垫的中心。当无人机着陆时,它会自动开始为下一个任务充电。
该系统的完全运行版本可以使用两架无人机,其中一架始终在空中,而另一架则为其电池充电以提供连续的机载覆盖。理想情况下,它们将通过 W-Fi 网状网络连接(Coral Dev 板上的 QCA6174 Wi-Fi 芯片支持网状网络),传入的无人机可以向其合作伙伴发出接管信号,因此无人机始终在空中提供覆盖。
Coral 开发板 AI 传感器系统
飞思卡尔和谷歌创建了 Coral 开发板,该开发板还具有高清摄像头和传感器板作为选项。Coral 开发板在 PCB 上包含一个 Google Tensorflow 处理单元或 TPU,通过 PCIe 总线连接到 i.MX8 M 四核 ARM Cortex-A53 CPU。Google 和 Freescale 为这个名为 Mendel 的开发板创建了一个 Debian 10“Buster”派生的 Linux 操作系统。Coral 开发板由 USB-C 连接器供电,因此我们创建了自己的电缆,通过无人机电池为开发板供电。
我们将 Coral 开发板的 QCA6174 Wi-Fi 芯片重新指定为接入点。我们修改了 dnsmasq 以自动将任何 Web 请求重定向到我们为此项目创建的板载 Python Web 服务器代码,因此对 http:// 的 Web 请求将重定向到我们的 Python Flask 本地 Web 服务器。这些摄像头安装在连接到 Coral 开发板的 I2C 引脚的低成本 Pimoroni 云台 HAT 上。移动云台 HAT 的代码已添加并合并到我们的 Python 网络服务器代码中,因此用户可以从网页上移动摄像机。
Coral 传感器板带有温度、湿度、压力和环境光传感器。我们将 O2、CO2 和 CO 传感器添加到传感器板上的 Grove 连接器,并编写 Python 代码来记录无人机周围空气中的 O2 百分比和 CO2、CO 和挥发性有机化合物的百万分率。这些传感器对于感测消防员周围的危险区域并报告该数据的实时流至关重要。
我们使用了在 Thingiverse 找到的珊瑚开发板 3D 打印外壳,并修改了适合珊瑚开发板的珊瑚传感器板的顶部。此功能提供紧急服务人员或紧急情况下需要帮助的人员位置的实时报告。TPU 运行谷歌 Tensorflow 机器学习框架的嵌入式版本,称为 Tensorflow Lite。我们在带有 Nvidia GPU 的工作站上设置了 Tensorflow 训练系统。我们使用位于http://host.robots.ox.ac.uk/pascal/VOC/index.html的 Pascal 视觉对象类 (VOC) 数据集来训练我们的系统识别物体和人。
Coral-Dev 板上的 TPU 支持 Tensorflow 深度网络拓扑的一个子集。我们选择了 mobilnet_v1_ssd 拓扑,因为它直接映射供 TPU 使用。训练系统是用Tensorflow Python编写的,将VOC数据集上的网络训练成.pb文件。我们使用 TensorFlow Lite 工具将 .pb 深度网络转换为 Tensorflow Lite 结构,然后使用 TPU 实用程序对其进行编译,以便在 Google TPU 芯片上使用。该系统通过高清 Coral Dev 摄像头识别并计算它看到的人数。每次飞行都会维护此计数,因此查看无人机网页的人可以看到在最近一次飞行中看到的累积人数。当无人机从头顶飞过时,在地面上识别出的人类周围绘制了方框。
Google 已经创建并预训练了用于对象检测和分类的 Tensorflow 模型,因此您不必从头开始构建模型。请参阅预训练模型下的Coral Docuemention页面。我们使用 Google 说明在台式机 Intel i7 CPU 和运行 Tensorflow 的 Nvidia GTX 1070 GPU 上设置基于 VOC 数据集图像的模型重新训练。
使用 VOC 数据集重新训练现有的 Tensorflow 模型
1) 确保 CUDA 已安装并正在运行。您可以通过运行“nvcc -V”来测试它,它会输出 cuda 编译器版本。
2)混帐克隆https://github.com/tensorflow/models.git
注意:不要按照说明安装 pycocotools -> 请改用 pip3 install pycocotools
4) 运行测试,确保全部返回 OK
5) 克隆https://github.com/PINTO0309/TPU-MobilenetSSD.git
6) cp -Rf TPU-MobilenetSSD/colaboratory/gpu/* models/research/object_detection/
7) chmod 0755 *.py *.sh
8) rm 配置 && mkdir 配置 && cd 配置 && unzip../collab.zip && cd..
9) ln-s。对象检测
10)./prepare_checkpoint_and_dataset.sh --network_type mobilenet_v1_ssd --train_whole_model false
11) rm -Rf object_detection/学习/训练
12)部分模型再训练:
NUM_TRAINING_STEPS=500 && NUM_EVAL_STEPS=100 && ./retrain_detection_model.sh \
--num_training_steps ${NUM_TRAINING_STEPS} \
--num_eval_steps ${NUM_EVAL_STEPS}
注意:忽略有关已弃用 API 的警告
在我们的 GTX 1070 上,这个过程运行了四天。拥有重新训练的网络后,您需要将其转换为 Coral Dev 板上的 Google TPU 芯片可用的格式。训练完成后,最后一行将列出您需要转换为 TensorflowLite 的 .pb 文件的位置,作为在 Coral Dev board 的 TPU 上运行的预备步骤。
将 .pb 文件转换为 TensorflowLite
使用https://coral.ai/docs/edgetpu/models-intro/中的说明,我们将 .pb 文件转换为 TensorflowLite 格式。
./convert_checkpoint_to_edgetpu_tflite.sh --checkpoint_num 500
按照说明安装 edgetpu 编译器。运行以下命令将 TensorflowLite 文件转换为 TPU 版本。
edgetpu_compiler output_tflite_graph.tflite
将文件 output_tflite_graph_edgetpu.tflite 和labels.txt文件复制到您的 Coral Dev 开发板根文件系统,以便我们可以运行模型来检测高清摄像机流中的物体和人类。
运行模型:
edgetpu_detect_server --model ./output_tflite_graph.tflite --labels ./labels.txt
高清摄像机流将显示在 Web 端口 4664 上,并在检测到的人和物体周围带有标记框。
实时传感器数据
我们购买了一个 Coral 传感器板,它是带有 Google TPU 的 Coral 开发板的子板。
将红外摄像机添加到 PanTiltHat
我们从 GroupGets 网站上挑选了一个带有微型 USB 连接器的微型 FLIR 红外摄像机。显示的传感器数据是温度、湿度、气压、氧气水平、二氧化碳水平、挥发性有机化合物水平以及以勒克斯为单位的周围光照强度的实时视图。
结论
构建这个项目是迄今为止 hackster.io 上最有趣的项目之一。这也是我第一次尝试使用无人机。带有摄像头和传感器的智能、独立 AI 平台的想法非常吸引人,我期待在未来扩展该系统的功能。Freescale/NXP i/MX8 quad 64 位 ARM CPU 具有相当大的马力,再加上 Google TPU,使其成为一个非常惊人的系统,价格远低于 200 美元。
当无人机飞过头顶时识别人和物体的能力开辟了巨大的新可能性。这个系统可以扩展成一个完全独立的机器人飞行器,它可以在每次任务后保持充电状态并准备好飞行,而不需要人类手动移除电池并为电池充电。通信能力与 TPU AI 检测功能相结合意味着它可以扫描一个区域并报告其发现,而无需专人观看摄像机流。这个系统可以演变成一个自主的独立人工智能平台,可以执行复杂的任务,而不需要人工干预来保持它的运行和飞行。
- 2023年人工智能产业概况及应用趋势分析 6次下载
- 人工智能是干嘛的 人工智能在金融行业的应用 0次下载
- 人工智能是干嘛的 人工智能在教育中的应用研究 0次下载
- 什么是人工智能 人工智能应用领域 0次下载
- 人工智能专题报告:生成式人工智能产业全梳理 3次下载
- 基于人工智能的能源管理平台
- 基于人工智能驱动的关键信息基础设施防御 4次下载
- 人工智能芯片技术白皮书 29次下载
- 人工智能的伦理智能体应用及相关研究 7次下载
- 人工智能控制技术的发展与研究现状 15次下载
- 人工智能到底是什么?什么工作需要学习人工智能 17次下载
- 为什么Python是人工智能最好的编程语言Python有什么优势 15次下载
- 人工智能行业发展状况如何?人工智能行业研究报告详细资料免费下载 15次下载
- 人工智能深度学习处理架构的演进GPU功耗和延迟问题如何解决 28次下载
- 电子书 中美人工智能行业生态比较 243次下载
- 生成式人工智能和感知式人工智能的区别 1158次阅读
- aigc是什么意思和人工智能有什么区别 9179次阅读
- 人工智能给教育带来哪些巨大好处 7937次阅读
- 如何避开人工智能的陷阱 1179次阅读
- 人工智能与机器学习的区别 4111次阅读
- 什么是人工智能上百个人工智能的经典问答 6027次阅读
- 破局人工智能:AI平台及智能语音应用解析 7036次阅读
- 人工智能技术有哪些_人工智能技术的原理 6.1w次阅读
- 人工智能为何这么热_人工智能价值与应用_无人机属于人工智能吗 7411次阅读
- 人工智能相关的人与技术都在这里_人工智能的相关技术 4754次阅读
- 全球人工智能大学有哪些_人工智能全球大学排名 5.3w次阅读
- 人工智能需要哪些知识_人工智能需要学什么_如何自学人工智能 4.4w次阅读
- 学人工智能10本必看书_人工智能入门书籍推荐 7w次阅读
- 人工智能对教育的冲击及对孩子的影响 2w次阅读
- 人工智能+教育这条路怎么走_人工智能+教育趋势分析 2.4w次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多