在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用DJI M100+ROS的行人追隨項目

云深之無跡 ? 來源:云深之無跡 ? 2023-01-29 15:10 ? 次閱讀

因為這個項目是視覺+控制,使用純裸機實現(xiàn)我還沒有看到,目前就是依托操作系統(tǒng)來實現(xiàn):

cb96059c-9694-11ed-bfe3-dac502259ad0.png

需要ROS,OSDK,MSDK,三大類的包,后面是行人監(jiān)測+KCF追蹤。

cbadc2fe-9694-11ed-bfe3-dac502259ad0.png

在具體的看實現(xiàn)以前,我們看一下這個launch文件

roslaunch 命令允許我們一次啟動 launch 文件中定義的多個 ROS 節(jié)點,啟動參數(shù)等在啟動文件(launch 文件)中配置,并且如果系統(tǒng)之前沒有啟動 roscore,則 roslaunch 會自動啟動它。

cbc2fb24-9694-11ed-bfe3-dac502259ad0.png

使能人追蹤

cbde7624-9694-11ed-bfe3-dac502259ad0.png

4個主題,圖像發(fā)布,人的目標監(jiān)測,追蹤,GPS信號的發(fā)送。

然后開啟:

roslaunch dji_sdk_demo dji_sdk_client.launch
roslaunch dji_sdk sdk_manifold.launch

后面這個我沒有找到。。。,上面分別是:dji_sdk_client 和 dji_sdk節(jié)點。

roslaunch people_detect ros_people_detect.launch

運行監(jiān)測

roslaunch ros_kcf ros_kcf_node.launch

追蹤

在之后,可以使用具有自定義功能的遙控器來控制跟蹤和檢測的停止和啟動:

