崔寧,胡曉光
(1.中國人民公安大學信息技術與網(wǎng)絡安全學院,北京100000;2.中國人民公安大學偵查與刑事科學技術學院,北京100000)
近幾年機器人技術大力的發(fā)展,對國家國防、工業(yè)的發(fā)展都做出了巨大的貢獻。人們對于機器人技術投入了大量資金,使傳感器技術、計算機視覺、控制算法等技術得到飛速發(fā)展。機器人技術也順應這些技術的應用與時代發(fā)展的需要,呈現(xiàn)多元化發(fā)展的趨勢。除了傳統(tǒng)的工業(yè)機器人外,各類小型移動服務機器人也得到了很快的發(fā)展。機器視覺在現(xiàn)代化工廠中得到了越來越多的應用,該技術主要應用于物體的類別識別、形狀識別、空間定位等領域[1-2]。在工業(yè)生產(chǎn)領域和危險環(huán)境下通過機械手抓取物體降低了生產(chǎn)成本、減少了人員的傷亡,得到了廣泛的應用。目前關于視覺傳感器進行物體定位與識別主要是通過單目視覺、雙目視覺、RGB-D 相機三種方式。單目視覺是通過單個RGB 相機獲取2D 彩色圖像數(shù)據(jù),通過單幀計算和雙幀計算兩種方式獲取物體的距離,單幀計算需要物體的幾何尺寸等額外的場景信息,多幀計算通過連續(xù)幀中物體相應位置像素的位移變化計算物體的距離。雙目視覺是指通過兩個攝像頭之間形成的視差計算得出深度數(shù)據(jù),從而產(chǎn)生立體視覺,此方法計算量較大,對設備性能要求高。RGB-D 方案是指深度相機和彩色相機相結(jié)合,將彩色圖像數(shù)據(jù)和深度數(shù)據(jù)進行了耦合。其測的深度信息相對于雙目視覺精度高,且不需進行額外計算。
本文使用RGB-D 相機方案,首先利用Mask RCNN 卷積神經(jīng)網(wǎng)絡[3]對物體進行識別得出物體的類別,然后找出物體的SIFT 特征點并進行匹配等技術。本方案在對物體進行定位與姿態(tài)調(diào)整時無需使用昂貴的3D 建模設備對物體進行建模的預處理,并能接近達到通過三維建模-點云配準方法進行定位的精度[4]。
RGB-D 是RGB 彩色傳感器和深度傳感器的結(jié)合體,既能夠獲取RGB 彩色圖像信息也能獲取深度圖像信息。目前深度傳感器按照結(jié)構(gòu)光法和光飛行時間法兩種不同獲取深度數(shù)據(jù)的方式分為結(jié)構(gòu)光式相機和飛行時間測距成像相機兩種類型。結(jié)構(gòu)光式攝像頭精度高,但測量距離短;飛行時間測距成像相機測量距離相對于結(jié)構(gòu)光法要長,但測量精度低于結(jié)構(gòu)光法。RGBD 相機可以主動測量每個像素對應的距離,并能將RGB 彩色圖像信息和深度數(shù)據(jù)進行耦合。RGB-D 相機模型根據(jù)RGB 彩色攝像頭和深度傳感器兩者之間的外參構(gòu)建RGB 彩色圖像數(shù)據(jù)與深度數(shù)據(jù)兩者之間的映射關系。相機最終得到的圖像是以像素坐標的形式存在的,像素平面中P’的像素坐標為[u,v]。RGB-D深度相機利用相機內(nèi)參進行坐標系變換可以直接獲得測量點的空間位置信息,即空間坐標P(X,Y,Z)可根據(jù)相機的內(nèi)參K 和像素P’(u,v)對應的深度Z 由公式(1)得出。

注:式中K 矩陣表示的是相機的內(nèi)參數(shù)矩陣(Camera Intrinsic),P 為點P’的三維空間坐標。
目前,卷積神經(jīng)網(wǎng)絡結(jié)構(gòu)模型是解決圖像識別問題的最優(yōu)方法,以Mask R-CNN、YOLO 等模型為代表。Mask R-CNN 模型是由R-CNN、Fast R-CNN 、Faster R-CNN、CNN[5-7]模型改進而來。R-CNN 模型在CNN 的基礎上設計,在目標檢測測試中取得了很好的成績。研究者對R-CNN 的不斷改進,使得卷積神經(jīng)網(wǎng)絡在目標檢測領域不斷有新的突破。相繼發(fā)展出了Fast R-CNN,Faster R-CNN,Mask R-CNN 等算法。RCNN 與傳統(tǒng)圖像目標檢測方法相比,不再需要人工提取特征,采用了多尺度卷積核的卷積網(wǎng)進行替代。首先進行區(qū)域推薦采用selective search 的方法在輸入圖像上生成待檢測區(qū)域構(gòu)成候選檢測集。然后進行特征提取,R-CNN 通過使用卷積神經(jīng)網(wǎng)絡(AlexNet)在待檢測區(qū)域上分別計算每個推薦的特征并提取,最后通過使用類別相關線性支持向量機(SVM)對這些提取的特征向量進行打分,根據(jù)分數(shù)的高低進行分類,進而得到目標的分類。R-CNN 通過采用bounding box regression對圖像中的目標邊框的圖像區(qū)域進行更正,使得目標檢測精度大大提升。但R-CNN 因為采用串行式CNN前向傳播而且沒有考慮共享計算,耗費了大量的時間。對于每一個輸入圖像和感興趣區(qū)域(RoI)都需要經(jīng)過AlexNet 網(wǎng)絡進行特征提取,為所有的感興趣區(qū)域(RoI)提取特征使用46s 左右,并且訓練時提取的特征需存入硬盤,需要很大的存儲空間。為了應對復雜的機器視覺使用環(huán)境,提高算法的實時性,研究者提高了檢測速度,提取的特征不再存入硬盤,相繼提出了Fast R-CNN、Faster R-CNN 對R-CNN 進行改進。首先將R-CNN 耗時的特征提取方式修改成一個全卷積網(wǎng)絡對全圖進行提取特征的方式。使用RoI Pooling Layer在全圖特征上提取每一個感興趣區(qū)域(RoI)對應的特征,再通過全連接層(FC Layer)對目標區(qū)域進行分類和包圍框的更正;取代selective search 構(gòu)成候選檢測集的方法,直接通過一Region Proposal Network(RPN)生成幾乎無代價的區(qū)域推薦,將生成輸入圖像和感興趣區(qū)域(RoI)由2s 變?yōu)?0ms。
Mask R-CNN 主要是在Faster R-CNN 的基礎上進行了擴展。①借用了Faster R-CNN 的區(qū)域推薦網(wǎng)絡(RPN),生成檢測目標的邊框。②在Faster R-CNN 的基礎上用RoIAlign 代替了RoIPooling,RoIPooling 使用取整量化,導致特征圖RoI 映射回原圖RoI 時空間不對齊明顯,造成誤差;RolAlign 不使用取整量化而是采用雙線性插值,完成像素級的對齊;Mask R-CNN 添加了平行于分類和邊框的回歸分支的掩模分支,一個用在ROI 上的小型全卷積網(wǎng)絡,以此實現(xiàn)了像素級的分割。

