了解SpireCV如何利用G1吊舱进行点击跟踪

功能概述

SpireCV-SDK是一个专为智能无人系统打造的边缘实时感知SDK库。该库能够控制无人机的相机和吊舱,包括拍照、录像、推流等功能,并可以保存视频和进行推流。此外,SpireCV-SDK还集成了目标检测、识别与跟踪功能,以实现更智能的无人系统控制。本文将详细介绍如何利用SpireCV进行吊舱控制,并提供相关算法原理及操作步骤。

注:

  1. 控制Amov的吊舱产品,如G1、Q10等,具体功能实现详情,请在公众号内搜索相关文章或者关注阿木实验室官网。
  2. 若要使用SpireCV-Ros接口,请先跳转到ros通信部分,进行ros环境配置。

目标检测+点击跟踪

SpireCV-Sdk提供了基于深度学习的目标检测算法和基于图像处理的目标跟踪算法。通过实时检测图像中的目标物体并生成检测结果,同时通过点击图像中的目标物体实现跟踪,为后续的吊舱控制提供位置信息。此外,SpireCV-Sdk还集成了吊舱控制算法,可实现半自动搜寻功能。通过设置搜索区域和搜索条件,吊舱可以自动在目标区域内进行搜索,并实时反馈搜索结果

检测跟踪原理

目标检测基于深度学习模型来实现SpireCV-Sdk使用预训练的深度学习模型来识别图像中的对象,并根据这些对象的特征来对其进行分类和定位。其原理是通过卷积神经网络(CNN)对图像进行前向传播,提取出图像的特征,并使用这些特征来预测图像中每个像素的类别。一旦目标被检测到,SpireCV-Sdk会将其位置、大小、旋转角度等信息提取出来。

跟踪算法原理

点击跟踪是SpireCV-Sdk的高级功能之一,它基于目标检测和图像处理技术来实现。使用目标检测算法来识别图像中的对象,并根据这些对象的特征来对其进行分类和定位。并根据提取出每个对象的轮廓信息来计算出每个对象的形状和大小。一旦目标被检测到并定位,SpireCV-Sdk会根据用户的点击位置和目标的位置来计算出点击点和目标之间的距离和角度等信息

一、原理说明

1、Nanotrack原理

Nanotrack算法是一种基于深度学习的目标跟踪方法,通过在每一帧中搜索与目标模板最匹配的区域来定位目标。是一个轻量级的高速跟踪网络,主要指SiamBAN和LightTrack。它适合部署在嵌入式或移动设备上。事实上,它可以在NVIDIA Jetson Orin NX上以 > 60FPS的速度运行。

2、Nanotrack算法结构

二、算法对比实验

下表对比实验表明,NanoTrack算法在跟踪数据集上具有良好的性能。

操作步骤

1.# G1吊舱权限设置

ls /dev/ttyUSB*

sudo chmod 777 /dev/ttyUSB*

2.# 配置吊舱网络

打开终端,输入ping 192.168.2.64 ,检测吊舱是否连接成功。

3.# 运行demo

cd <path to SpireCV/build>

./GimbalClickedTracking    

执行命令启动demo程序。通过点击鼠标左键选择目标物体并实现跟踪。                        

Ros通信

ROS接口编译及调用:ROS(Robot Operating System)是一个开源的机器人操作系统,提供了丰富的功能和工具,方便开发者进行机器人控制和数据处理等方面的开发。SpireCV-Sdk提供了ROS接口编译和调用的功能,开发者可以使用ROS提供的工具和功能来扩展SpireCV-Sdk的功能和应用场景。

接口编译

1.首先确认是否安装SpireCV SDK,参考:SDK安装
2.ROS安装(可选择一键安装或者官网安装)

2.1一键安装

wget http://fishros.com/install -O fishros && . fishros

注:参照提示安装ROS1

2.2官网安装:

安装ROS,根据Ubuntu系统版本自行选择(链接打开较慢,请耐心等待)

1.Ubuntu1804

2.Ubuntu2004

3.执行如下命令

#下载SpireCV-ros目录

git clone https://gitee.com/amovlab1/spirecv-ros.git

cd spirecv-ros

chmod +x build.sh

./build.sh

# 添加到自动执行

echo "source devel/setup.bash" >> ~/.bashrc

source ~/.bashrc

4.接口调用

使用如下命令启动ROS接口:

