路徑規劃開源框架

Star 200+php

https://github.com/CPFL/Autowarecss

用於城市自主駕駛的開源軟件。 http://www.tier4.jp/
html

 

Autoware

 

 

 

用於城市自主駕駛的集成開源軟件,由第四層維護。支持如下功能:node

  • 3D本地化
  • 3D映射
  • 路徑規劃
  • 路徑跟隨
  • 加速/制動/轉向控制
  • 數據記錄
  • 汽車/行人/物體檢測
  • 交通訊號檢測
  • 交通燈識別
  • 車道檢測
  • 對象跟蹤
  • 傳感器校準
  • 傳感器融合
  • 面向雲的地圖
  • 鏈接自動化
  • 智能手機導航
  • 軟件仿真
  • 虛擬現實

Autoware受BSD許可證保護。請自行負責使用。爲了安全使用,咱們爲不擁有真正自主車輛的人提供基於ROSBAG的仿真方法。若是您使用Autoware與真正的自主車輛,請在現場測試以前制定安全措施和風險評估。python

執照

  • 新的BSD許可證
    • 參見許可證

規格推薦

  • 的CPU內核:8

  • RAM大小:32GB
  • 存儲大小:30GB

要求

  • ROS靛藍(Ubuntu 14.04)或ROS玉(Ubuntu 15.04)
  • OpenCV 2.4.10或更高版本注意:截至2016年8月,Autoware不支持OpenCV 3或更高版本。請使用OpenCV 2
  • Qt 5.2.1或更高
  • CUDA(可選)
  • FlyCapture2(可選)
  • 犰狳

若是在ROS Hydro或Ubuntu 13.04,13.10上使用Autoware,請在2015 / OCT / 21以前使用結賬修訂。linux

安裝Ubuntu 14.04靛藍的依賴

  1.  
    % sudo apt-get install ros-indigo-desktop-full ros-indigo-nmea-msgs ros-indigo-nmea-navsat-driver ros-indigo-sound-play ros-indigo-jsk-visualization ros-indigo-grid-map
  2.  
    % sudo apt- get install ros-indigo-controller-manager ros-indigo-ros-control ros-indigo-ros-controllers ros-indigo-gazebo-ros-control ros-indigo-sicktoolbox ros-indigo-sicktoolbox-wrapper ros-indigo-joystick-drivers ros-indigo-novatel-span-driver
  3.  
    % sudo apt- get install libnlopt-dev freeglut3-dev qtbase5-dev libqt5opengl5-dev libssh2-1-dev libarmadillo-dev libpcap-dev gksu libgl1-mesa-dev

注意:請勿安裝ros-indigo-velodyne-pointcloud軟件包。若是您已經安裝,請卸載它。git

安裝Ubuntu 15.04玉器的依賴項

  1.  
    % sudo apt-get install ros-jade-desktop-full ros-jade-nmea-msgs ros-jade-nmea-navsat-driver ros-jade-sound-play
  2.  
    % sudo apt- get install ros-jade-controller-manager ros-jade-ros-control ros-jade-ros-controllers ros-jade-gazebo-ros-control ros-jade-sicktoolbox ros-jade-sicktoolbox-wrapper ros-jade-joystick-drivers ros-jade-novatel-span-driver
  3.  
    % sudo apt- get install libnlopt-dev freeglut3-dev qt5-default libqt5opengl5-dev libssh2-1-dev libarmadillo-dev libpcap-dev gksu libgl1-mesa-dev

注意:在Ubuntu15.04 Jade中沒有提供jsk_visualization和grid_map。請從如下存儲庫下載並自行構建。https://github.com/jsk-ros-pkg/jsk_visualization https://github.com/ethz-asl/grid_mapgithub

如何構建

  1.  
    $ cd $HOME
  2.  
    $ git clone https://github.com/CPFL/Autoware.git
  3.  
    $ cd ~/Autoware/ros/src
  4.  
    $ catkin_init_workspace
  5.  
    $ cd ../
  6.  
    $ ./catkin_make_release

###基於Caffe的對象檢測器基於CV的檢測器RCNN和SSD節點不會自動構建。算法

要構建這些節點,請遵循相應節點的README SSD RCNN編程

如何開始

  1.  
    $ cd $HOME/Autoware/ros
  2.  
    $ ./run

對於開發人員

當心更改下面的文件ros/src/sensing/drivers/lidar/packages/velodyne。有子樹。原始存儲庫在這裏。若是從這個存儲庫更改這些文件,您必須使用Git子樹推送。(若是您不明白,請不要更改並推送代碼 git subtree)。

GitFlow,git分支模型,在Autoware倉庫中引入。

  • 添加新功能時,您能夠從中分支功能分支develop
    您可使用如下命令。
    $ git checkout -b feature/[your_branch_name] develop
  • 當您在master分支中發現錯誤時,能夠從您的修補程序分支中分離出來master
    您可使用如下命令。
    $ git checkout -b hotfix/[your_branch_name] master

更多細節在這裏

文件

請參閱Autoware / docs。截至2015年8月,咱們僅提供日本文件。英文文本將會加入。

主要包裝

本土化

  • ndt_localizer
  • icp_localizer

發現

  • lidar_tracker
  • cv_tracker
  • road_wizard

使命(全球)規劃

  • lane_planner
  • way_planner
  • freespace_planner

運動(本地)規劃

  • astar_planner
  • lattice_planner
  • dp_planner

車輛控制

  • waypoint_follower
  • waypoint_maker

引文研究論文

  1. S.加藤,Takeuchi,Y. Ishiguro,Y.Ninomiya,K.Takeda和T. Hamada。「開放式自動車輛方法」,IEEE Micro,Vol。35,No. 6,pp。60-69,2015。連接

演示視頻

公路示範

公路示範

說明視頻

快速開始

快速開始

加載地圖數據

加載地圖數據

GNSS定位

GNSS定位

沒有GNSS的本地化

沒有GNSS的本地化

製圖

製圖

用SSD進行檢測

SSD

用DPM檢測

DPM

用歐氏距離聚類檢測

聚類

交通燈識別

交通燈識別

規劃與ROSBAG

規劃與ROSBAG

用wf_simulator進行規劃

用wf_simulator進行規劃

混合狀態A *

用wf_simulator進行規劃

校準工具包

校準工具包

樣品數據

森山在名古屋的3D地圖

森山駕駛的ROSBAG數據

用於生成森山的演示啓動文件的腳本

ROSBAG數據用於校準

IROS 2016數據

名古屋駕駛的ROSBAG數據

聯繫

