周 迪
(1、南京迪之海信息科技有限公司,江蘇 南京 210033 2、方融(廈門)科技有限公司,福建 廈門 361008)
隨著工業(yè)機器人技術的飛速發(fā)展,工業(yè)機器人在各個領域得到了廣泛的應用。工業(yè)機器人所處的環(huán)境,對工業(yè)機器人的功能也有相應的要求。近年來,人工智能迅速發(fā)展。機器學習是人工智能的重要組成部分?;谌蝿照{度的工業(yè)機器人視覺要求機器人能夠與環(huán)境交互。這個問題可以用雙透鏡解決。
利用通用目標識別算法,從中提取圖像,建立目標剖面數據包以確定對象的特征。目標類別數據可以通過對輸入圖像的外推和與字包特征的匹配來估計。針對結構簡單、規(guī)則可調的對象,通常根據其幾何特征進行分類。雖然該方法簡單有效,但在幾何可比性高的條件下,很難保證目標分類的準確性。針對目標識別的難點問題,提出一種基于SIFT 的高有源干擾檢測算法。
常見的CNN 網絡特征提取結構見圖1。它包括建立卷積算子,實現圖像中目標特征的獲取和顯示,減少權值分配優(yōu)化參數的個數,加快算法的學習速度。卷積層的工作原理見圖2。
圖1 CNN 網絡結構
圖2 卷積過程
根據圖像的卷積后相對位置不變性,同時在不影響整體的算法穩(wěn)定的前提下,對數據進行降維??梢越鉀Q多尺度卷積后的海量數據帶來巨大的運算量的問題。均值池化將感受野內的參數進行相加求均值作為輸出,最大值池化為選定感受野內最大特征值作為輸出。
根據實際任務創(chuàng)建一組數據來定義對象。為了滿足網絡模型的輸入要求,圖像中必須指定對象的類別和邊界。標注界面和數據集見圖3。
圖3 數據標注
本文介紹了深度學習的原理和幾種傳統(tǒng)的目標識別網絡,并將yolo-v3 深度學習算法作為系統(tǒng)目標識別模塊。在收集大量目標數據的基礎上,標記VOC 格式記錄并進行網絡學習,并驗證準備好的網絡模型。結果表明,所建立的網絡模型能夠滿足系統(tǒng)的要求。
利用相似原理在相機坐標系下計算目標點的深度,并根據得到的深度信息計算出相機坐標系的三維點云。在稠密點上稀釋云層可以穩(wěn)定特征點并確定物體在相機坐標系中的位置。
由于單片機拍攝的是二維圖像,沒有空間維度,因此無法直接在單片機的基礎上獲取物體的三維特征信息。為了解決這個問題,我們可以使用雙目相機對同一物體進行拍照,以獲取目標的三維特征信息。雙目相機獲取三維信息的原理是同一特征點位于兩個相機像面上的不同位置,根據邊界約束得到其視差,最后通過三角形類比計算出物體的三維坐標。
2.1.1 相機模型
將點P 轉換為世界坐標系(包括坐標系、攝影機坐標系和圖像坐標系)中描述的攝影機圖像平面。具體轉換過程如下:
使用M1來代表相機的內部參數矩陣,使用M2來表示相機外參數矩陣,所建立世界坐標系與圖像坐標系之間的轉換關系如下式:
2.1.2 張正友標定法
為了獲得相機的內部和外部參數,必須進行校準。最常用的標界方法是張正友標定法。由于標界標記結果穩(wěn)定,算法成本低,因此在實際測量中得到廣泛的應用。
機器人圖像由觀察決定,這些圖像的性能由算法決定,它們的性能很符合設計需求??臻g分布有限的三維穩(wěn)定小物體見圖4。
圖4 物體空間分布
通過校準相機建立了雙眼相機模型.圖像中物體的位置及其通過分割背景,通過降噪獲取圖像數據集,三維點云目標根據圖像的立體匹配。通過云量優(yōu)化和平滑,得到了目標點的可靠信息。在深度測量中,通過對梯度進行分類,得到一個對象及其表示對象的每個特征的梯度。根據區(qū)域的云量,確定構建工位坐標系所需的特征,建立工位坐標系,得到工件相對于相機的空間位置矩陣。
通過建立雙目相機模型,為了對圖像中的物體進行分割,本課題使用背景差分法,保留圖像噪聲和對象三維云作為目標對象的數據表可以通過使用圖像的空間組合獲得可靠的目標點云數據。對點云進行優(yōu)化,消除粗糙度誤差,對深度測量中的目標特征點進行梯度劃分,將目標特征點分類為梯度。利用區(qū)域云對建立工件坐標系所需的特征點進行評價,建立了工件相對于相機的狀態(tài)空間矩陣。
3.1.1 硬件系統(tǒng)搭建
機器視覺的主要技術是利用圖像采集設備代替人眼捕捉外部信息,并對采集到的圖像進行處理,獲得所需的物體及其位置信息。主要硬件包括工業(yè)相機、鏡頭、圖像采集卡、工業(yè)機器人等,特別是利用光電管采集物體。屏幕截圖將相機獲取的數據轉換為圖像數據,該系統(tǒng)利用屏幕截圖采集顯微圖像,相機接收的圖像作為數據文件存儲在計算機上。
3.1.2 軟件系統(tǒng)開發(fā)
為了簡化機器人控制的工作量,采用C+語言構建了六自由度機器人控制平臺,并提供了DMC 運動控制庫函數。
輸出模塊txt 建立在基于Matlab 的六自由度機器人控制平臺上。Matlab 仿真結果保存在txt 文件中。在基于MFC 的六自由度機器人控制平臺上建立了“txt 文檔”導入窗口。從仿真平臺獲取的txt 文件直接用于機器人的固態(tài)運動,實現了機器人固態(tài)運動的仿真與控制?;贛FC 的六自由度工業(yè)機器人控制平臺見圖5。
圖5 機器人控制平臺
可視化信息采集系統(tǒng)主要采集外部數據,先將從網絡攝像頭獲取的圖像指向左右,獲取圖像中物體位置信息,然后采用立體組合,使物體與區(qū)域匹配,得到相應的視差。根據相機模型,點目標的云量將是稠密的。通過優(yōu)化目標位置獲得穩(wěn)定性能。
在根據對象的最大幾何尺寸獲取對象的三維信息時,抽象地將對象作為仿真模型下的幾何圖形。首先計劃機器人的運動。根據安全系數,六自由度機器人沿直線移動到位于目標Z 軸上方的安全距離,然后沿Z 軸移動完成目標定位。機器人平臺見圖6。
圖6 機器人平臺
工業(yè)機器人控制系統(tǒng)在接收到三維物體的輸入信息后,需要將三維空間坐標轉換為機器人的運動軌跡。從而將六自由度坐標問題轉化為機器人的逆運動學問題?;诳臻g坐標,計算一系列到達目標點的空間點,并計算不同關節(jié)的運動角度。利用先進的六自由度機器人運動學解,工業(yè)機器人可以移動到執(zhí)行機構末端的指定對象,然后將檢測到的對象放置在指定位置,完成工業(yè)機器人的分揀任務。
在工業(yè)機器人能夠移動之前,需要對其路徑進行規(guī)劃。為了獲得連續(xù)的運動軌跡,采用插值算法確定點的中間性質。在關節(jié)角空間軌跡規(guī)劃中,通過插值確定兩個連續(xù)屬性和內部屬性的運動參數,并通過定義不同的關節(jié)函數來描述相應關節(jié)的屬性。通過將機械手的不同關節(jié)沿其軌跡耦合,最終得到所需的空間特性。
本文以六自由度實驗室工業(yè)機器人為研究對象,主研究結果包括:建立了基于Keras 網絡的網絡模型,根據yolo-v3 的要求,采集了大量的學習數據圖像,并用MG工具包進行了標記,以識別網絡算法。實驗結果表明,該網絡能夠在圖像中設置和識別目標。
雙目照相機的相機校準及其布局是通過張正友小組設計的校準方法進行的。一個三維點,在左邊和區(qū)域特征上與圖像重合。建立了D-D 評價功能,選取了目標區(qū)域定位和位置所需的特征,完成了對目標位置和位置的評價。在Matlab GUI 庫的基礎上,建立了具有設計功能的機器人運動仿真平臺,實現了六自由度機器人的運動控制。