roslaunch spirecv_ros gimbal_track.launch

注:gimbal_track.launch文件在SpireCVROS的add-lgimbal分支下

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/208365.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

关于加强型葡萄酒的类型有哪些?

加强型葡萄酒指的是在酿造过程中或酿造完后&#xff0c;添加酒精提高葡萄酒酒精度的葡萄酒&#xff0c;一般加强型葡萄酒的酒精度数都能达到15度以上。那么&#xff0c;云仓酒庄的品牌雷盛红酒分享加强型葡萄酒的类型有哪些呢&#xff1f; 云仓酒庄多品牌多代言运营模式&#…

量子光学的进步:光子学的“下一件小事”

量子光学是量子力学和光学交叉领域中发展迅速的一门学科&#xff0c;探索光的基本特性及其与物质在量子水平上的相互作用。通过利用光的独特特性&#xff0c;量子光学为通信、计算、密码学和传感等各个学科的变革性进步铺平了道路。 如今&#xff0c;量子光学领域的研究人员和工…

微信号被封了怎么办

13-7 常在河边走&#xff0c;哪有不湿鞋&#xff0c;做为经常用微信做电商客服的&#xff0c;或者经常在微信上和顾客谈钱的&#xff0c;总是会被微信后台重点关注&#xff0c;一不小心就有可能被封号。 如果遇到太倒霉的时候&#xff0c;永久封号了&#xff0c;这个时候微信…

基于SpringBoot的免税商品优选购物商城设计与实现

摘 要 随着科学技术的飞速发展&#xff0c;各行各业都在努力与现代先进技术接轨&#xff0c;通过科技手段提高自身的优势&#xff0c;免税商品优选购物商城当然也不能排除在外&#xff0c;随着购物商城的不断成熟&#xff0c;它彻底改变了过去传统的免税商品优选购物商城方式&…

FastDFS文件系统本地部署结合Nginx与内网穿透实现远程访问本地服务器

文章目录 前言1. 本地搭建FastDFS文件系统1.1 环境安装1.2 安装libfastcommon1.3 安装FastDFS1.4 配置Tracker1.5 配置Storage1.6 测试上传下载1.7 与Nginx整合1.8 安装Nginx1.9 配置Nginx 2. 局域网测试访问FastDFS3. 安装cpolar内网穿透4. 配置公网访问地址5. 固定公网地址5.…

python之pyqt专栏10-键盘事件

需求 通过按键盘的上下左右&#xff0c;移动button的位置。 UI界面设计 代码 # 导入sys模块 import sysfrom PyQt6.QtCore import Qt # PyQt6.QtWidgets模块中导入QApplication, QWidget from PyQt6.QtWidgets import QApplication, QWidget# untitled模块中导入Ui_Form类 f…

高等数学中的近似计算

今天来总结一下同济版高数中有关近似计算的例子&#xff0c;总的来说是如下的三种&#xff0c;有遗漏的话可以在评论区指出~ 目录 一.微分在近似计算中的应用 二.全微分在近似计算中的应用 三.函数的幂级数展开在近似计算的应用 一.微分在近似计算中的应用 本质原理是&am…

【Openstack Train安装】十三、创建实例

在先前的教程中&#xff0c;介绍了安装openstack及其相关组件的具体过程&#xff0c;本文介绍如何创建实例并完成访问。 在按照本教程操作之前&#xff0c;请确保完成以下配置&#xff1a; 【Openstack Train安装】一、虚拟机创建 【Openstack Train安装】二、NTP安装 【Op…

记一次SQL Server磁盘突然满了导致数据库锁死事件is full due to ‘LOG_BACKUP‘.

背景 最近我们的sql server 数据库磁盘在80左右&#xff0c;需要新增磁盘空间。还是处以目前可控的范围内&#xff0c;但是昨天晚上告警是80%&#xff0c;凌晨2:56分告警是90%&#xff0c;今天早上磁盘就满了。 经过 通过阿里云后台查看&#xff0c;磁盘已经占据99%&#xff0c…

LabVIEW在调用image.cpp或drawmgr.cpp因为DAbort而崩溃

LabVIEW在调用image.cpp或drawmgr.cpp因为DAbort而崩溃 出现下列问题&#xff0c;如何解决&#xff1f; 1. LabVIEW 程序因image.cpp或drawmgr.cpp中的错误而崩溃 2. 正在通过cRIO-9034运行独立的LabVIEW应用程序&#xff0c;但它因drawmgr.cpp中的错误而崩溃 …