Autoware Developers(autoware@googlegroups.com

要訂閱Autoware Developers ML,

----

用於ROS的RGB-D SLAM

https://github.com/felixendres/rgbdslam_v2

 

RGBDSLAM v2

 

 

 

...是用於RGB-D相機的最早進的SLAM系統,例如Microsoft Kinect或Asus Xtion Pro Live。您可使用它來建立3D點雲或OctoMaps。

RGBDSLAMv2是基於開源項目,ROS,OpenCV,OpenGL,PCL,OctoMap,SiftGPU,g2o等等 - 謝謝!

具備系統描述和性能評估的期刊文章能夠在如下出版物中找到:

「3D Mapping with a RGB-D Camera」,
F. Endres,J.Hess,J.Sturm,D. Cremers,W.Burgard,
IEEE Transactions on Robotics,2014。

更多的信息能夠在個人博士論文中找到

其餘信息能夠在這裏找到:

RGBDL基準數據集上的RGBDSLAM

先決條件

  • Ubuntu 16.04
  • ROS動力學
  • Amd64處理器(ARM已知有問題,主要與qt和opengl相關)其餘版本可能會工做,但未經測試。若是您使用其餘版本,請報告成功。

安裝

這是一個規範的方式,若是你知道你在作什麼,隨時適應。

  1. 將RGBDSLAMv2放在catkin工做區中:有關 詳細信息,請參閱catkin 教程。使用git將此存儲庫克隆到工做區的「src /」目錄中。或下載RGBDSLAMv2做爲存檔,並將其解壓縮到「src /」。

  2. 下載個人[g2o fork | https://github.com/felixendres/g2o ],將其放在其餘目錄中。構建並安裝。將環境變量導出$G2O_DIR到安裝目錄,讓rgbdslam_v2知道在哪裏找到它(請參閱從Scratch安裝一個示例)。

  3. 使用rosdep(即「rosdep install rgbdslam」)安裝缺乏的依賴項。詳情請見http://wiki.ros.org/ROS/Tutorials/rosdep

  4. 要構建RGBDSLAMv2去你的catkin工做區並執行「catkin_make」。若是您收到有關缺乏siftgpu庫的錯誤信息,請再次執行「catkin_make」。

##從Scratch ########################################### ########如今有一個install.sh腳本,能夠執行(bash install.sh)。它安裝在〜/ Code之下所需的一切(您能夠在腳本中更改位置)。

腳本簡短並且不復雜,所以您也能夠將其用做手冊。

若是要使用安裝腳本,則直接下載就足夠了 。沒有必要克隆這個存儲庫,由於腳本會爲你作這個。

若是您擁有4GB或更多內存的多核機器,則能夠經過將「-j2」的兩次發生增長到例如「-j4」來加快編譯速度。

安裝完成 下一步是什麼?

有關使用狀況的詳細信息,請參閱如下部分。可是,讓您快速開始這裏是最重要的指標:

  • 若是要使用RGBDSLAMv2與RGB-D攝像機,您可能必須安裝openni(sudo apt-get install ros-kinetic-openni-launch)或相似的東西

  • 查看「launch /」中的啓動文件的示例和具體用例。roslaunch rgbdslam openni + rgbdslam.launch是實時映射的良好起點。

  • 您可能須要根據攝像機驅動程序節點調整輸入主題的參數。

  • 查看「test /」中的README,用於在Juergen Sturm的RGB-D SLAM數據集和基準測試中運行,測試和評估RGBDSLAMv2:http : //vision.in.tum.de/data/datasets/rgbd-dataset 您須要cython for評估腳本(sudo apt-get install cython)。

  • 若是要使用SURF或SIFT,則須要從源代碼構建opencv,包括非免費模塊(這不包括已包含的SIFTGPU,但須要在CMakeLists.txt中啓用)。在RGBDSLAMv2的CMakeLists.txt中,您能夠設置OpenCV的構建目錄,並啓用非免費功能。請注意,SIFT和SURF不是最佳選擇。因爲RGBDSLAMv2中的新(軟件)功能,ORB優於二者。

RGBDSLAM剛剛啓動

重要的提示

該軟件是ROS Fuerte版本的RGBDSLAM的更新。然而,不少事情都發生了變化,因此下面的一些文檔可能會被淘汰。請報告文檔的問題。謝謝。

組態

有幾個示例啓動文件在某些​​用例中設置了RGB-D SLAM的參數。有關全部設置的明確列表及其默認設置,請參閱GUI菜單設置 - >查看當前設置中的src / parameter_server.cpp或(當前設置而不是默認設置)中可讀取的定義。

各類用例啓動文件可能沒法正常工做,由於它們沒有常常測試。你應該讓他們跑步,若是你提到的主題(「rostopic列表」和「rosnode信息」將幫助你「rqt_graph」也是太好了)。

用法

大多數人彷佛想要註冊點雲。當您命令RGB-D SLAM執行此操做時,默認狀況下會發送到/ rgbdslam / batch_clouds上(見下文)。發送的雲實際上與之前同樣,可是/從/映射到/ openni_camera的默認轉換是在/ tf發送的。

octoMap庫被編譯到rgbdslam節點。這容許直接建立octomap。在GUI中,能夠經過從「數據」菜單中選擇「保存八進制」來完成。在線八進制是可能的,但不推薦。

從RGB-D基準序列fr2 / desk建立的OctoMap

使用GUI

要啓動RGBDSLAMv2啓動,例如$ roslaunch rgbdslam openni + rgbdslam.launch

或者,您能夠單獨啓動openni節點和RGBDSLAMv2,例如:roslaunch openni_camera openni_node.launch roslaunch rgbdslam rgbdslam.launch

要捕獲模型,請按空格開始錄製連續流,或按回車記錄單幀。爲了減小數據冗餘,從(幾乎)相同位置的順序幀不包括在最終模型中。

參數RGBDSLAMv2能夠經過參數進行定製。這些應該在啓動文件中設置。能夠在GUI操做期間更改參數,可是,從GUI更改可能對許多參數沒有影響。

可視化3D可視化顯示全局優化模型(您可能須要點擊它才能在優化後更新視圖)。除了缺乏值和深度跳躍以外,相鄰點能夠進行三角測量。使用快捷方式「t」,能夠切換三角測量。因爲原始點的渲染速度稍微加快,參數「cloud_display_type」控制是否在收到雲時徹底計算三角測量。參數「gl_point_size」對大多數用戶多是有用的。

使用無GUI

RosUI能夠替代Grapical_UI來運行rgbdslam headless,例如在PR2上。而後能夠經過服務調用使用rgbdslam。可能的電話是:

  • / rgbdslam / ros_ui {reset,quick_save,send_all,delete_frame,optimize,reload_config,save_trajectory}
  • / rgbdslam / ros_ui_b {pause,record} {true,false}
  • / rgbdslam / ros_ui_f {set_max} {float}
  • / rgbdslam / ros_ui_s {save_octomap,save_cloud,save_g2o_graph,save_trajectory,save_features,save_individual} {filename}

要啓動rgbdslam headless使用headless.launch:$ roslaunch rgbdslam headless.launch

經過如下方式捕獲單個幀:$ rosservice call / rgbdslam / ros_ui frame

捕獲數據流:$ rosservice call / rgbdslam / ros_ui_b pause false

使用計算轉換髮送點雲(例如,到rviz或octomap_server):$ rosservice call / rgbdslam / ros_ui send_all

使用如下之一保存數據:

一個文件中的全部點雲在rgbdslam / bin目錄中的quicksave.pcd:$ rosservice call / rgbdslam / ros_ui_s save_cloud

在rgbdslam / bin目錄中的本身文件中的每一個點雲:$ rosservice call / rgbdslam / ros_ui save_individual

/ rgbdslam / ros_ui:

  • 復位「」重置圖形,刪除全部節點(僅在捕獲新圖像時刷新)「
  • 幀「從傳感器捕獲一幀」
  • 優化「觸發器圖優化器」
  • reload_config「從ROS參數服務器從新加載參數」
  • quick_save「將全部點雲保存在一個文件中,在rgbdslam / bin目錄中的」quicksave.pcd「
  • send_all''將全部點雲發送到/ rgbdslam / converted_cloud(可使用rviz進行可視化)''
  • delete_frame''從圖形中刪除最後一幀(僅在捕獲新圖像時刷新)''

/ rgbdslam / ros_ui_b:

  • 暫停「暫停或恢復圖像的捕獲」
  • 記錄「暫停或中止記錄袋文件,能夠在rgbdslam / bin目錄中找到」

/ rgbdslam / ros_ui_f:

  • set_max「過濾出比此值更遠的全部數據點(以cm爲單位,僅用於保存到文件中)

/ rgbdslam / ros_ui_s:

  • save_features'將特徵位置和描述符保存在具備給定文件名的「yaml」文件中
  • save_cloud「將雲保存到給定的文件名(應以.ply或.pcd結尾)」
  • save_individual'將每一個掃描保存在本身的文件中(在給定的前綴中添加一個後綴)''
  • save_octomap「將雲保存到給定的文件名」
  • save_trajectory'將傳感器軌跡保存到文件_estimate.txt''

進一步幫助

編譯可能須要不少內存,特別是若是設置了環境變量$ ROS_PARALLEL_JOBS。

若是您位於德國,並將保存的文件夾加載到meshlab中,請嘗試切換到US語言環境,或用.use文件中的逗號替換小數點。

若是您對RGBDSLAM的安裝或使用有任何疑問,請參閱http://answers.ros.org/questions/?tags=RGBDSLAM如需進一步的問題,建議,修改本自述文件或提交修補程序,請聯繫Felix Endres(endres @ informatik.uni-freiburg.de)。

除了本手冊,可使用rosdoc(「rosrun rosdoc rosdoc rgbdslam」)建立代碼文檔,該文件將在當前目錄中建立一個「doc」文件夾。

GICP和SIFTGPU

若是與GICP或SIFTGPU的編譯或連接有關的問題,能夠在CMakeLists.txt的頂部停用這些功能。您可能會得到更快的GPU功能設置參數「siftgpu_with_cuda」,但您將須要安裝可能須要NVidia GPU的專有CUDA驅動程序(請參閱http://www.nvidia.com/object/cuda_gpus.html)。要安裝開發驅動程序和CUDA SDK,您可使用如下教程:http ://sublimated.wordpress.com/2011/03/25/installing-cuda-4-0-rc-on-ubuntu-10-10- 64位/ ubuntu 10.04:http : //ubuntuforums.org/showthread.php?t=1625433(在Ubuntu 10.04 x64上測試)要使用SiftGPU,您應該安裝「libdevil-dev」。

能夠在external / siftgpu / Linux / makefile中更改其餘編譯信息。

若是您收到siftgpu庫找不到的錯誤,請在目錄external / siftgpu /並從新運行catkin_make中手動執行「make」。

GICP普遍的ICP能夠(de)激活,以完善註冊。有關更多信息,請參閱http://stanford.edu/~avsegal/generalized_icp.html

許可信息

這個軟件是分發的,但願它是有用的,但沒有任何保證; 甚至沒有適銷性或適用於特定用途的默示保證。

RGBDSLAM是根據GPL v.3受權的。請參閱隨附的文件「複製」。

----

ROS2:https://github.com/ros2/ros2/wiki

 

ROS 2

 

 

 

機器人操做系統(ROS)是一組可幫助您構建機器人應用程序的軟件庫和工具。從驅動程序到最早進的算法,以及強大的開發人員工具,ROS具備您下一個機器人項目所需的功能。這都是開源的。

在這裏,您將找到有關如何安裝和使用ROS 2軟件的文檔,ROS 2是一個正在大力開發的新版本的ROS。有關ROS 2的更多信息,請參見下文。

若是您正在尋找有關ROS 1的信息(即ROS,由於它已經存在了好幾年,如今您可能正在使用),請查看ROS網站文檔維基

在繼續以前,請閱讀功能頁面瞭解當前ROS 2版本中的內容。

安裝

請參閱安裝頁面

教程

ROS 2正在大力發展,全部版本目前都是「alpha」-prefixed。您不該該指望今天從ROS 1切換到ROS 2,但您能夠查看教程頁面,以查看系統在當前狀態下能夠執行的操做的一系列示例。

特約

有關如何爲ROS 2開發作出貢獻的詳細信息,請參閱貢獻頁面開發人員指南

報告問題和提問

請參閱聯繫頁面

關於ROS 2

自從ROS於2007年啓動以來,機器人和ROS社區發生了很大變化。ROS 2項目的目標是適應這些變化,利用ROS 1的優點,改善不了的。有一個關於ROS 2的動機完整的文章在這裏

當前狀態

ROS 2的Alpha版本目前正在進行約6周的節奏,讓社區成員有機會對系統提供反饋。在高層次上,ROS 2的發展普遍側重於爲支持多個DDS中間件實施,多個操做系統,多種編程語言以及與運行ROS 1的系統共存的基礎奠基基礎。有關當前功能的詳細信息,請參閱功能

有什麼事情

有關ROS 2的即將推出的功能的詳細信息,請參閱路線圖

在哪裏能夠找到更多信息

有關ROS 2設計的各類文章在design.ros2.org,如:爲何選擇ROS 2.0?DDS上的ROS以及ROS 1和ROS 2之間的變化

ROS 2的代碼是開源的,分爲各類存儲庫。您能夠在ros2 github組織上找到大多數存儲庫的代碼。

如下是關於ROS 2的ROSCon會談,並提供有關ROS 2和各類演示的工做的信息:

標題 類型 連接
ROS 2更新 - alpha版本總結,架構概述 ROSCon 2016演示 幻燈片 / 視頻
評估ROS2通訊層的彈性 ROSCon 2016演示 幻燈片 / 視頻
ROS 2狀態 - 演示和技術背後 ROSCon 2015演示 幻燈片 / 視頻
ROS 2在「小」嵌入式系統上 ROSCon 2015演示 幻燈片 / 視頻
ROS和ROS 2.0中的實時控制 ROSCon 2015演示 幻燈片 / 視頻
爲何要使用ROS 2 ROSCon 2014演示 幻燈片 / 視頻
下一代ROS:創建在DDS上 ROSCon 2014演示 幻燈片 / 視頻

 

----

 

SPENCER多模態人員檢測和跟蹤框架

在歐盟FP7項目SPENCER的背景下,針對移動機器人開發的多模態基於ROS的人羣和檢測跟蹤框架。

 

 

 

被追蹤的人投射到前面的RGB-D相機

特色一目瞭然

  • 多模式檢測:多個RGB-D和2D激光探測器在一個通用的框架中。
  • 人員跟蹤:基於最近鄰數據關聯的高效追蹤器。
  • 社會關係:經過連貫的運動指標估計人與人之間的空間關係。
  • 羣體跟蹤:根據社會關係檢測和跟蹤羣體。
  • 魯棒性: IMM,追蹤啓動邏輯和高回調檢測器輸入等各類擴展功能令人們跟蹤器即便在很是動態的環境中也能相對穩健地工做。
  • 實時:在遊戲筆記本電腦上運行20-30 Hz,跟蹤器自己只須要1個CPU核心的10%。
  • 可擴展和可重用:結構良好的ROS消息類型和明肯定義的界面能夠輕鬆集成自定義檢測和跟蹤組件。
  • 強大的可視化:一系列可重用的RViz插件,能夠經過鼠標點擊配置,還有用於生成動畫(2D)SVG文件的腳本。
  • 評估工具:用於評估跟蹤性能的指標(CLEAR-MOT,OSPA)。
  • ROS集成:全部組件都與ROS徹底集成,並以C ++或Python編寫。不須要Matlab。

動機

歐盟FP7研究項目SPENCER的目標是爲服務機器人開發算法,能夠經過高度動態和擁擠的行人環境(如機場或購物中心)來指導羣體,同時以符合社會的方式行事,例如不跨越家庭或夫婦 這樣的機器人能夠遇到的示例性狀況在右側的下圖中可視化。爲此,須要開發出在機器人環境中對於人類感知的強大和計算效率高的組件。

SPENCER用例    SPENCER用例

建築

下圖顯示了在SPENCER項目背景下開發的實時人員和組檢測和跟蹤管道:

SPENCER追蹤管道

咱們管道的不一樣階段之間的整個溝統統過ROS消息發生,這些消息鼓勵在自定義設置中重用咱們的組件。模塊化架構容許在管道的全部階段中各個組件的簡單互換性。

可用組件概述

消息定義

咱們提供一套可重複使用的ROS消息類型定義,咱們已經經過不一樣的傳感器模式和跟蹤方法成功地應用於各類人員檢測和跟蹤場景。能夠在spencer_tracking_msgs包中找到最相關的消息。

咱們高度鼓勵重用這些消息,以從咱們豐富的檢測,跟蹤,過濾和可視化組件的基礎設施中獲益!現有的檢測和跟蹤算法一般能夠經過以咱們的格式發佈附加消息,或經過編寫一個簡單的C ++或Python節點來轉換消息格式,來容易地集成。

人檢測

咱們集成了如下人員檢測模塊:

輸出geometry_msgs/PoseArraypeople_msgs/PositionMeasurementArray消息的其餘外部檢測器可使用此包中的腳本輕鬆地集成到咱們的框架。這種檢測器的實例包括:

多模態檢測和融合

對於檢測到檢測融合,咱們實現了一系列節點,能夠經過roslaunch XML文件靈活地組合融合流水線。詳細信息能夠在spencer_detected_person_association包中找到。下圖顯示了在SPENCER實驗期間使用的示例配置:

示例多模態人員追蹤架構

在檢測到軌道融合(目前未實現)的狀況下,仍然建議對與軌道相關聯的每組檢測發佈CompositeDetectedPerson消息(經過CompositeDetectedPersons),以便稍後能夠返回到來自軌道的原始檢測,以及經過相關聯的檢測標識查找關聯圖像邊界框等。

我的和組跟蹤

對於我的和組跟蹤,咱們目前提供基於最近鄰標準過濾器數據關聯的示例性代碼,其在大多數使用狀況下足夠強大(特別是若是正在使用多模態檢測器)。的人跟蹤已加強與軌道起始的邏輯和4不一樣的基於IMM-運動模型(恆速低過程噪聲,高過程噪聲,協調轉彎和布朗運動),以使跟蹤更加健壯。

組跟蹤器依賴於社會/空間關係經由如在[1]中所述的相同相干運動指示器特徵來肯定。

在內部,咱們已經集成了更先進的方法,包括軌跡導向多假設人物跟蹤器[2],以及假設爲導向的多模型多假設人和組跟蹤器[1]。這些組件使用徹底相同的ROS消息定義,可是它們還沒有公開。這裏提供的組件最初做爲比較的基準方法實現。

過濾跟蹤人員和跟蹤指標

所述spencer_tracking_utils包包含許多獨立的ROS的節點,能夠過濾傳入組TrackedPerson基於不一樣標準的消息,例如,到傳感器/機器人的距離,僅在視覺上確認軌道等

spencer_tracking_metrics中,咱們已經公開了不一樣跟蹤指標的實現,例如CLEAR-MOT和OSPA,以便它們與咱們的消息定義兼容。這些可用於評估給定的基準線的跟蹤性能。

導入舊的註釋日誌文件

srl_tracking_logfile_import包提供了進口的卡門格式舊的2D激光掃描日誌文件已經標註了真實情況的人曲目,如python腳本,這些數據集

可視化

所述srl_tracking_exporter包中包含用於從2D自上而下的角度爲可伸縮矢量圖形(SVGs)渲染軌道軌跡,檢測和機器人測距法的有用Python腳本。這些能夠選擇性地動畫化以即可視化一個或多個軌道隨着時間的演變。

咱們的框架的一個主要亮點是可重用和高度可配置的定製RViz插件,用於可視化:

  • 檢測人員
  • 跟蹤人員(包括閉塞狀態,相關檢測ID和協方差橢圓)
  • 社會關係
  • 跟蹤組

做爲示例,跟蹤人員的一些功能顯示爲:

  • 不一樣的視覺風格:3D邊框,圓柱,動畫人網
  • 着色:6種不一樣的調色板
  • 顯示速度箭頭
  • 可視化的99%協方差橢圓
  • 顯示軌跡ID,狀態(匹配,遮擋),相關檢測ID
  • 當軌道被遮擋時可配置的不透明度下降
  • 跟蹤歷史(軌跡)顯示爲點或線
  • 可配置的字體大小和線寬

如下全部屏幕截圖都是使用這些插件生成的。

咱們系統的示例屏幕截圖

如下屏幕截圖顯示咱們的系統正在運行,同時從擁擠的機場環境播放記錄的數據:

多民族人羣檢測 橙色:2D激光[3],青色:上身RGB-D [2],黃色:單目視覺HOG [2],灰色:融合檢測(使用檢測到檢測融合時)。

檢測結果示例

人追蹤。紅色:經過基於圖像的檢測器視覺確認的軌跡

跟蹤結果的示例

經過相干運動指示器特徵進行組跟蹤,如[1]

示例組跟蹤結果

演示視頻

人員檢測和跟蹤系統的視頻能夠在SPENCER YouTube頻道上找到:

運行時性能

在配有先後RGB-D傳感器(Asus Xtion Pro Live)和兩臺SICK LMS500激光掃描儀的SPENCER機器人平臺上,咱們經過兩臺高端遊戲筆記本電腦(Intel Core i7-4700MQ,nVidia GeForce 765M)。用於正面傳感器的檢測器與檢測融合管線一塊兒在一臺筆記本電腦上執行。背面傳感器和人員和組跟蹤模塊的檢測器在第二臺筆記本電腦上執行。兩臺筆記本電腦經過千兆以太網互相鏈接,平臺的其他部分相互鏈接。

經過這種配置,組件能夠實時運行在20-25 Hz(可視化卸載到單獨的計算機上),即便在擁擠的環境中也能夠看到30多我的。

安裝

在Ubuntu 14.04 / ROS Indigo和Ubuntu 16.04 / ROS Kinetic上測試了人員和組檢測和跟蹤框架。有關機器人操做系統(ROS)的更多信息,請參閱ros.org

注意:整個框架僅適用於64位系統。在32位系統上,您將遇到Eigen相關的對齊問題(失敗的斷言)。參見問題#1

克隆源代碼庫

因爲咱們目前尚未提供任何預先構建的Debian軟件包,所以您必須從源代碼構建咱們的框架。做爲第一步,建立一個新的catkin工做區的文件夾,並將GitHub存儲庫克隆到子文件夾中src

  1.  
    cd ~/Code
  2.  
    mkdir -p spencer-people-tracking-ws/src
  3.  
    cd spencer-people-tracking-ws/src
  4.  
    git clone https://github.com/spencer-project/spencer_people_tracking.git
2.安裝所需的依賴項

假設您已經安裝了ROS Indigo或ROS Kinetic,咱們建議您經過如下方式安裝咱們的框架所需的依賴關係:

  1.  
    rosdep update
  2.  
    rosdep install -r --from-paths . --ignore-src
3.初始化catkin工做空間

接下來,咱們建議使用catkin(可經過sudo apt-get install python-catkin-tools)設置工做區:

  1.  
    cd ..
  2.  
    catkin config -- init --cmake-args -DCMAKE_BUILD_TYPE=RelWithDebInfo
4.構建ROS包

最後,經過如下方式構建全部包:

catkin build -c -s 
5.採購ROS工做區

構建工做區後,經過如下方式提供:

source devel/setup.bash 
關於地面HOG探測器的CUDA SDK的特別說明

使用的cudaHOG庫rwth_ground_hog須要使用nVidia顯卡和已安裝的CUDA SDK(推薦版本爲6.5)。因爲安裝CUDA(特別是在使用Optimus / Bumblebee的筆記本電腦上)而且編譯庫並不簡單,所以在此提供了安裝說明。一旦遵循了這些說明,rwth_ground_hog須要使用catkin 重建包。若是沒有安裝CUDA SDK,則ROS程序包仍將編譯,但不會提供任何功能。

快速入門教程

如下演示和三個教程可幫助您輕鬆開始使用咱們的框架。

演示:來自bagfile的RGB-D和2D激光的多模跟蹤

能夠經過運行下載具備2D激光和RGB-D傳感器數據來測試咱們框架的簡短示例性袋子文件

rosrun spencer_people_tracking_launch download_example_bagfiles.sh 

而後,您能夠啓動

roslaunch spencer_people_tracking_launch tracking_on_bagfile.launch 

這將開始播放一個bagfile(一旦按SPACE下來取消暫停)並運行Rviz進行可視化。

使用PCL人員檢測器,而不是上身檢測器

做爲基於深度模板的上身檢測器的替代方案,您能夠選擇從點雲庫中使用咱們稍微修改的人物檢測器版本。在使用HOG SVM驗證候選ROI以前,該檢測器首先執行歐氏距離聚類和頭次集羣提取。要這樣作,傳遞use_pcl_detector:=true到啓動文件。

啓用groundHOG檢測器

若是您已經編譯了cudaHOG庫(參見上面的說明),您能夠選擇經過傳送use_hog_detector:=true到啓動文件來啓用groundHOG檢測器。檢測到檢測融合流水線將自動融合來自兩個檢測器的檢測。

教程1:使用單個RGB-D傳感器進行人員/組跟蹤和可視化

這是開始使用本地鏈接到計算機的單個RGB-D傳感器的最簡單方法。將您的Asus Xtion Pro Live傳感器水平放置在平面上,並將其鏈接到計算機(或播放下面進一步連接的示例袋子文件)。而後從您的人員跟蹤工做區中運行如下啓動文件(確保您已經提供了它,例如source devel/setup.bash):

roslaunch spencer_people_tracking_launch tracking_single_rgbd_sensor.launch height_above_ground:=1.6 

這將執行如下操做:

  • 啓動OpenNi2驅動程序(Asus Xtion Pro),並在/spencer/sensors/rgbd_front_top/相機命名空間中發佈RGB-D點雲
  • 運行上身RGB-D探測器,假設在傳感器下方1.6米處有一個水平地平面。其餘高度也能夠工做,但檢測器已經在大約這個高度被訓練。
  • 運行一個簡單的檢測到檢測融合流水線
  • 運行srl_nearest_neighbor_tracker,它將訂閱/spencer/perception/detected_persons和發佈軌道/spencer/perception/tracked_persons
  • 使用預約義的配置運行RViz,該配置顯示點雲,傳感器的視圖平截頭體以及檢測到和跟蹤的人員(使用咱們的定製RViz插件)。
使用MS Kinect v1

原始的MS Kinect v1傳感器不支持OpenNi2。在這種狀況下,請附加use_openni1:=true到上述命令行的啓動文件以備份到OpenNi1。

故障排除

若是您看不到任何檢測邊界框,請先檢查點雲是否正確顯示在RViz中。若是沒有,您的RGB-D傳感器可能有問題(USB或OpenNi問題)。

教程2:使用先後激光+ RGB-D傳感器進行跟蹤

要嘗試相似於SPENCER機器人平臺的傳感器配置,請運行:

roslaunch spencer_people_tracking_launch tracking_on_robot.launch 

這假設RGB-D傳感器水平安裝在地面以上約1.6m處,傳感器數據將在如下主題上公佈:

  1.  
    /spencer/sensors/laser_front/echo0 [sensor_msgs/LaserScan]
  2.  
    /spencer/sensors/laser_rear/echo0 [sensor_msgs/LaserScan]
  3.  
    /spencer/sensors/rgbd_front_top/{ rgb/image_raw,depth/image_rect} [sensor_msgs/Image]
  4.  
    /spencer/sensors/rgbd_front_top/{ rgb/camera_info} [sensor_msgs/CameraInfo]
  5.  
    /spencer/sensors/rgbd_rear_top/{ rgb/image_raw,depth/image_rect} [sensor_msgs/Image]
  6.  
    /spencer/sensors/rgbd_rear_top/{ rgb/camera_info} [sensor_msgs/CameraInfo]

啓動文件啓動一個相似於教程1(上圖)的管道,可是包括用於後部傳感器的第二組RGB-D探測器,以及兩個2D激光掃描儀的人員探測器。發佈上述RGB-D和激光數據的傳感器驅動程序不會由此啓動文件自動啓動。此外,您手動必須啓動Rviz。

使用這些傳感器的子集

請注意,若是隻有人檢測器的一部分運行,則融合管線會自動從新配置。若是你沒有後面的RGB-D傳感器,只需註釋掉包含rear_rgbd_detectors.launch在裏面的行tracking_on_robot.launch

教程3:徹底定製傳感器配置
  1. 啓動本身的啓動文件以啓動人員檢測器,或使用咱們提供的啓動文件的組合spencer_people_tracking_launch/launch/detectors。您可能須要根據須要從新輸入和輸出主題。
  2. 建立副本detection_to_detection_fusion_pipeline.launch及其子女,如fuse_lasers_and_rgbd.launchspencer_detected_person_association。基於所提供的示例,建立本身的管道,分步地對來自不一樣檢測器的檢測進行融合。有關更多信息,請參閱相應的包。
  3. 建立freiburg_people_tracking.launch文件的副本spencer_people_tracking_launch。調整它是指您本身的融合啓動文件在步驟2中建立。
  4. 開始你的副本freiburg_people_tracking.launch
  5. 若是須要,經過啓動組跟蹤roslaunch spencer_people_tracking_launch group_tracking.launch

多模態數據集進行評估

咱們的ICRA 2016論文的多模態「運動捕捉」序列可根據要求提供,讓您在咱們的數據集上評估本身的檢測/跟蹤算法。爲了公平的比較,請儘量使用此存儲庫中包含的CLEAR-MOT指標實現。因爲隱私緣由,機場序列的原始數據不能共享,儘管咱們可能會在稍後提供提取的檢測。

信用證,許可證和如何引用

該存儲庫中的軟件由如下機構維護:

  • Timm Linder,社會機器人實驗室,弗萊堡艾伯特 - 路德維希大學
  • 亞琛大學計算機視覺系Stefan Breuers

不一樣ROS包的信用量分配給相應README.mdpackage.xml文件中列出的特定做者。

這項工做獲得EC根據合同號FP7-ICT-600877(SPENCER)的支持。若是您使用此存儲庫中包含的軟件進行研究,請引用如下出版物:

關於在很是擁擠和動態環境中的移動平臺的多模態人員跟蹤
Linder,T.,Breuers,S.,Leibe,B.,Arras,KO 
IEEE國際機器人與自動化大會(ICRA)2016

也能夠:

人機檢測,跟蹤和可視化使用ROS在移動服務機器人
Linder,T.和Arras,KO 
機器人操做系統(ROS):完整參考(第1卷)。
Springer系統,決策和控制研究,2016年

該存儲庫中的大多數軟件都是根據BSD許可證發佈的。可是,有關詳細信息,請查看各個ROS包。

參考

[1] Linder T.和Arras KO 多模型假設跟蹤RGB-D數據中的人羣。IEEE Int。會議信息融合(FUSION'14),薩拉曼卡,西班牙,2014年。

[2] Jafari O. Hosseini和Mitzel D.和Leibe B。基於移動機器人和頭戴式相機的實時RGB-D人檢測和跟蹤。IEEE國際機器人與自動化大會(ICRA'14),2014年。

[3] Arras KO和Martinez Mozos O.和Burgard W .. 使用加強特徵來檢測2D範圍數據中的人。IEEE國際機器人與自動化大會(ICRA'07),意大利羅馬2007年。

[4] Munaro M.和Menegatti E. 快速RGB-D人跟蹤服務機器人。自主機器人,第37卷第3期,第227-242頁,Springer,2014。

 

----

 

製圖ROS集成

 

 

 

創建狀態 文檔狀態 Apache 2許可證。

目的

製圖師是一種在多平臺和傳感器配置中在2D和3D 中提供實時同時定位和映射(SLAM)的系統。該項目提供製圖工具的ROS整合。

入門

特約

您能夠在咱們的貢獻頁面上找到有關製圖師ROS整合的信息

 

----

 

AutoRally

 

 

 

替代文字

AutoRally研究平臺軟件。

自動平臺網站

AutoRally Youtube頻道

研究頁面AutoRally與:

特約

咱們歡迎錯誤修復,加強功能,新功能和反饋

請將提交請求提交給符合ROS C ++樣式指南devel分支。咱們使用Gitflow,因此主分支保留髮布。

安裝說明

內容

  1. 安裝先決條件
  2. 克隆版本庫
  3. 安裝自動ROS依賴關係
  4. 編譯/運行
  5. 生成文檔
  6. 模擬測試設置

1.安裝先決條件

  1. 安裝Ubuntu 14.04 64位

  2. 安裝所需的軟件包

    sudo apt-get install git doxygen openssh-server libusb-dev texinfo

    推薦工具

    如下工具對於該項目是有用的,但不是必需的。

    • FEH
    • cutecom
    • cmake的-詛咒貴
    • 香菜
    • 突觸
    • Arduino的
    • 蟒蛇,termcolor
  3. 安裝 ros-indigo-desktop-full

  4. 安裝gtsam

    按照gtsam 快速入門指南,克隆並安裝gtsam 的開發分支。

    而不是cmake ..使用:

    cmake -DGTSAM_INSTALL_GEOGRAPHICLIB=ON -DGTSAM_WITH_EIGEN_MKL=OFF ..

    一旦安裝完成,確保linux能夠看到共享庫:

    sudo ldconfig

克隆或叉庫

在catkin工做空間中獲取自動存儲。建議的位置是~/catkin_ws/src/,但任何有效的catkin worskspace源文件夾將工做。若是您正在使用代碼,咱們建議先分一批。

要直接從AutoRally回購克隆:

git clone https://github.com/AutoRally/autorally.git 

還將IMU代碼克隆到同一個catkin工做空間中:

git clone https://github.com/AutoRally/imu_3dm_gx4.git 

3.安裝自動ROS依賴關係

在catkin工做區文件夾中,運行此命令來安裝該項目依賴的包。

rosdep install --from-path src --ignore-src -y

編譯運行

catkin_make從catkin工做空間文件夾編譯並安裝運行。

因爲ROS分佈式發射系統的額外要求,您必須運行

source src/autorally/autorally_util/setupEnvLocal.sh

以前使用任何AutoRally組件。有關如何爲您的車輛平臺上的分佈式發射設置此係統的更多信息,請參閱維基

注意:若是您不熟悉catkin,請知道您必須運行source catkin_ws/devel/setup.sh,ROS將可以找到自動包。這行能夠添加到你的〜/ .bashrc文件。

5.生成文檔

您能夠生成或運行更新代碼文檔doxygenautorally/

查看autorally/doc/html/index.html在Web瀏覽器中打開的代碼文檔。

6.啓動AutoRally Simulation以測試配置

roslaunch autorally_gazebo autoRallyTrackGazeboSim.launch

您可使用USB手柄來驅動模擬平臺。在啓動時,節點發布的runstop消息joystick是假的。按右鍵(一般標記爲X,Y,A,B或正方形,三角形,X,圓圈)的任何按鈕可切換髮布的值。

經過查看主題中的runstopMotionEnabled參數來驗證運行狀態運動是否啓用/chassisState

若是您沒有使用遊戲手柄,則必須爲平臺移動配置另外一個runstop信息源:

  • 評論第93行 autorally_gazebo/launch/autoRallyTrackGazeboSim.launch

  • rosrun rqt_publisher rqt_publisher

和rqt_publisher配置來發布消息主題/runstop類型的autorally_msgs/runstop在1Hz與sender設置爲rqt_publishermotionEnabled設置爲真。

  • 驗證runstopMotionEnabled是真實的/chassisState話題。

7.自主駕駛模擬

在本節結尾,機器人將使用可用的控制器在模擬中自主駕駛autorally_control

將機器人定位在與模擬開始時相同的位置,並確保啓動運行中止運動(設置爲true)。

啓動狀態估計器:

autorally_core/launch/state_estimator.launch變化InvertYInvertZ對假,則:

  1.  
    rosparam set /gps_imu/FixedInitialPose true
  2.  
    roslaunch autorally_core state_estimator.launch

開始航點跟隨者:

roslaunch autorally_control waypointFollower.launch 

啓動恆速控制器並告訴它要驅動什麼速度:

  1.  
    roslaunch autorally_control constantSpeedController.launch
  2.  
    rosrun rqt_publisher rqt_publisher

配置發佈商constantSpeedController/speedCommand的類型std_msgs/Float64爲10的價格爲3(您能夠調整他的價值一旦一切正在運行)。該值是以m / s爲單位的目標速度,只要您執行此操做,平臺應在移動啓用時移動。

若是機器人轉動並擊中障礙物,多是由於狀態估計器沒有收斂,因此它的方向估計是不正確的。只需選擇軌道障礙並將其移動以容許機器人繼續駕駛,而且估計器應該收斂,而且車輛將返回到障礙物內。

下一步是什麼

有關控制器和狀態估計器的更詳細的解釋能夠在wiki上找到:

控制AutoRally平臺是您本身的控制器如何控制AutoRally平臺(在模擬或硬件上)的教程。

若是您正在配置物理AutoRally平臺,則下一步是配置計算框,全部外設和啓動系統。這些說明在「 平臺配置說明」中找到。

 

----

 

IAI Kinect2

維護者

先閱讀

 

 

 

在提出問題以前,請仔細閱讀本README和各個組件的內容。咱們獲得不少重複的問題,因此當你有問題時,咱們敦促你們檢查github問題(包括關閉的)。你的問題極可能已經在討論過了。

該項目的目標是給您一個驅動程序和從Kinect-2傳感器接收數據所需的工具,以一種有用的機器人技術。您仍然須要知道如何使用ROS來使用它。請遵循ROS教程。您還須要學習如何使用點雲,深度雲或圖像(計算機視覺)來處理數據。

注意: 有關 iai_kinect2軟件包及其組件的 問題,請使用GitHub問題。不要寫郵件

目錄

描述

這是用於Kinect One(Kinect v2)的ROS接口的工具和庫的集合。

它包含:

常問問題

若是我有任何問題或某事不奏效,我該怎麼辦?

首先你應該看看這個FAQ和libfreenect2FAQ。其次,從libfreenect2問題頁面和iai_kinect2問題頁面看相似的問題和解決方案。

點雲還沒有發佈?

點雲僅在使用啓動文件時發佈。確保啓動kinect2_bridge roslaunch kinect2_bridge kinect2_bridge.launch

它能夠與OpenCV 3.0一塊兒使用

簡答:不。

長的答案:是的,可使用OpenCV 3.0編譯這個包,可是它不會工做。這是由於使用了cv_bridge,它自己在ROS Indigo / Jade中使用OpenCV 2.4.x進行編譯,而且沒法與OpenCV版本進行連接。OpenCV 3.0的工做支持可能會帶來將來的ROS版本。

kinect2_bridge不工做/崩潰,有什麼問題?

有不少緣由kinect2_bridge可能不工做。首先要找出問題是否與kinect2_bridgelibfreenect2。一個很好的測試工具是Protonect它位於的二進制文件libfreenect2/build/bin/Protonect。它直接使用libfreenect2,對其餘庫的依賴性最小,所以它是第一個測試的好工具。

執行:

  • ./Protonect gl 測試OpenGL支持。
  • ./Protonect cl 測試OpenCL支持。
  • ./Protonect cpu 測試CPU支持。

運行前kinect2_bridge請確保Protonect正在工做,並顯示顏色,深度和圖像。若是其中有些是黑色的,那麼有一個與此無關的問題kinect2_bridge,您應該從libfreenect2 GitHub頁面中查看有關幫助的問題。

若是其中一人的做品,嘗試與工做的一個kinect2_bridgerosrun kinect2_bridge kinect2_bridge _depth_method:=<opengl|opencl|cpu>。您也可使用更改註冊方法_reg_method:=<cpu|opencl>

Protonect工做正常,但kinect2_bridge仍然不工做/崩潰。

若是是這樣的話,你必須確保Protonect使用相同版本libfreenect2kinect2_bridge同樣。要作到這一點,運行makesudo make install再次build文件夾中。再試kinect2_bridge一次。

  1.  
    cd libfreenect2/build
  2.  
    make & sudo make install

還要確保你沒有使用OpenCV 3.0。

若是仍然崩潰,請在調試中編譯並運行gdb:

  1.  
    cd <catkin_ws>
  2.  
    catkin_make -DCMAKE_BUILD_TYPE= "Debug"
  3.  
    cd devel/lib/kinect2_bridge
  4.  
    gdb kinect2_bridge
  5.  
    // inside gdb: run until it crashes and do a backtrace
  6.  
    run
  7.  
    bt
  8.  
    quit

打開一個問題,併發布問題描述和backtrace(bt)的輸出。

kinect2_bridge掛起並打印「等待客戶端鏈接」

這是正常的行爲。'kinect2_bridge'僅在客戶端鏈接時處理數據(ROS節點至少聽到一個主題)。這樣能夠節省CPU和GPU資源。一旦開始kinect_viewerrostopic hz其中一個主題,處理應該開始。

rosdep:找不到[kinect2_bridge]或[kinect2_registration]的rosdep定義

rosdep將輸出錯誤沒法找到[kinect2_bridge][kinect2_registration]。這很好,由於它們都是iai_kinect2包的一部分,rosdep不知道這些包。

Protonect或kinect2_bridge輸出[TransferPool :: submit]提交轉移失敗

這表示USB鏈接有問題。

我還有一個問題,該怎麼辦?

首先,檢查GitHub上的問題頁面是否有相似的問題,由於它們可能包含它們的解決方案。默認狀況下,您只會看到公開的問題,可是若是您點擊,closed您將會解決這些問題。還有一個搜索字段幫助找到相似的問題。

若是您沒有發現問題的解決方案,請隨時爲您的問題開闢新的問題。請詳細說明您的問題,並提供錯誤信息和日誌輸出。

依賴

  • ROS Hydro / Indigo
  • OpenCV(2.4.x,推薦使用官方Ubuntu存儲庫)
  • PCL(1.7.x,推薦使用官方Ubuntu存儲庫中的一個)
  • 特徵(可選,但推薦)
  • OpenCL(可選,但推薦)
  • libfreenect2(> = v0.2.0,用於穩定性檢出最新的穩定版本)

安裝

  1. 安裝ROS Ubuntu 14.04的說明

  2. 設置您的ROS環境

  3. 安裝libfreenect2

    按照說明操做,並使用C ++ 11 cmake .. -DENABLE_CXX11=ON代替cmake ..

    若是某些事情不起做用,請查看最新的穩定版本git checkout v0.2.0

  4. 將此存儲庫克隆到您的catkin工做空間中,安裝依賴項並構建它:

     

cd〜/ catkin_ws / src / git clone https://github.com/code-iai/iai_kinect2.git cd iai_kinect2 rosdep install -r --from-paths。cd〜/ catkin_ws catkin_make -DCMAKE_BUILD_TYPE =「Release」

  1.  
     
  2.  
    *Note: `rosdep` will output errors on not being able to locate `[kinect2_bridge]` and `[depth_registration]`.
  3.  
    That is fine because they are all part of the iai_kinect2 package and `rosdep` does not know these packages.*
  4.  
     
  5.  
    *Note: If you installed libfreenect2 somewhere else than in `$HOME/freenect2` or a standard location like `/usr/local`
  6.  
    you have to specify the path to it by adding `-Dfreenect2_DIR=path_to_freenect2/lib/cmake/freenect2` to `catkin_make`.*
  7.  
     
  8.  
    5. Connect your sensor and run `kinect2_bridge`:
  9.  
     

roslaunch kinect2_bridge kinect2_bridge.launch

  1.  
    6. Calibrate your sensor using the `kinect2_calibration`. [Further details](kinect2_calibration#calibrating-the-kinect-one)
  2.  
    7. Add the calibration files to the `kinect2_bridge/data/<serialnumber>` folder. [Further details](kinect2_bridge#first-steps)
  3.  
    8. Restart `kinect2_bridge` and view the results using `rosrun kinect2_viewer kinect2_viewer kinect2 sd cloud`.
  4.  
     
  5.  
    ## GPU acceleration
  6.  
     
  7.  
    ### OpenCL with AMD
  8.  
     
  9.  
    Install the latest version of the AMD Catalyst drivers from https: //support.amd.com and follow the instructions. Also install `opencl-headers`.
  10.  
     

sudo apt-get install opencl-headers

  1.  
     
  2.  
    ### OpenCL/CUDA with Nvidia
  3.  
     
  4.  
    Go to [developer.nvidia.com/cuda-downloads](https: //developer.nvidia.com/cuda-downloads) and select `linux`, `x86_64`, `Ubuntu`, `14.04`, `deb(network)`.
  5.  
    Download the file and follow the instructions. Also install `nvidia-modprobe` and `opencl-headers`.
  6.  
     

sudo apt-get install nvidia-modprobe opencl-headers

  1.  
     
  2.  
    You also need to add CUDA paths to the system environment, add these lines to you `~/.bashrc`:
  3.  
     

export LD_LIBRARY_PATH =「/ usr / local / cuda / lib64:$ {LD_LIBRARY_PATH}」export PATH =「/ usr / local / cuda / bin:$ {PATH}」

  1.  
     
  2.  
    A system-wide configuration of the libary path can be created with the following commands:
  3.  
     

echo「/ usr / local / cuda / lib64」| sudo tee /etc/ld.so.conf.d/cuda.conf sudo ldconfig

  1.  
     
  2.  
    ### OpenCL with Intel
  3.  
     
  4.  
    You can either install a binary package from a PPA like [ppa:floe/beignet](https://launchpad.net/~floe/+archive/ubuntu/beignet), or build beignet yourself.
  5.  
    It 's recommended to use the binary from the PPA.
  6.  
     
  7.  
     

sudo add-apt-repository ppa:floe / beignet && sudo apt-get update sudo apt-get install beignet beignet-dev opencl-headers

  1.  
     
  2.  
    ## Citation
  3.  
     
  4.  
    If you used `iai_kinect2` for your work, please cite it.
  5.  
     
  6.  
    ```tex
  7.  
    @misc{iai_kinect2,
  8.  
    author = {Wiedemeyer, Thiemo},
  9.  
    title = {{IAI Kinect2}},
  10.  
    organization = {Institute for Artificial Intelligence},
  11.  
    address = {University Bremen},
  12.  
    year = { 2014 -- 2015},
  13.  
    howpublished = {\url{https: //github.com/code-iai/iai\_kinect2}},
  14.  
    note = {Accessed June 12, 2015}
  15.  
    }

結果應該與此相似(可能取決於所使用的參考書目風格):

  1.  
    T. Wiedemeyer, 「IAI Kinect2,」 https: //github.com/code-iai/iai_kinect2,
  2.  
    Institute for Artificial Intelligence, University Bremen, 2014 – 2015,
  3.  
    accessed June 12, 2015.

截圖

如下是咱們的工具包的截圖: 彩色圖像深度圖像點雲圖像查看器

 

----

最後列一些參考書籍:

 

掌握機器人編程的ROS

掌握ROS的機器人編程書籍教程源代碼

 

 

 

封面

買書

做者

安裝

該代碼可與ROS Jade和ROS Indigo相兼容。本書提到了每一個包的詳細安裝說明

教程

  • 第1章: ROS及其軟件包管理簡介
  • 第2章:在ROS中使用3D機器人建模
  • 第3章:使用ROS和涼亭模擬機器人
  • 第4章:使用ROS MoveIt!和導航堆棧
  • 第5章:使用Pluginlib,Node和Gazebo插件
  • 第6章:編寫ROS控制器和可視化插件
  • 第7章:將I / O板,傳感器和執行器鏈接到ROS
  • 第8章:使用ROS,Open-CV和PCL編程視覺傳感器
  • 第9章:構建和接口ROS中的差分驅動器移動機器人硬件
  • 第10章:探索ROS-MoveIt的高級功能!
  • 第11章:工業機器人的ROS
  • 第12章:ROS中的故障排除和最佳實踐

ROS機器人項目

ROS機器人項目

封面

買書

做者

安裝

該代碼可與ROS Kinetic和ROS Indigo合做。本書提到了每一個包的詳細安裝說明

教程

  • 第1章: ROS Robotics應用開發入門
  • 第2章:使用ROS,OpenCV和Dynamixel Servos進行人臉檢測和跟蹤
  • 第3章:在ROS中構建一個Siri-like Chatbot
  • 第4章:使用ROS控制嵌入式電路板
  • 第5章:使用手勢遠程操做機器人
  • 第6章:對象檢測和識別
  • 第7章:使用ROS和TensorFlow深刻學習
  • 第8章:MATLAB和Android上的ROS
  • 第9章:構建自主移動機器人
  • 第10章:使用ROS建立自駕車!
  • 第11章:使用VR耳機和跳躍運動的遠程操做機器人
  • 第12章:經過網絡控制機器人

使用Python學習機器人

學習機器人使用Python書籍教程源代碼

封面

買書

做者

安裝

該代碼可與ROS Jade和ROS Indigo相兼容。本書提到了每一個包的詳細安裝說明

教程

  • 第1章:機器人介紹
  • 第2章:機器人的機械設計
  • 第3章:使用ROS和涼亭進行機器人模擬
  • 第4章:設計Chefbot硬件
  • 第5章:使用機器人執行器和車輪編碼器
  • 第6章:使用機器人傳感器
  • 第7章:使用Python和ROS編程視覺傳感器
  • 第8章:使用Python和ROS進行語音識別和綜合
  • 第9章:使用Python將人工智能應用於Chefbot
  • 第10章:使用Python來整合Chefbot硬件並將其與ROS進行鏈接
  • 第11章:使用QT和Python爲機器人設計GUI
  • 第12章:Chefbot的校準和測試

 

----

 本文轉自https://blog.csdn.net/weixin_37239947/article/details/74939650。

相關文章
相關標籤/搜索