void StartMission1Callback(DJIDrone *drone)
{
    drone->request_sdk_permission_control();
    sleep(1);


    ros::Rate loop_rate(50);


    while(ros::ok())
    {
        ros::spinOnce();
        drone->attitude_control(0x4B,forwardV,leftrV,heightV,yawV);
        cout<

cbfbe876-9694-11ed-bfe3-dac502259ad0.png

該回調(diào)函數(shù)用于啟動任務(wù),即啟動自主檢測和跟蹤

該回調(diào)函數(shù)用于開始跟蹤,即people_detect節(jié)點給kcf_track節(jié)點一個目標。實際上,這個目標就是離圖像中心最近的人,如果沒有檢測到人,跟蹤程序就不會運行,但是當再次檢測到人時,跟蹤程序就會自動運行。

cc170d7c-9694-11ed-bfe3-dac502259ad0.png

該回調(diào)函數(shù)用于啟動和停止人員檢測

cc36e278-9694-11ed-bfe3-dac502259ad0.png

此回調(diào)函數(shù)用于停止 kcf 跟蹤器

cc47bfda-9694-11ed-bfe3-dac502259ad0.png

cc51e38e-9694-11ed-bfe3-dac502259ad0.png

因為OSDK4是支持新飛機的,我這里就選擇3.9

cc7f18e0-9694-11ed-bfe3-dac502259ad0.png

看了看issue,也是說明了這個問題,很新

也可以看到這個視覺+控制是很常見的應(yīng)用

cccffe04-9694-11ed-bfe3-dac502259ad0.png

我的A3也就是在3版本玩耍了

ccf79e28-9694-11ed-bfe3-dac502259ad0.png

有用到CV

cd04931c-9694-11ed-bfe3-dac502259ad0.png

這個是飛行的控制參數(shù)

cd174f0c-9694-11ed-bfe3-dac502259ad0.png

???啥子???

cd37de16-9694-11ed-bfe3-dac502259ad0.png

還有一個CIL的控制函數(shù),是Python2版本的

原來以前有Python接口

下載一下看看

cd8dc380-9694-11ed-bfe3-dac502259ad0.png

大開眼界

cd9d1222-9694-11ed-bfe3-dac502259ad0.png

牛逼,直接就是一個類

1cda665e8-9694-11ed-bfe3-dac502259ad0.png

在這里封裝

cdbf5152-9694-11ed-bfe3-dac502259ad0.png

在這里實現(xiàn)

cde84ec2-9694-11ed-bfe3-dac502259ad0.png

把文件放入這里

cdfaa8a6-9694-11ed-bfe3-dac502259ad0.png

改一下導入位置

"[a] Request to obtain control"

ce132854-9694-11ed-bfe3-dac502259ad0.png

這個就是一個重定向的代碼,應(yīng)該是

ce40d0a6-9694-11ed-bfe3-dac502259ad0.png

請求控制的函數(shù)

ce5e94ec-9694-11ed-bfe3-dac502259ad0.png

在下面

ce788cd0-9694-11ed-bfe3-dac502259ad0.png

在這里最終控制,就是信息的流轉(zhuǎn)

ROS服務(wù)由srv文件定義,其中包含請求消息和響應(yīng)消息。ROS 使用簡化的服務(wù)描述語言(“srv”)來描述 ROS 服務(wù)類型。

這直接建立在 ROS消息格式之上,以啟用節(jié)點之間的請求/響應(yīng)通信。服務(wù)描述存儲在包的srv/子目錄下的.srv文件中。

ce82fe68-9694-11ed-bfe3-dac502259ad0.png

我們最后看一個飛行任務(wù)控制,RC,手機,板載

反正就是測試的文件,還是挺有學頭的,再說吧。

ceba02e6-9694-11ed-bfe3-dac502259ad0.png

也可以看下具體的控制函數(shù),實現(xiàn)

ced4eb60-9694-11ed-bfe3-dac502259ad0.png

這個是PID的內(nèi)容,就兩個PID函數(shù)

cef4d63c-9694-11ed-bfe3-dac502259ad0.png

普通的

cf2590f6-9694-11ed-bfe3-dac502259ad0.png

增量式的

cf4ac31c-9694-11ed-bfe3-dac502259ad0.png

人控制型,試試上這個是派生的子類

cf78f23c-9694-11ed-bfe3-dac502259ad0.png

這個是追蹤的爸爸,是OpenCV實現(xiàn)的,看不懂。。。,對了,應(yīng)該是配置

cf95c36c-9694-11ed-bfe3-dac502259ad0.png

上面也說過了

cfa364f4-9694-11ed-bfe3-dac502259ad0.png

接著看這個追蹤的節(jié)點

cfc203a0-9694-11ed-bfe3-dac502259ad0.png

先獲取一些在launch里面設(shè)置的東西,接著就是設(shè)計高度,下面都是像子進程一樣的東西。

cfed2f30-9694-11ed-bfe3-dac502259ad0.png

處理的頻率50Hz

d013c884-9694-11ed-bfe3-dac502259ad0.png

在圖像和明確接收到東西的前提下,開始追蹤的初始化

void trackerInit(const double &cameraInfo)
{
        tracker.setParams(cameraInfo, max_v).
setImgSize(image.cols,image.rows).
setTarget(cv::Point(image.cols/2,image.rows/2),
cv::Point(image.cols/2+1,image.rows/2+1)));
}

是鄙人學識不夠了,這nm這么長,語法有點古怪。得到相機的信息,和最大的速度,然后是設(shè)置的圖像的尺寸,接著設(shè)置追蹤的目標,里面是生成一個追蹤的框子(這里是生成了點而已,寫錯了)。

最后是在中間生成一個點。

void videoInit(const std::string &fileAddr)
{
        int t = cv::getTickCount();
        std::string fileName_ = fileAddr + std::to_string(t);
        std::string fileName = fileName_ + ".avi";
        writer = cv::VideoWriter(
        fileName, 
        CV_FOURCC('F', 'L', 'V', '1'), 25.0, 
        cv::Size(image.cols, image.rows));
    }

這個是視頻的初始化,可以留下追蹤的視頻:

d030f738-9694-11ed-bfe3-dac502259ad0.png

目錄在電腦的桌面

d0663290-9694-11ed-bfe3-dac502259ad0.png

控制好高度的函數(shù)

d0862ae6-9694-11ed-bfe3-dac502259ad0.png

在一開始的類里面寫的參數(shù)

d0a8a9ea-9694-11ed-bfe3-dac502259ad0.png

這個是畫框的函數(shù),看來上面我有寫錯的地方

d0c6cf2e-9694-11ed-bfe3-dac502259ad0.png

畫完框,然后就寫入

d0e95c4c-9694-11ed-bfe3-dac502259ad0.png

寫入到MP4文件

好久沒有摸ROS,一些API不記得了,明天繼續(xù)。






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • OSDK
    +關(guān)注

    關(guān)注

    0

    文章

    3

    瀏覽量

    8128
  • ROS
    ROS
    +關(guān)注

    關(guān)注

    1

    文章

    278

    瀏覽量

    17009
  • 裸機
    +關(guān)注

    關(guān)注

    0

    文章

    39

    瀏覽量

    6376
  • KCF
    KCF
    +關(guān)注

    關(guān)注

    0

    文章

    2

    瀏覽量

    858

原文標題:DJI OSDK開發(fā)-檢測行人+追蹤.1

文章出處:【微信號:TT1827652464,微信公眾號:云深之無跡】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Micro-ROS:把ROS2放在MCU上

    對于熟悉機器人應(yīng)用的讀者,ROS想必定是不會陌生的。ROS可以說是目前機器人相關(guān)開源社區(qū)最流行的項目。每一種類型的機器人都需要以硬件的實際情況編寫符合用戶需要的功能,起初代碼的復用率很低,大大阻礙了
    的頭像 發(fā)表于 04-07 07:13 ?7750次閱讀

    【youyeetoo X1 windows 開發(fā)板體驗】基于ROS開發(fā)的LIO系統(tǒng)——項目計劃+前言開箱

    我們開發(fā)者的使用需求; 那我們從本次項目出發(fā)評價這一塊板子,首先就是可以根據(jù)需求,可以再對其進行擴展,比如通過M.2或者SATA來實現(xiàn)擴展存儲空間,或者擴展我們的無線網(wǎng)卡和4G,以及板載接口支持觸摸屏
    發(fā)表于 01-26 17:58

    無人機領(lǐng)導者大疆創(chuàng)新DJI招聘--汽車軟件崗位。工作地深圳。

    DJI大疆創(chuàng)新介紹】公司介紹:深圳市大疆創(chuàng)新科技有限公司 (簡稱DJI大疆創(chuàng)新) ,在全球無人機市場獨占鰲頭,產(chǎn)品不斷推陳出新,成功步入千家萬戶,享譽100多個國家,重新定義了“中國制造”的魅力
    發(fā)表于 10-23 16:44

    在Android中使用ROS

    %] Compiling Java code for galileo_serial_server[100%] Linking CXX executable /home/xiaoqiang/Documents/ros
    發(fā)表于 05-16 19:16

    ROS與STM32是如何進行通信的

    角速度、實際線速度STM32端ROS端之前運行的ROS項目都是在終端編譯,用vim或者gedit修改代碼,很不方便,函數(shù)跳轉(zhuǎn)查看都沒辦法實現(xiàn)。所以今天先安裝一個IDE試試ROS官網(wǎng)上有
    發(fā)表于 08-11 07:25

    什么是ROS?如何學習ROS

    什么是ROS?如何學習ROS
    發(fā)表于 11-11 07:21

    ROS自動導航小車的設(shè)計資料分享

    ROS自動導航小車1.材料清單項目ValueJeston nano(套餐一)¥899GM37-545直流減速電機帶編碼器 DC24V 1:90¥138板子自己畫(附帶電機接口以及IMU)¥200
    發(fā)表于 01-05 06:48

    搭建ARM+ROS的硬件載體之ROS的移植及測試方法

    arm64架構(gòu))  如下所示。  下載命令如下所示,《tags》填入上圖的字符串。  3. 下載ROS鏡像  根據(jù)項目需求選擇合適的ROS鏡像,本例以kinetic-ros-core為
    發(fā)表于 03-09 13:55

    ROS是什么?機器人操作系統(tǒng)ROS的介紹

    ROS 是 Robot Operating System 的縮寫,原本是斯坦福大學的一個機器人項目,后 來由 WillowGarage 公司發(fā)展,目前由 OSRF(Open Source
    發(fā)表于 09-13 17:23 ?14次下載
    <b class='flag-5'>ROS</b>是什么?機器人操作系統(tǒng)<b class='flag-5'>ROS</b>的介紹

    ROS的含義與機器人操作系統(tǒng)ROS的介紹

    為了說明講清楚 ROS,我就從 ROS 是什么,為什么使用 ROS,如何使用 ROS 三個方面展開。 △出自今年《機器人視覺與應(yīng)用》課程本人制作的課件 是什么
    發(fā)表于 09-26 14:08 ?12次下載

    瑞士測量公司攜手大疆改良DJI M600 Pro

    瑞士測量公司 Leica Geosystems 與大疆創(chuàng)新(DJI)合作改良現(xiàn)有DJI M600 Pro 無人機,其后研發(fā)出全新 Leica Aibot工業(yè)用無人機系列,方便工程人員在短時間內(nèi)繪制 3D 地圖。
    的頭像 發(fā)表于 07-10 14:31 ?4692次閱讀

    ROS與STM32通信

    角速度、實際線速度STM32端ROS端之前運行的ROS項目都是在終端編譯,用vim或者gedit修改代碼,很不方便,函數(shù)跳轉(zhuǎn)查看都沒辦法實現(xiàn)。所以今天先安裝一個IDE試試ROS官網(wǎng)上有
    發(fā)表于 12-24 19:00 ?11次下載
    <b class='flag-5'>ROS</b>與STM32通信

    通過M5stack和Uiflow控制Dji Tello無人機

    項目通過手腕上的 M5stack 和 Uiflow 塊控制 Dji Tello 無人機!
    發(fā)表于 08-03 16:14 ?1291次閱讀
    通過<b class='flag-5'>M</b>5stack和Uiflow控制<b class='flag-5'>Dji</b> Tello無人機

    ROS部署PaddlePaddle的CV模型

    paddle_inference_ros_demo功能包是基于paddle_inference_ros開發(fā)的,幫助開發(fā)者快速體驗paddle_inference在ROS環(huán)境下的推理部署效果的功能包。可以直接進入該
    的頭像 發(fā)表于 10-20 17:02 ?731次閱讀
    <b class='flag-5'>ROS</b>部署PaddlePaddle的CV模型

    ros的基本概念是什么

    基本概念: ROS是一個用于在不同進程間匿名的發(fā)布、訂閱、傳遞信息的中間件。 ROS2系統(tǒng)的核心部分是ROS網(wǎng)絡(luò)(ROS Graph)。 ROS
    的頭像 發(fā)表于 11-27 11:21 ?1808次閱讀
    主站蜘蛛池模板: 免播放器av少妇影院| 国产色女人| 成人午夜毛片| 四虎永久免费影院在线| 五月婷婷丁香在线观看| 久久青青成人亚洲精品| 给个网站可以在线观看你懂的| 在线午夜| 免费又爽又黄的禁片1000部 | 午夜短视频| 国产网站黄色| 色男人综合| 亚洲操| 4438x全国免费| 日本人色道| 天天看天天干| 欧美一区二区三区不卡免费观看| 奇米视频在线观看| 天天看天天碰| 狠狠色婷婷七月色综合| 久久香蕉国产精品一区二区三| 免费一级e一片在线播放| 字幕网中文aⅴ资源站| 四虎精品影院2022| 国产一区二区三区美女在线观看 | 天天看片网站| 久久精品国产99国产精品澳门| 免费一级毛片无毒不卡| 久久久这里有精品999| 一级毛片免费在线观看网站| 欧美一级看片免费观看视频在线| 天天在线天天综合网色| 欧美成网站| 黄色片日本网站| 奇米影视一区| 亚洲人毛茸茸bbxx| 2018天天射| 美女扒开下面让男人捅| 黄色顶级视频| 狠狠操亚洲| 熟妇毛片|