tensorflow訓練cnn網絡實現避障與導航(一)

    暑期過半,簡單總結一下之前一個月內的工作。

    暑期主要做了這樣幾項工作:

    1/ 利用V-rep搭建了一個仿真環境,環境具有的功能有:

           A/ 可以對其中物體進行動力學仿真,例如小車的行進、轉彎等

           B/ 可以對環境進行搭建,利用方塊、圓柱等基本物體搭建出簡單的外部環境

           C/ 可以仿真一些傳感器,如相機、Velodyne激光雷達(16線、64線)、HoKuYo單線激光等

           D/ 可以與ROS進行交互,將仿真過程中的數據傳給ROS,同時可以從ROS中接收控制信息等


    2/ 利用CNN訓練了一個可以根據 小車當前位置/ 激光雷達數據/ 目標點位置 三個輸入來進行控制策略規劃的控制器,具體步驟如下:

         A/ 在Vrep中編寫程序,使其可以對外發出小車的位置信息、面向角度信息、傳感器信息、目標點信息等信息

         B/ 利用roscpp編寫程序,接收Vrep中發來的消息,並將其以一定的協議保存在文檔中

         C/ 利用LUA腳本編寫程序 使Vrep可以在獲得全局信息下生成路徑,並讓小車以一定的控制方式在這一路徑下運動,當小車到達目標點後,V-rep會自動生成下一個目標點

         D/ 對(B)中傳來的數據在python中進行解析,對每一批數據分離出激光數據、小車數據、目標點數據、專家控制信息等數據,並分批讀取

         E/ 利用tensorflow搭建神經網絡,對D中數據進行訓練,網絡輸入爲1080維激光數據、3維小車/目標點數據、2維專家控制數據,輸出爲兩維網絡控制信息。

         F/ 利用tensorflow寫一個test程序,對(E)中訓練得到的網絡進行測試,檢測訓練結果是否達標

         G/ 利用tensorflow+rospy 寫一個真實的test程序,將網絡輸出的控制信息傳入V-rep中,測試在仿真環境下能否實現用網絡輸出實現對小車的控制


本項目的時間進度大致爲:

        7/5-7/12 利用V-rep搭建了仿真環境,可以讀取激光數據。

                        學習cs229 課程,學習tensorflow 

                        閱讀文獻、瞭解他人工作


        7/13-7/20 利用tensorflow進行網絡搭建,基本實現當所有信息均通過全連接的網絡

                          優化網絡,前端加入CNN網絡,大幅減少需要優化的參數

                           對網絡進行測試,發現loss不合格


         7/21-7/31 對上週的網絡進行優化,優化了輸入的結構

                           對上週網絡中的三個bug進行了修改,使得網絡輸出大大提升

                           思考通過何種信息進行“記憶”而避免“慣性”







發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章