Cozmo&AI作業
學習下面連結內容,將其實現並應用到Cozmo或mrobot機器人中。
參考連結:
1. ros_caffe:github.com/tzutalin/ros_caffe
2. Tensorflow_in_ROS:github.com/shunchan0677/Tensorflow_in_ROS
3. cozmo-tensorflow:github.com/whatrocks/cozmo-tensorflow
ros_people_object_detection_tensorflow
github.com/cagbal/ros_people_object_detection_tensorflow
廣泛使用的ROS工具箱,用於物體檢測和跟蹤以及面部/動作識別,具有2D和3D支援,使機器人瞭解周圍的環境。
技術
此repo使用許多開源專案來正常工作:
- [Tensorflow]
- [Tensorflow-Object Detection API]
- [Tensorflow Hub]
- [ROS]
- [numpy的]
- [face_recognition] https://github.com/ageitgey/face_recognition
- [DLIB]
- [cob_perception_common] https://github.com/ipa-rmb/cob_perception_common.git
- [protobuf的]
對於Tracker部分:
- scikit學習
- scikit影象
- FilterPy
安裝
首先,應在您的系統上安裝tensorflow。
然後,
$ cd && mkdir -p catkin_ws/src && cd ..
$ catkin_make && cd src
$ git clone --recursive https://github.com/cagbal/
ple_object_detection_tensorflow.git
$ git clone https://github.com/cagbal/cob_perception_common.git
$ cd cob_people_object_detection_tensorflow/src
$ protoc object_detection/protos/*.proto --python_out=.
$ cd ~/catkin_ws
$ rosdep install --from-path src/ -y -i
$ catkin_make
$ pip install face_recognition
repo包含最快的基於mobilenet的方法,因此您可以跳過以下步驟。
然後,從 Models Zoo中安裝tensorflow物件檢測模型。
並將這些模型放入src / object_detection /,最後設定launch / cob_people_object_detection_tensoflow_params.yaml的model_name引數
執行
在ROS中開啟相機驅動程式,並在啟動目錄下的yaml配置檔案中設定輸入RGB主題名稱。預設值為openni2。
用於執行一切,(這將適用於2D和3D)
$ roslaunch cob_people_object_detection_tensorflow alltogether.launch
上面的程式碼將啟動所有內容。它非常適合從這個回購開始。但是,如果您需要一些靈活性,則需要逐個啟動每個節點。如下:
對於物體檢測:
$ roslaunch cob_people_object_detection_tensorflow cob_people_object_detection_tensorflow.launch
然後,它開始為每個檢測到的物件分配ID,並將結果釋出到/ object_tracker / tracks。請注意,檢測到的跟蹤物件編號可能不同。
如果您還想執行跟蹤器,
$ roslaunch cob_people_object_detection_tensorflow cob_people_object_tracker.launch
如果您還想執行face_recognition,
將人臉影象放入人員資料夾並啟動:
$ roslaunch cob_people_object_detection_tensorflow cob_face_recognizer.launch
如果你還想執行深度探測器,
$ roslaunch cob_people_object_detection_tensorflow projection.launch
並設定detections.pose.pose.position.x / y / z並將其設為pusblishes。
如果您還想執行動作識別,
$ roslaunch cob_people_object_detection_tensorflow action_recognition.launch
然後,您將看到/ action_recognition / action_predictions上釋出的概率
Subscibes:訂閱
- 到* params.yaml檔案中設定的任何RGB影象主題。
Publishes:釋出
- / object_detection / detection(cob_perception_msgs / DetectionArray)包括所有具有概率,標籤和邊界框的檢測
- / object_detection / detections_image(sensor_msgs / Image)帶有邊界框的影象
- / object_tracker / tracks(cob_perception_msgs / DetectionArray)僅包含跟蹤物件及其邊界框,標籤。這裡,ID是跟蹤器分配的檢測ID。示例:DetectionArray.detections [0] .id
- / face_recognizer / faces(cob_perception_msgs / DetectionArray)帶有面部和人物邊界框的面部標籤
- / action_recognition / action_predictions(cob_perception_msgs / ActionRecognitionmsg)使用Kinetics 600資料集標籤的動作識別概率
效能
我的計算機(Intel(R)Core(TM)i7-6820HK CPU @ 2.70GHz)的最後五次檢測時間為幾秒鐘:
- 0.105810880661
- 0.108750104904
- 0.112195014954
- 0.115020036697
- 0.108013153076
相關文章
- 作業系統 作業5作業系統
- 作業
- 作業系統(1)——作業系統概述作業系統
- 作業系統(一):作業系統概述作業系統
- 【團隊作業】第三週作業1
- github作業Github
- 作業7
- 作業2
- 作業一
- 作業1
- 作業01
- 作業二
- 個人作業
- 2924.3.27作業
- 作業3
- 作業三
- 作業四
- 作業系統作業單元考核(附答案)作業系統
- 作業系統(二):作業系統結構作業系統
- (高校暑期作業模板)軟體評測作業
- 【作業系統】作業系統綜述(一)作業系統
- 通訊專業作業
- 作業系統1—作業系統概論(上)作業系統
- 作業系統2—作業系統概論(下)作業系統
- 個人作業——軟體工程實踐總結作業軟體工程
- 第六組【團隊作業】第六週作業
- 第五組【團隊作業】第六週作業
- 第八組【團隊作業】第六週作業
- 安卓09作業安卓
- 實踐作業
- 學習作業
- Mysql 作業(Scheduler)MySql
- 2.4.2程式作業
- 《作業系統》作業系統
- 開課作業
- 作業總結
- 9.28作業2
- python作業Python