日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

开源项目|从0到1教你搭建一个适配于智能车的目标检测系统

發布時間:2023/12/19 windows 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 开源项目|从0到1教你搭建一个适配于智能车的目标检测系统 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

引言

本教程連載一輛能夠用 ROS 控制的帶攝像頭的小車,用 ROS 發布圖像數據,對獲取到的圖像進行處理,例如目標檢測。這里主要介紹如何把本教程后面的的內容匯聚起來,實現一個能目標檢測的小車。

先歸納一下之后文檔的內容:

獲取本項目完整教程代碼及文檔請關注下方二維碼

并在公眾號后臺回復數字“4"

這篇文檔幾乎涉及了上面所有文檔的內容是一個綜合應用,大家可以根據之后的連載一步一步學起來。如果對上面的內容比較熟悉了,就會發現這篇文檔很簡短,但是卻是建立在之前已有的基礎上。

現在應當已經熟悉的內容:

  • 了解 CNN 的工作原理;

  • 能使用 Darknet 訓練自己的目標檢測模型

  • 能用 rosserial 建立 RT-Thread 和 ROS 的連接

  • 能用 ROS 發布圖像信息

下面就會介紹如何用 ROS 發布的圖像信息和 Darknet 連接做目標檢測。

1.Darknet ROS

1.1 獲取源碼

其實下面要用到的是一個 ROS 軟件包,這個軟件包現在也是開源的:

1#?初始化工作環境 2$?mkdir?catkin_workspace 3$?cd?catkin_workspace/src 4$?catkin_init_workspace 5 6##?下載源碼 7$?git?clone?--recursive?http://github.com/leggedrobotics/darknet_ros.git

除了源碼,我們還要下載一些訓練好的神經網絡權值,放在下面這個目錄:

1$?catkin_workspace/src/darknet_ros/darknet_ros/yolo_network_config/weights/

如果覺得國外下載速度太慢的話,這里我有個國內的 CDN 加速鏡像:

  • yolov2-tiny.weights:https://wuhanshare-1252843818.cos.ap-guangzhou.myqcloud.com/yolov2-tiny.weights

  • yolov2.weights:https://wuhanshare-1252843818.cos.ap-guangzhou.myqcloud.com/yolov2.weights

  • yolov3.weights:https://wuhanshare-1252843818.cos.ap-guangzhou.myqcloud.com/yolov3.weights

如果源碼和權值都下載好了,我們就可以準備編譯了。

1.2 編譯源碼

為了保證 Darknet 能夠獲取到攝像頭的數據,我們需要先告訴它攝像頭的信息發布在哪里,修改這個文件:

1$?catkin_workspace/src/darknet_ros/darknet_ros/config/ros.yaml

把下面的 topic 修改為自己圖像發布的位置,例如我這里發布在 /usb_cam/image_raw

1camera_reading: 2????topic:?/usb_cam/image_raw 3????queue_size:?1

然后就可以編譯軟件包了,在 catkin_workspace 目錄下:

1$?catkin_make

一切正常的話,編譯就完成了,其實不需要做太多的工作,編譯完記得更新一下環境變量,這樣后面才能正常啟動這個軟件包。

1$?sorce?devel/setup.bash

1.3 目標檢測

在進行目標檢測前,我們先啟動 ROS 節點:

1$?roscore

然后啟動一個攝像頭節點:

1roslaunch?usb_cam?usb_cam-test.launch

這樣就可以實時看到攝像頭的數據了,攝像頭在哪里其實不重要,既可以在小車上,也可以在電腦上,這也是 ROS 的優美之處,只要節點發布了攝像頭消息,不管攝像頭在哪, ROS 都能拿到處理:

接下來我們啟動 Darknet 的節點:

1$?roslaunch?darknet_ros?darknet_ros.launch

下面這張圖就可以看到有兩個視頻流,左邊的是沒有處理的實時圖像,右邊是運行了目標檢測的結果:

2.總結

RT-Thread 作為實時操作系統負責控制,Linux 則負責提供豐富的軟件包運行算法,兩者相結合,互相取長補短還是配合地挺好的。

3.參考文獻

Darknet ROS:https://github.com/leggedrobotics/darknet_ros

獲取本項目完整教程代碼及文檔請關注下方二維碼

并在公眾號后臺回復數字“4"

RT-Thread


讓物聯網終端的開發變得簡單、快速,芯片的價值得到最大化發揮。Apache2.0協議,可免費在商業產品中使用,不需要公布源碼,無潛在商業風險。

長按二維碼,關注我們

點擊“閱讀原文”進入RT-Thread GitHub

總結

以上是生活随笔為你收集整理的开源项目|从0到1教你搭建一个适配于智能车的目标检测系统的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。