項目目標
利用車載攝像頭獲取車輛前方的圖像信息,采用人工神經網絡分析圖像數據,控制車輛轉向和速度,使車輛平穩、快速到達終點。
基本要求
采用人工智能算法
利用Matlab等編程工具
基于視覺圖像實現車輛方向控制
考核方式
每5人為一組,組內各成員協作;
根據是否能到達終點、運行速度等確定成績。
每兩組一套小車
1#小車: 第1組-第2組
2#小車: 第3組-第4組
…
10#小車:第19組-第20組
每套小車包括:
小車(含控制器)一輛
攝像頭一個
操縱桿一個
充電器一個
賽道一張
• 使用事項:
安全使用事項
• 禁止在宿舍給電池充電;
• 禁止將電池充電、放電口對插;
• 小車不能邊充電邊使用;
• 電池充電時,充電器指示燈亮紅燈,充滿時亮綠燈,充電完成后應及時拔掉充電器和電源,避免電池損壞;
小車電池采用直插式充電,充電器接口直接插入電池的充電接口即可充電;
各小車略有差異,可采用自己訓練時的小
車參加比賽
有任何問題及時與助教、老師聯系愛護教學設施,人為損壞需照價賠償
Step1:掌握圖像獲取、轉向控制等基本操作
Step2:根據采集到的圖像,并利用操縱桿操縱,獲取訓練樣本
Step3:設計神經網絡控制結構,訓練神經網絡
Step4:利用神經網絡算法進行控制
Step1:基本操作
小車使用
• 小車開機30秒后,搜索WIFI,連接Auto_CAR_n(n表示第幾號小車),密碼:123456789
• 成功連接后,即可通過計算機接收攝像頭采集到的圖像,并發送小車運動指令。
Step1:基本操作
Matlab相關操作
• 需使用Matlab 2016及以后版本,建議使用Matlab 2018版;
• 安裝支持包——在MATLAB 附加功能
中 獲取附加功能 MATLAB Support
Package for IP Cameras
Matlab相關操作
• 獲取操縱桿數據:
Ø創建操縱桿對象
joy = vrjoystick(1) %根據系統硬件情況或許是其他值
Ø獲取操縱桿某一軸的值%為-1~1的一個浮點數
axis(joy,1)
Ø獲取操縱桿某一按鍵的值%1為按下,0為釋放
button(joy, 1)
Step3:訓練網絡
根據訓練函數需求,設置訓練參數,準備輸入輸出數據
• 訓練目標最小誤差
• 訓練次數
• 學習速率
• 使用函數
• oneVsAll(X, y, num_labels, lambda)
• Matlab神經網絡工具箱
Step4:利用神經網絡算法進行
初始化攝像頭連接
初始化小車控制連接
初始化操縱桿
將圖像數據輸入神經網絡
將神經網絡輸出作為方向控制數據發送到小車
• PREDICT(Theta1, Theta2, X);%outputs the predicted label of X given the trained weights of a neural network (Theta1, Theta2)
• sim(net,input); %調用matlab神經網絡工具箱自帶的sim函數得到網絡的預測值
注意事項:
• 數組、向量維度、數組向量的轉置操作
• 神經網絡的輸入輸出與操縱桿輸入、小車控制數據的格式要匹配
如何設計機器學習系統或者提升機器學習系統的性能?
機器學習算法診斷與評估
• 通過執行測試,深入了解學習算法是否有用,以及如何去提升算法的性能。
注意:
算法的診斷需要較長時間,但能指導算法調試的方法。
模型偏差、方差評估
Ø 偏差
根據樣本擬合出的模型的輸出預測結果的期望與樣本真實結果的差距,度量了學習算法的期望預測與真實結果的偏離程度, 即᧿述了學習算法本身的擬合能力。
Ø 方差
述的是樣本上訓練出來的模型的表現,度量了同樣大小的訓練集的變動所導致的學習性能的變化, 即述了數據擾動所造成的影響。
采用已由正則化線性回歸方法預測
• 更多的訓練實例——解決高偏差
• 減少特征數量——解決高偏差
• 獲得更多特征——解決高方差
• 增加多項式特征——解決高方差
• 減少歸一化程度 λ——解決高方差
• 增加歸一化程度 λ——解決高偏差
對新樣本的偏差較大,如何改進算法的預測性能?
完整的pdf格式文檔51黑下載地址(共41頁):
機器學習應用系統設計.pdf
(13.17 MB, 下載次數: 48)
2018-12-8 15:44 上傳
點擊文件名下載附件
|