谷林峰 李 亞 丁彥玉 孫 科
(1. 天津市輕工與食品工程機械裝備集成設計與在線監控重點實驗室,天津 300222;2. 天津科技大學機械工程學院,天津 300222)
目前,花生批量分揀生產線主要依賴于人眼識別缺陷,人工挑揀次品、分裝成品,勞動成本大,誤檢率高,且抗疲勞能力差。近年來,機器視覺技術[1-2]被逐漸應用于農作物流水生產線的自動分揀工作[3-4],生產效率大幅提升。實踐中,固有傳送帶生產線利用單目視覺引導機器人進行抓取的操作最為普遍,其核心問題是需要現場完成攝像機標定和手眼標定過程[5]。多數基于傳送帶的標定方法[6-7]都忽略了目標的重心高度信息,并不適用于花生等立體目標的定位分揀過程。利用場景特征[8]和結構光平面[9]等獲取立體定位信息的手眼標定方法,但其三維信息的求解過程較復雜,難以在手眼無重合工作空間的現場環境下實施。
文章以揀選大批量花生的典型傳送帶生產線為對象,根據花生的分揀要求,擬提出一種能在現場簡便操作的標定方法,并根據花生形態(圖1)作出重心定位補償。利用自制的高精度標定塊,并使用與其過渡配合的標定針,引導機器人手臂末端插入指定標定孔,求取攝像機與機器人坐標系的位姿轉換關系,避免傳統方法以肉眼判別接觸點的誤差影響;針對不同大小的油炸花生分揀高度不一致的問題,建立關于花生圖像輪廓與花生高度變化的關系模型[10-11],以傳送帶為基準面對每顆花生進行高度補償,避免單一平面標定對花生定位精度的影響,提高其對立體目標的定位抓取精度,旨在為基于傳送帶作業的目標三維定位提供一種求解思路和方法。

圖1 花生形態
現場標定系統(圖2)由工業級CMOS面陣相機、E6B2-C增量式旋轉編碼器、低角度條形光源、傳送帶模塊、TS6-600四自由度SCARA機器人等組成,單目相機固定在上料端正上方,傳送帶輸送待分揀花生到達機器人工作區域,進行分揀操作,部分系統根據產量要求,添加多臺機器人對應一個視覺模塊,協調運作。
油炸花生流水線生產中,相機與機器人之間無重合工作空間,固定單目相機與遠端機器人的標定[12]是通過標定塊在傳送帶上移動前后的位置照片和編碼器讀數計算對應移動距離,工具坐標系末端多次觸碰參考物指定點,求解出機器人與傳送帶的旋轉平移關系,標定一旦完成,各部分位置關系將固定不變。
為更好地描述各坐標系之間的相對位置關系,傳送帶坐標系Ow-XwYwZw、相機坐標系Oc-XcYcZc與機器人坐標系OB-XBYBZB如圖3所示。
根據透視投影關系,從傳送帶坐標系轉換至像素坐標系的過程屬于三維坐標轉二維坐標,根據Zhang[13]提出的平面標定方法,計算攝像機內部參數。設傳送帶坐標系點Pw(Xw,Yw,Zw)投影至像素坐標點p(μ,υ),暫不考慮Zw高度信息,以矩陣形式表示:

1. 光源 2. 標定板 3. 相機 4. 機器人 5. 編碼器 6. 傳送帶

圖3 坐標系的建立
(1)
式中:
α——比例因子;
fμ、fυ——μ、ν軸的比例因子;
β——μ、ν軸的傾斜程度;
(μ0、υ0)——圖像主點在像素坐標系下的坐標位置;
R、T——旋轉平移矩陣。
傳送帶坐標系與機器人坐標系之間的變化可看作剛性變換,空間位置點P相對于傳送帶坐標系的描述為PW,轉換成該點相對于機器人坐標系的描述PB表述為:
(2)
式中:



(3)
根據旋轉平移關系得:
(4)
式中:
γ——兩平面坐標系X軸之間的夾角;
Tx、Ty——傳送帶坐標系相對于相機坐標系的X、Y方向平移量。