程序员的侦探故事:调试中的逻辑与直觉

“在理论上&#xff0c;理论和实践是相同的。在实践中&#xff0c;它们不是。” — Yogi Berra 在技术的世界里&#xff0c;“bug”一词如今已成为编程语言中的常客&#xff0c;它代表着程序中的错误与缺陷&#xff0c;但你知道这个术语的起源吗&#xff1f; 它追溯到了1947年…

CV计算机视觉每日开源代码Paper with code速览-2023.11.28

点击CV计算机视觉&#xff0c;关注更多CV干货 论文已打包&#xff0c;点击进入—>下载界面 点击加入—>CV计算机视觉交流群 1.【图像分割】Stable Segment Anything Model 论文地址&#xff1a;https://arxiv.org//pdf/2311.15776 开源代码&#xff08;即将开源&…

文件重命名不再困难:文件智能化重命名技巧,告别手动提升效率

在日常工作中&#xff0c;经常会遇到要修改文件名的场景。传统的文件重命名方法往往要手动输入新的文件名&#xff0c;不仅耗时而且容易出错。为了提高效率&#xff0c;可以采用一些智能化重命名的技巧&#xff0c;告别手动修改文件名的繁琐过程&#xff0c;让文件重命名变得更…

SpringBoot+mysql+vue实现大学生健康档案管理系统前后端分离

一、项目简介 本项目是一套基于SpringBoot实现大学生健康档案管理系统&#xff0c;主要针对计算机相关专业的正在做bishe的学生和需要项目实战练习的Java学习者。 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目可以直接作为bishe使用。 项目都经过严格调试&#…

BootLoader升级过程讲解与串口升级案列

一、芯片选择 STM32F103RCT6 FLASH容量&#xff1a;512K RAM容量&#xff1a;48K 二、升级方式选择&#xff1a; 串口升级、网口升级、4G升级、SD卡升级等等。 1、SD卡升级属于升级文件事先存储在外部FLASH&#xff0c;不需要考虑获取升级文件的代码和升级文件存放的位置&am…

RabbitMQ学习一

RabbitMQ学习 RabbitMQ相关概念Virtual host数据隔离SpringAMQP第一种 基本消息模型第二种 WorkQueues模型第三种 发布订阅模型&#xff08;fanout交换机&#xff09;fanout交换机实例 第四种 Direct交换机direct交换机实例基于注解的方式声明——direct交换机 第五种Topic交换…

[原创]Delphi的SizeOf(), Length(), 动态数组, 静态数组的关系.

[简介] 常用网名: 猪头三 出生日期: 1981.XX.XXQQ: 643439947 个人网站: 80x86汇编小站 https://www.x86asm.org 编程生涯: 2001年~至今[共22年] 职业生涯: 20年 开发语言: C/C、80x86ASM、PHP、Perl、Objective-C、Object Pascal、C#、Python 开发工具: Visual Studio、Delphi…

MySQL核心知识点整理大全1-笔记

MySQL 是一种流行的关系型数据库管理系统&#xff0c;它是以C和C语言编写的&#xff0c;最初是由瑞典公司MySQL AB开发的&#xff0c;现在是由Oracle公司维护和支持。MySQL是开源软件&#xff0c;可在Windows、Linux、Mac OS、FreeBSD等各种操作系统上运行。MySQL的主要特点是速…

图像增强与复原、车牌检测与识别,交通最优路径搜索模型,并且基于PyQt完成GUI设计

背景&#xff1a; 综合实训教学大纲 一、实训科目设置&#xff1a; 序号 内容提要 教学 条件 一 图像增强与复原、车牌检测与识别&#xff0c;并且基于PyQt完成GUI设计 计算机、Python软件 二 交通最优路径搜索模型&#xff0c;并且基于PyQt完成GUI设计 计算机、Pytho…

[每周一更]-(第75期):Go相关粗浅的防破解方案

Go作为编译语言&#xff0c;天然存在跨平台的属性&#xff0c;我们在编译完成后&#xff0c;可以再不暴露源代码的情况下&#xff0c;运行在对应的平台中&#xff0c;但是 还是架不住有逆向工程师的反编译、反汇编的情形&#xff1b;&#xff08;当然我们写的都不希望被别人偷了…