本發明涉及智能機器人技術領域,尤其涉及一種基于nao機器人抓取物體的系統。
背景技術:
隨著人工智能技術的發展,由于nao機器人高度融合了自動化、機械、傳感術、計算機、人工智能等多學科知識和研究成果,被廣泛應用于日常生活和生產中。
現有技術中,在利用nao機器人來抓取物品系統中,通常需要對物體相對于機器人的位置進行定位,一般采用單目視覺定位方法。
本申請發明人在實現本發明的技術方案時,發現現有技術中至少存在如下問題:
現有采用單目視覺定位系統,對物體的定位并不精確,誤差比較大,此外,機器人如果未成功抓取到物品,也無法得到反饋。
可見,現有技術中定位系統存在精度不高、實時性差的技術問題。
技術實現要素:
本發明實施例提供一種基于nao機器人抓取物體的系統,用以解決現有技術中抓取物體的系統存在定位精度不高、實時性差的技術問題。
本發明公開了一種基于nao機器人抓取物體的系統,所述系統包括:
第一獲得模塊,用于利用預先設定的搜索路徑基于顏色分割的方法找到并識別目標物體,獲得包含所述目標物體的圖像和所述目標物體的第一中心點像素坐標;
第二獲得模塊,用于獲得所述nao機器人的頭部高度變化值與俯仰角的第一函數關系
第三獲得模塊,用于根據所述第一函數關系,獲得所述目標物體到所述nao機器人的距離與所述俯仰角的第二函數關系
第一獲取模塊,用于獲取所述圖像的第二中心像素點坐標,其中所述第二中心像素點坐標為所述圖像的中心像素坐標值;
第四獲得模塊,用于根據所述第一中心點像素坐標和所述第二中心像素點坐標,獲得所述目標物體相對于所述nao機器人的水平偏角和垂直偏角,其中所述垂直偏角為所述nao機器人的俯仰角;
第五獲得模塊,用于根據所述垂直偏角和所述第二函數關系,獲得所述目標物體到所述nao機器人的距離;
第二獲取模塊,用于根據所述距離和所述水平偏角,獲取所述nao機器人行走路線,以使所述nao機器人基于所述行走路線抓取所述目標物體。
可選的,所述第一獲得模塊還用于:
利用機器人攝像頭獲取一幀圖像并將其轉化為hsv顏色空間的圖像;
從所述hsv顏色空間的圖像中獲得所述目標物體圖像,
根據所述目標物體圖像,獲得灰度圖像;
對所述灰度圖像進行優化處理和二值化處理,獲得保留原有信息的圖像;
根據保留原有信息的圖像,獲得所述目標物體的圖像的第一中心點像素坐標。
可選的,采用最小外接矩形框獲得所述第一中心點像素坐標。
可選的,所述系統還包括:
構建模塊,用于采用同一距離進行多次測量求取平均值的方法,構建距離與俯仰角度相對應的離線查詢表。
可選的,所述離線查詢表中包含根據距離設置的不同間隔范圍的數據。
可選的,所述第四獲得模塊還用于:
根據公式
根據公式
可選的,所述第四獲得模塊:
根據所述水平偏角,獲得nao機器人的水平轉動方向;
根據所述距離,獲得所述nao機器人的行走距離;
根據所述水平轉動方向和所述行走距離,獲取所述nao機器人行走路線。
可選的,所述第二獲取模塊還用于:
所述nao機器人運動至所述目標物體的位置;
獲得所述nao機器人手臂的抓取軌跡;
在所述目標物體的位置,根據所述抓取軌跡抓取所述目標物體。
可選的,所述第二獲取模塊還用于:
獲得所述nao機器人的手部電機值;
判斷所述手部電機值是否大于預設值;
若大于,則通過語音反饋成功抓取物體;
否則,所述nao機器人進行重新定位抓取,以構成抓取反饋。
本發明實施例中提供的一個或多個技術方案,至少具有如下技術效果或優點:
本申請實施例提供的一種基于nao機器人抓取物體的系統,首先通過第一獲得模塊獲得包含所述目標物體的圖像和所述目標物體的第一中心點像素坐標;第二獲得模塊獲得所述nao機器人的頭部高度變化值與俯仰角的第一函數關系,第三獲得模塊根據所述第一函數關系,獲得所述目標物體到所述nao機器人的距離與所述俯仰角的第二函數關系,第一獲取模塊可以獲取所述圖像的第二中心像素點坐標,然后通過第四獲得模塊獲得所述目標物體相對于所述nao機器人的水平偏角和垂直偏角,第五獲得模塊,根據所述垂直偏角和所述第二函數關系,獲得所述目標物體到所述nao機器人的距離;最后第二獲取模塊,可以根據所述距離和所述水平偏角,獲取所述nao機器人行走路線,以使所述nao機器人基于所述行走路線抓取所述目標物體。由于可以實時獲取目標物體到所述nao機器人的距離與所述俯仰角的第二函數關系,可以實現準確定位和提高實時性的技術效果,解決了現有技術中中定位系統存在精度不高、實時性差的技術問題。
上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發明的上述和其它目的、特征和優點能夠更明顯易懂,以下特舉本發明的具體實施方式。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明實施例中一種基于nao機器人抓取物體的系統的邏輯框圖;
圖2為本發明實施例中定位算法的原理圖。
具體實施方式
本發明實施例提供一種基于nao機器人抓取物體的系統,用以解決現有技術中抓取物體的系統存在定位精度不高、實時性差的技術問題。實現了提高物體的定位精度和實時性技術效果。
本申請實施例中的技術方案,總體思路如下:
一種基于nao機器人抓取物體的系統,其特征在于,所述系統包括:
第一獲得模塊,用于利用預先設定的搜索路徑基于顏色分割的方法找到并識別目標物體,獲得包含所述目標物體的圖像和所述目標物體的第一中心點像素坐標;第二獲得模塊,用于獲得所述nao機器人的頭部高度變化值與俯仰角的第一函數關系
第三獲得模塊,用于根據所述第一函數關系,獲得所述目標物體到所述nao機器人的距離與所述俯仰角的第二函數關系
上述系統中,由于第五獲得模塊可以根據所述垂直偏角和所述第二函數關系,獲得所述目標物體到所述nao機器人的距離,然后第二獲取模塊根據所述距離和所述水平偏角,獲取所述nao機器人行走路線,以使所述nao機器人基于所述行走路線抓取所述目標物體,可以實時獲取機器人的獲得所述目標物體到所述nao機器人的距離。解決了現有技術中抓取物體的系統存在定位精度不高、實時性差的技術問題。
為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
實施例一
本實施例提供一種基于nao機器人抓取物體的系統,所述系統包括:
第一獲得模塊101,用于利用預先設定的搜索路徑基于顏色分割的方法找到并識別目標物體,獲得包含所述目標物體的圖像和所述目標物體的第一中心點像素坐標;
第二獲得模塊102,用于獲得所述nao機器人的頭部高度變化值與俯仰角的第一函數關系
第三獲得模塊103,用于根據所述第一函數關系,獲得所述目標物體到所述nao機器人的距離與所述俯仰角的第二函數關系
第一獲取模塊104,用于獲取所述圖像的第二中心像素點坐標,其中所述第二中心像素點坐標為所述圖像的中心像素坐標值;
第四獲得模塊105,用于根據所述第一中心點像素坐標和所述第二中心像素點坐標,獲得所述目標物體相對于所述nao機器人的水平偏角和垂直偏角,其中所述垂直偏角為所述nao機器人的俯仰角;
第五獲得模塊106,用于根據所述垂直偏角和所述第二函數關系,獲得所述目標物體到所述nao機器人的距離;
第二獲取模塊107,用于根據所述距離和所述水平偏角,獲取所述nao機器人行走路線,以使所述nao機器人基于所述行走路線抓取所述目標物體。
上述系統中,由于第五獲得模塊可以根據所述垂直偏角和所述第二函數關系,獲得所述目標物體到所述nao機器人的距離,然后第二獲取模塊根據所述距離和所述水平偏角,獲取所述nao機器人行走路線,以使所述nao機器人基于所述行走路線抓取所述目標物體,可以實時獲取機器人的獲得所述目標物體到所述nao機器人的距離。解決了現有技術中抓取物體的系統存在定位精度不高、實時性差的技術問題。
下面,結合圖1對本申請提供的基于nao機器人抓取物體的系統進行詳細介紹:
第一獲得模塊101可以利用預先設定的搜索路徑基于顏色分割的方法找到并識別目標物體,獲得包含所述目標物體的圖像和所述目標物體的第一中心點像素坐標;
上述第一獲得模塊101還用于:
利用機器人攝像頭獲取一幀圖像并將其轉化為hsv顏色空間的圖像;
從所述hsv顏色空間的圖像中獲得所述目標物體圖像,
根據所述目標物體圖像,獲得灰度圖像;
對所述灰度圖像進行優化處理和二值化處理,獲得保留原有信息的圖像;
根據保留原有信息的圖像,獲得所述目標物體的圖像的第一中心點像素坐標。
具體地,采用最小外接矩形框獲得所述第一中心點像素坐標。
具體來說,上述優化處理可以為對獲得的灰度圖像先進行直方圖均衡化處理,以提高圖像的對比度和清晰度、對圖像進行雙邊濾波處理,去除噪聲點的干擾等等,對二值化圖像進行腐蝕、膨脹,可以進一步有效去除噪聲點,保留圖像中原有信息。
然后通過第二獲得模塊102獲得所述nao機器人的頭部高度變化值與俯仰角的第一函數關系
由于得到了nao機器人的頭部高度變化值與俯仰角,這時可以通過第三獲得模塊103,根據所述第一函數關系,獲得所述目標物體到所述nao機器人的距離與所述俯仰角的第二函數關系
具體地,目標定位時采用目標物體始終保持在視野中央,方便機器人實時定位物體,也符合人類抓取物體的習慣。考慮到機器人頭部的俯仰角發生變化時,其機器人頭部攝像頭的高度也在不斷的變化。本發明實施例根據機器人頭部的硬件結構,參見圖2推導出其高度變化值與俯仰角度的關系;將頭部攝像頭的高度表示成關于俯仰角的一個函數(即第一函數關系),并采用勾股定位算法中,可以得到的物體的定位算法(即第二函數關系),有效地提高了定位精度。
第一獲取模塊104可以獲取所述圖像的第二中心像素點坐標,其中所述第二中心像素點坐標為所述圖像的中心像素坐標值。
具體來說,所述圖像即為利用機器人攝像頭獲取的圖像,所述圖像包括物體和其他背景。
第四獲得模塊105可以根據所述第一中心點像素坐標和所述第二中心像素點坐標,獲得所述目標物體相對于所述nao機器人的水平偏角和垂直偏角,其中所述垂直偏角為所述nao機器人的俯仰角。
具體地,第四獲得模塊105還用于:
根據公式
根據公式
具體來說,(x,y)為所述第一中心像素坐標,(320,240)為所述第二中心像素坐標,圖像的像素為640*480,角度60.9°、47.64°均為機器人攝像頭的硬件值。
第五獲得模塊106可以根據所述垂直偏角和所述第二函數關系,獲得所述目標物體到所述nao機器人的距離;
具體地,所述所述第五獲得模塊106還用于:
根據所述水平偏角,獲得nao機器人的水平轉動方向;
根據所述距離,獲得所述nao機器人的行走距離;
根據所述水平轉動方向和所述行走距離,獲取所述nao機器人行走路線。
最后通過第二獲取模塊107,根據所述距離和所述水平偏角,獲取所述nao機器人行走路線,以使所述nao機器人基于所述行走路線抓取所述目標物體。
第二獲取模塊107中,所述nao機器人基于所述行走路線抓取所述目標物體,具體包括:
所述nao機器人運動至所述目標物體的位置;
獲得所述nao機器人手臂的抓取軌跡;
在所述目標物體的位置,根據所述抓取軌跡抓取所述目標物體。
可選地,本發明實施例提供的基于nao機器人抓取物體的系統還包括構建模塊,所述構建模塊用于在根據所述第一函數關系,獲得所述目標物體到所述nao機器人的距離與所述俯仰角的第二函數關系
采用同一距離進行多次測量求取平均值的方法,構建距離與俯仰角度相對應的離線查詢表。
可選地,本發明實施例提供的基于nao機器人抓取物體的系統中,所述離線查詢表中包含根據距離設置的不同間隔范圍的數據。
具體來說,利用第二函數關系,并通過對同一距離進行多次測量求取平均值的方法,可以構建一個距離與角度相對應的離線查詢表。由于因距離遠近不同而識別定位精度也不同,查詢表中物體距離可以從機器人腳中心位置前方20cm所對應的角度開始建表,表中20cm-70cm范圍內間隔為1cm,70cm-150cm間隔為2cm,150cm-450cm范圍內間隔為5cm,450cm外的物體機器人無法準確識別。具體的間隔范圍可以根據實際情況設置,從而進一步提高定位精度。
可選地,第二獲取模塊107還用于:
獲得所述nao機器人的手部電機值;
判斷所述手部電機值是否大于預設值;
若大于,則通過語音反饋成功抓取物體;
否則,所述nao機器人進行重新定位抓取,以進行抓取反饋。
申請人通過大量的實驗發現,不同的地面相對于機器人腳的摩擦因數不同,機器人在走向目標物體實施抓取的過程中常會出現腳步打滑而導致行走距離未能到達指定抓取點,最終導致抓取失敗的現象。針對這一不定因素的影響,本發明實施例在不借助外界輔助設備的情況下,提出一種通過傳感器獲取手部電機角度值與預設值(例如取值為0.25)相比較的簡單方法,來讓機器人自主判斷是否成功抓取到了物體。如果成功抓取,則機器人會通過揚聲器說出“igraspit”;若因行走過程中機器人腳與地面的微小滑動等不定因素影響而導致機器人抓取失敗,則機器人會反饋沒有抓到并自主進行再次的定位抓取,直到抓取成功。
在具體的實施過程中,可以根據機器人末端執行器起始點位置和終點位置(即物體位置)插入四個關鍵幀,用于規劃機器人手臂抓取的軌跡,上述步驟離線完成,然后通過nao機器人內置的函數positioninterpolation能夠把末端執行器送到機器人坐標系下的指定位置,然后通過控制機器人的手部電機實施抓取,在此過程中,可以通過傳感器獲取手部電機的值,與預設值進行比較,若獲取的值大于預設值,則機器人通過語音反饋抓到了物體。否則,機器人重新進行識別、定位、抓取。
需要說明的是,現有的基于nao機器人的定位系統無法獲得物體的空間三維坐標,故本發明實施例中所抓取的物體高度為已知值,即物體z坐標已知;在上一步物體測距的同時我們可以測出物體相對于機器人正前方向上的偏移角,然后機器人通過旋轉這個角度可以保證物體處于機器人正前方,即物體在機器人坐標系中y軸方向上的坐標為0;這樣通過測得的物體的深度坐標x就可以確定物體相對于機器人坐標系的空間位置(x,0,z)。由nao機器人內置的函數positioninterpolation能夠把末端執行器送到機器人坐標系下的指定位置,對目標點實施抓取操作。附:閉環反饋部分程序如下
進行再次抓取。
具體來說,本發明對目標物體的識別、定位與抓取提供了一種基于nao機器人抓取物體的系統,上述系統為一套閉環的系統。關于目標物體的定位,本發明根據機器人頭部結構及攝像頭的位置推導出頭部俯仰角度與目標物體距離之間的第一函數關系,由此第一函數關系根據多次測定求取平均值的方法制定離線查詢表,對每次獲取的機器人頭部俯仰角度采用線性插值的方法求得對應的目標物體的距離,有效地提高定位精度。在對目標物體的抓取上,本發明根據nao機器人的手部電機的類型,由離線設置好的電機旋轉角度閾值即為預設值,讓機器人能夠自主判斷是否準確抓取到了目標物體,若判斷未能成功抓取則機器人將重復進行抓取,構成了閉環的抓取反饋系統,可以適用于未來家庭服務型機器人助老、幫助人類拿取物件等智能家居等各個方面。
本發明實施例中提供的一個或多個技術方案,至少具有如下技術效果或優點:
本申請實施例提供的一種基于nao機器人抓取物體的系統,首先通過第一獲得模塊獲得包含所述目標物體的圖像和所述目標物體的第一中心點像素坐標;第二獲得模塊獲得所述nao機器人的頭部高度變化值與俯仰角的第一函數關系,第三獲得模塊根據所述第一函數關系,獲得所述目標物體到所述nao機器人的距離與所述俯仰角的第二函數關系,第一獲取模塊可以獲取所述圖像的第二中心像素點坐標,然后通過第四獲得模塊獲得所述目標物體相對于所述nao機器人的水平偏角和垂直偏角,第五獲得模塊,根據所述垂直偏角和所述第二函數關系,獲得所述目標物體到所述nao機器人的距離;最后第二獲取模塊,可以根據所述距離和所述水平偏角,獲取所述nao機器人行走路線,以使所述nao機器人基于所述行走路線抓取所述目標物體。由于可以實時獲取目標物體到所述nao機器人的距離與所述俯仰角的第二函數關系,可以實現準確定位和提高實時性的技術效果,解決了現有技術中抓取物體的系統存在定位精度不高、實時性差的技術問題。
盡管已描述了本發明的優選實施例,但本領域內的技術人員一旦得知了基本創造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權利要求意欲解釋為包括優選實施例以及落入本發明范圍的所有變更和修改。
顯然,本領域的技術人員可以對本發明實施例進行各種改動和變型而不脫離本發明實施例的精神和范圍。這樣,倘若本發明實施例的這些修改和變型屬于本發明權利要求及其等同技術的范圍之內,則本發明也意圖包含這些改動和變型在內。