功能概述
SpireCV-SDK是一個專為智能無人系統(tǒng)打造的邊緣實時感知SDK庫。該庫能夠控制無人機的相機和吊艙,包括拍照、錄像、推流等功能,并可以保存視頻和進行推流。此外,SpireCV-SDK還集成了目標檢測、識別與跟蹤功能,以實現(xiàn)更智能的無人系統(tǒng)控制。本文將詳細介紹如何利用SpireCV進行吊艙控制,并提供相關算法原理及操作步驟。
注:
1.控制Amovlab的吊艙產品,如G1、Q10等,具體功能實現(xiàn)詳情,請在公眾號內搜索相關文章或者關注阿木實驗室官網。
2.若要使用SpireCV-ROS接口,請先跳轉到ROS通信部分,進行ROS環(huán)境配置。
目標檢測與點擊跟蹤
SpireCV-SDK提供了基于深度學習的目標檢測算法和基于圖像處理的目標跟蹤算法。通過實時檢測圖像中的目標物體并生成檢測結果,同時通過點擊圖像中的目標物體實現(xiàn)跟蹤,為后續(xù)的吊艙控制提供位置信息。此外,SpireCV-SDK還集成了吊艙控制算法,可實現(xiàn)半自動搜尋功能。通過設置搜索區(qū)域和搜索條件,吊艙可以自動在目標區(qū)域內進行搜索,并實時反饋搜索結果。
檢測跟蹤原理
目標檢測基于深度學習模型來實現(xiàn),SpireCV-SDK使用預訓練的深度學習模型來識別圖像中的對象,并根據(jù)這些對象的特征來對其進行分類和定位。其原理是通過卷積神經網絡(CNN)對圖像進行前向傳播,提取出圖像的特征,并使用這些特征來預測圖像中每個像素的類別。一旦目標被檢測到,SpireCV-SDK會將其位置、大小、旋轉角度等信息提取出來。
跟蹤算法原理
點擊跟蹤是SpireCV-SDK的高級功能之一,它基于目標檢測和圖像處理技術來實現(xiàn)。使用目標檢測算法來識別圖像中的對象,并根據(jù)這些對象的特征來對其進行分類和定位。并根據(jù)提取出每個對象的輪廓信息來計算出每個對象的形狀和大小。一旦目標被檢測到并定位,SpireCV-SDK會根據(jù)用戶的點擊位置和目標的位置來計算出點擊點和目標之間的距離和角度等信息。
原理說明
Nanotrack原理
Nanotrack算法是一種基于深度學習的目標跟蹤方法,通過在每一幀中搜索與目標模板最匹配的區(qū)域來定位目標。它是一個輕量級的高速跟蹤網絡,結合了SiamBAN和LightTrack的優(yōu)勢,適合部署在嵌入式或移動設備上。事實上,它可以在SpireCV套件上以 > 60FPS的速度運行。
Nanotrack算法結構圖
算法對比實驗
下表對比實驗表明,NanoTrack算法在跟蹤數(shù)據(jù)集上具有良好的性能。
操作步驟
G1吊艙權限設置
ls /dev/ttyUSB*sudo chmod 777 /dev/ttyUSB*
配置吊艙網絡
打開終端,輸入ping 192.168.2.64 ,檢測吊艙是否連接成功。
運行demo
cd
./GimbalClickedTracking
執(zhí)行命令啟動demo程序。通過點擊鼠標左鍵選擇目標物體并實現(xiàn)跟蹤。
ROS通信
ROS接口編譯及調用:ROS(Robot Operating System)是一個開源的機器人操作系統(tǒng),提供了豐富的功能和工具,方便開發(fā)者進行機器人控制和數(shù)據(jù)處理等方面的開發(fā)。SpireCV-SDK提供了ROS接口編譯和調用的功能,開發(fā)者可以使用ROS提供的工具和功能來擴展SpireCV-SDK的功能和應用場景。
接口編譯
安裝SpireCV SDK
首先確認是否安裝SpireCV SDK,可參考教程:SDK安裝
https://docs.amovlab.com/Spire_CV_Amov/#/src/%E5%BF%AB%E9%80%9F%E4%BD%BF%E7%94%A8/SDK%E5%AE%89%E8%A3%85/SDK%E5%AE%89%E8%A3%85
ROS安裝
安裝方式可選擇一鍵安裝或者官網安裝。
(1)一鍵安裝
wgethttp://fishros.com/install -O fishros && . fishros注:參照提示安裝ROS1。
(2)官網安裝
安裝ROS,根據(jù)Ubuntu系統(tǒng)版本自行選擇安裝Ubuntu1804/Ubuntu2004,安裝鏈接如下:
http://wiki.ros.org/melodic/Installation/Ubuntu#/src/SpireCV-ROS%E6%8E%A5%E5%8F%A3/_blank
執(zhí)行如下命令
#下載SpireCV-ros目錄
gitclone https://gitee.com/amovlab1/spirecv-ros.git
cdspirecv-ros
chmod+x build.sh
./build.sh
# 添加到自動執(zhí)行
echo"source devel/setup.bash">> ~/.bashrc
source~/.bashrc
接口調用
使用如下命令啟動ROS接口:
roslaunch spirecv_ros gimbal_track.launch
注:gimbal_track.launch文件在SpireCVROS的add-lgimbal分支下
2025-09-11 10:41
2025-09-09 10:52
2025-09-04 21:58
2025-08-28 11:13
2025-08-27 14:14
2025-08-26 13:50
2025-08-23 20:37
2025-08-22 10:33
2025-08-18 14:20
2025-08-13 11:12