得益于人工智能,機器學習和計算機視覺等融合技術(shù)的進步,機器人每天都能看到,分析和做出更像人類的決策。開發(fā)此類機器視覺分析邏輯涉及實現(xiàn)解決方案,這些解決方案可以確定對象的方向,處理移動的對象并執(zhí)行導航。而解決方案的基礎(chǔ)是始于兩項重要任務:
一、預處理通過傳感器從現(xiàn)實世界收集的數(shù)據(jù),以使各個子系統(tǒng)將其變?yōu)楦捎玫臓顟B(tài)
二、執(zhí)行特征檢測以從數(shù)據(jù)中提取視覺特征,例如角,邊等。
這些系統(tǒng)到位后,可以繼續(xù)使用更高級別的機器人視覺功能,即:對象檢測和分類以及對象跟蹤和導航。
檢測物體和方向
由于視點的變化,不同尺寸的圖像和動態(tài)照明條件,物體檢測和分類在傳統(tǒng)上一直具有挑戰(zhàn)性。可以提供幫助的一種解決方案是,使用經(jīng)過訓練以檢測和分類對象的神經(jīng)網(wǎng)絡(luò)。
一種流行的方法是使用卷積神經(jīng)網(wǎng)絡(luò)(CNN),其中圖像的一小部分以稱為“滑動窗口”的過程被饋送到網(wǎng)絡(luò)中。另一個任務是確定對象的方向,這對于對象交互和導航都很重要。這里的主要挑戰(zhàn)是確定對象或機器人本身在3D世界空間中的方向。一種流行的方法是應用單應性算法(例如線性最小二乘法求解器,隨機采樣和共識(RANSAC))以及最小二乘方中值來計算2D圖像幀之間的點。一旦檢測到對象,就可以為它們分配元數(shù)據(jù),例如ID,邊界框等,這些元數(shù)據(jù)可以在對象檢測和導航期間使用。
可以檢測和識別物體和人
識別出周圍環(huán)境的物體和方面后,機器人需要對其進行跟蹤。由于對象可以移動,并且機器人的視口會隨著導航而變化,因此開發(fā)人員將需要一種機制來隨時間推移以及跨攝像機和其他傳感器捕獲的幀跟蹤這些元素。由于此機制必須足夠快才能運行每個幀,因此多年來,已經(jīng)設(shè)計了許多算法,這些算法以不同的方式解決該問題。
例如,質(zhì)心跟蹤會計算跨幀的已標識對象周圍的邊界框的中心點,然后在假定對象每幀僅移動一定距離的假設(shè)下計算該點變化時該點之間的距離。另一種方法是使用卡爾曼濾波器,該濾波器使用一段時間內(nèi)的統(tǒng)計數(shù)據(jù)來預測對象的位置。
替代地,均值漂移算法是一種基本上找到幀的子區(qū)域內(nèi)圖像的某些方面(例如,顏色直方圖)的均值的方法。然后,通過尋求最大化特征的相似性,在下一幀中尋找相同的描述。這使它能夠解決諸如比例,方向等變化,并最終跟蹤對象的位置。
由于這些技術(shù)僅需要跟蹤原始特征的子集,因此它們通??梢愿咝页晒Φ靥幚碇T如方向或遮擋等變化,從而使它們對于機器人視覺處理非常有效。
但是對象并不是唯一需要跟蹤的東西。機器人本身應該能夠成功地導航其環(huán)境,這就是同步定位和地圖(SLAM)出現(xiàn)的地方。SLAM試圖估算機器人的位置并得出環(huán)境圖??梢允褂迷S多算法(例如卡爾曼濾波器)來實現(xiàn)。SLAM通常通過融合來自多個傳感器的數(shù)據(jù)來實現(xiàn),并且當涉及視覺數(shù)據(jù)時,該過程通常稱為視覺慣性同時定位和映射(VISLAM)。
應用來自多個傳感器的多個過濾器以收集跟蹤信息。當然,SLAM只能達到機器人可以感知的水平,因此開發(fā)人員應選擇高質(zhì)量的相機和傳感器,并找到確保其不受數(shù)據(jù)捕獲影響的方法。從安全角度考慮,開發(fā)人員還應設(shè)計故障保險柜,以防萬一無法獲取數(shù)據(jù)(例如,攝像機被遮蓋)。
下一代利用計算機視覺和機器學習技術(shù)的機器人,具有“查看”周圍環(huán)境,“分析”動態(tài)場景或變化的條件以及“做出決定”的能力,因此更加先進。這將要求開發(fā)人員精通用于對象檢測和分類以及對象跟蹤和導航的高級機器人視覺功能和工具。