因大小不同的花生重心高度不一致,且花生外形近似橢圓體,僅靠傳送帶水平面的二維平面位置信息不適用于花生的分揀過程,只有在平面標定后進行橢圓擬合算法提取花生輪廓,將花生重心高度補償給機器人分揀位置,才能提高分揀精度。
為了更清晰地顯示花生的輪廓信息,按照一定的變換關系,將采集到的花生圖像轉化為灰度圖像, 運用Blob分析法對圖像進行二值化,圖像分割得到前景和背景,連通域提取得到ROI區域(圖4)。
為了后續圖像處理中更準確地進行輪廓橢圓擬合,計算出花生的重心位置,首先需要獲取花生的邊緣軌跡。基于花生預處理后的二值化圖像,在花生邊緣的法線方向會呈現斷層式的灰度變化,對二值化圖像進行逐行逐列掃描,選取適合的閾值σ,記錄掃描過程中前后灰度變化Δ,若Δ>σ,記錄該像素點,否則舍棄,最終求得所有點的集為花生邊緣輪廓(圖5)。
根據Fitzgibbon等[14]提出的運用直接最小二乘法,對輪廓至少6個擬合點進行橢圓輪廓擬合,一般圓錐曲線表示為:
ax2+bxy+cy2+dx+ey+f=0。
(5)
假設提取的輪廓點為(xi,yi),建立函數F(a,b,c,d,e,f)為輪廓點與預期的橢圓曲線的代數距離,最小化代數距離函數,并添加約束條件4ac-b2=1,防止擬合輪廓為拋物線或雙曲線,最終得橢圓輪廓(圖6)。


圖4 圖像預處理

圖5 花生輪廓曲線

圖6 花生輪廓橢圓擬合
(6)
式中:
K——徑向畸變量級(決定圖像畸變程度)。
取傳送帶平面的兩點實際距離為L,采集圖像平面上點p1(μ1,υ1)、p2(μ2,υ2),即傳送帶平面的實際距離與圖像像素距離之間存在映射因子Fac:
(7)
因花生呈長橢圓體,在傳送帶上運輸時橢圓長半軸R近似平行于傳送帶平面,通過映射因子取像素坐標系中橢圓短半軸r計算花生實際輪廓寬度(見圖7)。以傳送帶平面為基準,可將花生重心高度補償至機器人定位信息中。
為了提高平面標定精度,針對生產線手眼安裝位置,設計適合于現場操作、簡便易攜的“9+2”高精度標定塊,呈3×3矩陣排列的9孔為高精度孔,其余2孔為定位孔,并使用能與其過渡配合的標定針(圖8)。
標定過程中,緩慢轉動傳送帶使固定標定板依次在圖9的視野前部P1、中部P2、后部P3采集圖像,提取P1、P2、P3位置點坐標,記為(μ1,υ1)、(μ2,υ2)、(μ3,υ3)。

圖7 花生高度信息

圖8 “9+2”標定塊和標定針
建立傳送帶坐標系,以P3點為原點,X軸正方向為傳送帶運動方向,利用坐標點反正切函數可求取像素坐標系與傳送帶坐標系繞Z軸夾角γ:
(8)
使編碼器讀數歸零,勻速轉動傳送帶使標定板從P3位置移動至機器人工作區域位置P4(見圖10)。
為避免機器人末端接觸指定點的誤差干擾,利用標定針引導機器人末端準確地進入標定孔,讀取機器人坐標和編碼器讀數。移動至后部P5,記錄P4至P5的移動距離,求出傳送帶坐標系與機器人基坐標系的轉換關系。標定多個機器人時,需重新從P3位置進行標定,重復以上操作,減小累積誤差。
利用文中介紹的標定方法,圖像采集過程如圖11所示。通過標定試驗,映射因子為0.128 mm/pix。
手眼轉換矩陣為:

圖9 相機視野與傳送帶平面關系
為準確地評價該方法的標定精度,取10顆大小不等花生分別固定于傳送帶上,在相機視野下進行拍照,勻速轉動傳送帶至機器人工作區間內,計算得出機器人坐標系下的坐標位置與標定孔的實際坐標位置,進行10次重復試驗。由表1可知,試驗標定方法最大偏差為0.93 mm,理論點與實際點的歐氏距離平均值為0.46 mm,遠高于傳統手眼標定精度。
取100粒大小不等的花生進行有無高度補償對比抓取試驗,記錄機器人抓取成功率。試驗表明系統平面重復定位誤差可控制在±1 mm,添加高度補償值后,抓取成功率由87%提高至97%,能夠滿足傳送帶分揀要求。

圖10 機器人工作區域與傳送帶平面關系

圖11 標定過程圖像采集

表1 標定試驗數據
微小誤差可能來源:傳送帶傳輸過程中不穩定,出現左右擺動問題;花生傳輸過程中與傳送帶發生相對滑動;編碼器脈沖讀數不準確,導致傳輸方向誤差;通訊模式有延遲等問題。
根據花生生產線現場操作條件,改進了傳統手眼標定方法,利用專門定制的“9+2”標定塊進行平面標定,并對花生處理提取輪廓信息,進行重心高度補償。結果表明,該標定方法便于在生產現場實際操作,降低了傳統手眼標定矩陣求解難度,可滿足基于傳送帶作業的機器人分揀精度要求。但對于相機、傳送帶平整度及安裝精度要求較高的,需后期對此方面問題繼續探索,使之得到廣泛應用。