李晶晶 孫小強 蔡苑彬 倪敏成
(1、武警廣東省總隊梅州支隊,廣東 梅州514000 2、31121 部隊,廣東 汕頭515041)
Point Cloud Library(PCL)由于其內部的算法機制,通過對特征重構、搭建優化模型,從而成為了一個獨立的大型的處理二維三維圖像和點云數據的開源工程。在當前,依靠計算機、信息技術,視覺識別在物體、分點的精確的和可靠性均相比于以前實現質效的大幅提高。本文通過構建常見物體的點云數據模型庫,對基于PCL 機器人視覺識別算法進行了研究,提出了一種形狀特征的實時識別算法。
機器視覺在越來越多領域得到充分應用,也這是如此,其作為人工智能領域成為發展最快速的分支之一。其發展的階段大體可以分為:1950 年,基于平面體系的分析和識別;1960 年由二維構造分析轉移至三維體系分析以及空間構造分析;1960 年后機器視覺的研究進入了新階段,即Marr 教授提了當時較為權威的Marr 視覺理論[1];1980 年,機器視覺的研究開始走出實驗室而被更多地應用于實際生活、生產中,同時,愈來愈多新方法、新概念被提出。
如圖1 所示,為一個典型的工業視覺應用系統。其涵蓋了光源、控制執行模塊、光學成像系統、圖像捕捉系統、圖像數字化模塊和圖像處理及決策模塊。由此圖我們可以看出其工作流程,第一步是目標物體圖像信號化處理,主要是借助相機或其它圖像采集工具;第二步是送給圖像處理系統,這期間需要將這一圖像信號轉變成數字信號;第三步是提取目標物體的特征,主要是根據像素分布、亮度和顏色等信息,進行各種圖像處理來;第四步是輸出判斷結果,最終根據預設的容許度和其他條件得出。從上述介紹中,我們可以得出,機器視覺系統是最終用于實際檢測、測量和控制的,主要是用計算機來模擬人的視覺功能,進行實時收集、處理和理解客觀事物的圖像的智能化系統。

圖1 視覺應用系統
主要是數據采集、預處理、建模、特征提取四個程序步驟。本系統首先使用Kinect 系統采集點云數據,其次對采集的數據進行濾波等實時預處理,之后使用聚類分析對識別目標進行建模,最后應用識別算法對目標實現特征提取。系統主要分為以下四個模塊,一是點云數據采集、二是點云實時預處理、三是聚類分析和四是特征識別。
機器人視覺識別系統對目標對象進行點云圖像的獲取作為首要步驟。為獲取此時點云圖像數據,得到基于場景2.5D 的深度圖像(即每個像素點除了有灰度信息還有深度信息),需要對所在環境進行信息識別,得到的數據圖像傳送至算法流程中,最終完成點云圖像實時預處理過程。
對于一副由采集到的點云圖像,為提高系統的識別率,在對數據點進行濾波處理,就好像采集數據總會存在誤差一樣難以避免,在進行圖像采集時,無論你是通過何種方式得到的灰度圖像,其中肯定會夾雜著些許的噪點,這就需要通過一些方法對圖像處理以后來實現有效的降低噪點數量的目的。本文在研究對比了多種降噪方法以后決定采取均值濾波法進行圖像處理。借助于圖形中的像素點,均值濾波通過把圖像分成多個模塊利用各個模塊的平均值替代更替像素值,以達到平滑圖像的目的,是一種非線性處理數字圖像的方法。
高效分聚類獲取可顯著提高目標的識別效率,因此,在實時識別算法處理過程中,點云聚類獲取是整理流程中最為關鍵的一環。點云聚類實現過程主要包括:一是將圖像每個像素點的灰度信息和深度信息向量化成[grey, depth]。二是為得到N 個分類及每個分類的像素數量,通過向量的歐式距離對圖像進行最鄰近聚類分析。三是嚴格選取聚類數量處于500-25000 之間的分類,從而作為最終識別的目標分類,其余分類舍棄。
CVFH 是在基于二維構造體系下,通過對特征進行分布提取,概述聚類的整體形狀、特征。CVFH 特征直方圖立足于視點特征直方圖來進行特征數據點的計算描述,CVFH 特征直方圖和特征直方圖都屬于全局特征描述。
在2.3 的基礎上,為得到形狀特征的數字描述,可以對獲得的分類進行CVFH 特征算子計算。
如圖2 所示,為完成對工件的定位,并給出每個目標物的高度信息和形狀信息,本次實驗主要是由本文提出的算法進行。可以看到,在試驗臺上分別放置橫向尺寸相同,縱向尺寸不同的研究對象,縱向尺寸分別為10mm、15mm 和20mm。

圖2 機器人工作區域
如圖3 所示,之所以對圖像進行灰度閾值分割,實現工件與背景分離,是因為目標物顏色為白色,與黑色背景區別較大。因此可以通過軟件查看圖像的直方圖,明確不同區域的灰度值,從圖中可以看出當88-92 的灰度范圍值可以分辨初工件和背景;因此本文取中間值90,此外為保證像素點均勻性,本文將閾值的像素點設置為0。
為獲得分割后均勻的區域塊,需要對分割閾值的區域進行重合,主要考慮放圖像分割后,會在區域內存在邊界和壞點,具體如圖所示中分割前后的效果圖,為便于分辨,本文通過不同顏色來進行不同連通點云聚類甄別,之所以采用面積分割方法去除圖像中面積較小的連通區域,是因為在相機固定情況下工件在圖像中的面積是固定的。最后運用到了霍夫變換算法,其主要用來從圖像中分離出工件的圓形區域提取點云聚類,進行圓形區域擬合(圖4)。
之所以機器人不僅要獲得二維坐標信息還必須得到工件高度信息才能完成抓取動作,是由于由于待抓取工件高度不同。基于PCL 機器人視覺算法分析方法中,為使2 個相機的作用特征基本保持一致,本人通過采用極線約束方法,利用視差法原理來進行工件高度的預測和分析(圖5)。

圖4 經過閾值分割和區域連接后的提取點云聚類效果圖

圖5 左右相機圖像極線校正

圖6 立體匹配模型
在左右相機圖像中找到相同的特征點,然后進行視差計算是圖像立體匹配的原理。之所以利用極線校正方法對左右兩個相機的圖像進行處理,主要目的在于提高像素的識別效率和可靠性;雙目相機極線校正主要在于使2 個相機的作用特征基本保持一致獲得相同的光軸平行、焦距參量。視覺立體匹配就是首先要在左右相機成像平面中找到相同特征點的圖像坐標,然后根據三角定位法來求得該點的深度信息。圖6 演示了通過極線校正后在公共成像平面上左右相機的光軸互相平行的立體匹配模型。
本文通過基于PCL 機器人視覺識別算法分析進行了研究,提出了一種形狀特征的實時識別算法,構建了常見物體的點云數據模型庫,分析了實驗過程中的主要點云處理步驟,如點云分割、特征提取等過程