圖1 Mask R-CNN網(wǎng)絡結(jié)構(gòu)圖
此方案提出的對目標物體抓取點空間坐標的檢測,主要分為兩個階段:預處理階段和識別處理階段。預處理階段需要訓練一個神經(jīng)網(wǎng)絡對其物體進行分類識別,對圖片進行加工處理后生成識別需要的模板,用于后期處理時的匹配;識別處理階段即對物體進行定位檢測、處理、抓取點空間坐標結(jié)果輸出。
預處理階段要訓練一個物體檢測模型和對物體進行模板圖片制作。①對于待檢測的物體建立2D 圖像數(shù)據(jù)集,使用Mask R-CNN 卷積神經(jīng)網(wǎng)絡進行訓練,進而對物體進行識別分類。②對于每個物體四周進行拍照,步長大概45 度,圍繞物體拍8 張,并用SIFT 進行特征點提取,保存此圖片和此圖片中SIFT 檢測出的各特征點的像素坐標。③選定一個抓取點,即擬測量的物體某個具體空間坐標的點,這個點可以是物體上任意處的點。④借助深度相機和公式測量保存各特征點和抓取點的空間坐標,通過距離公式((Xi-x)2+(Yi-y)2+(Zi-z)2=)計算得出兩點距離。⑤保存每個特征點到抓取點的直線距離。步驟②拍攝的圖片和步驟③計算出的距離組成了各個物體的模板。
①相機拍照并保存圖片,取名為測量圖片。Mask R-CNN 對此測量圖片進行識別,給出測量圖片中的分類結(jié)果和物體在此圖片中的掩模像素坐標。②通過Mask R-CNN 得到的物體分類結(jié)果,調(diào)取出在預處理階段保存的相應模板。對彩色圖片中經(jīng)Mask R-CNN 得到的物體的掩模與相應的模板進行SIFT 特征匹配。③對彩色圖像和步驟二中調(diào)取的模板圖片這兩張圖片之間的特征點進行映射,使模板圖片與測量圖片經(jīng)SIFT 特征點匹配成功的各特征點到抓取點的距離映射到彩色圖片的特征點到抓取點的距離。并計算出各特征點的空間坐標。④根據(jù)各特征點到抓取點的距離可列出方程:設A 特征點,已知測量圖片中A 特征點的空間坐標為(X1,Y1,Z1)與到抓取點的距離為D1,可得方程:(X-X1)2-(Y-Y1)2+(Z-Z1)2=D12。若知道4 個特征點(不共線)即可列出4 個方程,解出方程組即可求出物體抓取點的空間坐標。由于相機設備的誤差,致其測量的數(shù)據(jù)存在誤差導致方程組無解,故使用最小二乘法進行迭代求解[8]。

圖右面為測量圖片,圖左面為測試圖片經(jīng)Mask R-CNN 處理得出物體類別后,調(diào)取出的對應物體模板圖片。圖片經(jīng)過Mask R-CNN 處理后給出了物體掩模區(qū)域像素位置,只需對其區(qū)域掩碼區(qū)域進行匹配,增加了SIFT 的匹配精度。

圖2 模板與測試圖片示意圖(ps示意圖)
本文提出一種對物體某點進行空間坐標測量的方案。結(jié)合RGB-D 相機、Mask R-CNN 深度網(wǎng)絡學習模型、SIFT 特征點查找進行物體空間坐標的測量。對獲取到的彩色圖像使用Mask R-CNN 深度網(wǎng)絡學習模型進行類別識別,得到類別后調(diào)取相應的模板進行SIFT特征匹配,對于匹配的結(jié)果結(jié)合深度相機獲取到的深度信息列出計算抓取點空間坐標的方程,使用最小二乘法對方程進行計算得到結(jié)果。通過此方法可避免點云配準方案中使用昂貴的3D 掃描儀進行物體建模的步驟,且接近達到通過點云配準方案的精度。相較于使用深度學習模型學習物體各種姿態(tài)進行估計的方法精度會高一些。