項目實戰——基於計算機視覺的物體位姿定位及機械臂抓取(基本原理)

項目實戰——基於計算機視覺的物體位姿定位及機械臂抓取(基本原理)

        首先讓各位關注我的朋友們久等了,這個項目是我本科的畢業設計,寫到四之後,我就一直忙於各種各樣的事情,沒有時間繼續寫了,十分抱歉。最近我終於抽出時間了 ,看了看之前寫的,總覺得代碼過多而原理過少。而且之前做項目的時候,走了不少彎路,甚至不少錯路,這也寫進去了。因此,在這裏,我打算重開本專題,把我的畢設完完整整的講明白。

        另外請各位讀者朋友注意,這裏面很多東西涉及到我的畢設,寫作辛苦,請勿濫用,轉載請務必註明出處!

項目研究目標

        設計一套基於雙目視覺的系統,實現物體位姿自動識別與抓取功能。

項目研究內容

        研究設計以解決以下四點問題:
        1、如何利用兩顆攝像頭實現雙目測距;
        2、標誌物的設計及如何實現標誌物的識別;
        3、物體位姿的判定方法;
        4、確定機械臂的運動學逆解,並實現抓取。

        好的,現在就讓我們開始第一部分的介紹,這也是計算機視覺的核心問題:如何利用兩顆攝像頭實現雙目測距。

雙目測距原理

        如圖 2.1-1 所示,分別以Ol和Or爲座標原點建立相機座標系 Ol − ??????和 Or − ??????:


圖2.1-1 攝像機位置模型

        其中:Ol爲左攝像機光心,Or爲右攝像機光心,世界座標系O − XYZ與座標 系Ol − ??????重合。P 爲三維現實世界中的一點,在左右攝像機上分別成像於點P l和Pr。 假設左右攝像機完全平行(即:左右相機座標系的 x 軸共線,yOz平面平行),平行間距爲B,則從俯視圖上看,如圖 2.1-2 所示:


圖 2.1-2 雙目測距原理

        其中,f 爲焦距,Z 爲待測的深度(距離)信息,不難得出:


plpr=B(xlxr)|p_l p_r |=B-(x_l-x_r)

        根據相似三角形原理有:


plpr/B=(Zf)/Z|p_l p_r |/B=(Z-f)/Z

        因此,待測的深度(距離)信息爲:


Z=fB/(xlxr)Z=fB/(x_l-x_r )

        如果要根據上述公式對三維世界中的點進行雙目測距,需要確定的參數有:攝像機的焦距(f)、兩個攝像機的平行間距(B)、同一個點在兩個攝像機平面所成像的像素座標。
因此,需要計算的信息有:
        1、兩個攝像機的內在參數(焦距等參數);
        2、兩個攝像機的外部參數(相對位姿等參數);
        3、進行立體匹配,確定同一個點在兩個攝像機成像位置。
        但是,上述情況是雙目攝像頭是在理想情況下的測距計算方法,實際情況下還存在諸多誤差因素,主要有:
        1、攝像機在生產的過程中,由於鏡片的製造工藝和裝配誤差,會造成一定程度的畸變,使得成像出現偏差,嚴重影響後續的圖像處理。因此需要進行畸變矯正,以保證成像一致;
        2、兩個攝像機在外觀上不可能完全平行,在x、y、z三個方向上都會存在差異,如果不經過計算,直接進行對應點的計算,就會存在很大的誤差。因此需要確定兩個相機的相對位姿信息,予以矯正。
        綜上,實現雙目測距的具體步驟如圖 2.1-3 所示:


圖2.1-3 測距步驟

        單目標定:計算攝像機的內部參數,消除相機的畸變;
        雙目標定:計算兩個攝像機的相對位姿信息,並進行矯正;
        立體匹配:將左右攝像機拍攝圖像的對應像素點關聯起來;
        計算深度:根據公式確定待測的深度(距離)信息。
        圖2.1-4生動地描述了上述過程:


圖2.1-4 處理步驟

        以上即爲雙目測距的主要原理的,那麼下一部分就是單目標定了。

        Hunt Tiger Tonight
        2019-10-29
        聯繫方式:[email protected](請勿使用其他聯繫方式,謝謝!)
        PS:再次請各位讀者朋友注意,這裏面很多東西涉及到我的畢設,寫作辛苦,請勿濫用,轉載請務必註明出處!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章