移動機器人定位方法及系統的制作方法
【專利摘要】本發明公開了一種移動機器人定位方法及系統。其中該方法包括如下步驟:獲取移動機器人所在場景內的場景圖像,并將場景圖像轉換為灰度圖像;從灰度圖像中獲取二維碼,并獲取二維碼的中心點坐標及二維碼的正方向;計算二維碼的中心點和灰度圖像的中心點構成的二維向量與二維碼的正方向之間的夾角;計算二維碼的中心點與灰度圖像的中心點之間的第一距離;根據第一距離、夾角及二維碼的中心點坐標計算得到灰度圖像的中心點的坐標作為所述移動機器人的位置坐標。其計算速度快,且每次圖像獲取后都是進行一次獨立的定位,受其他因素影響小,定位精度高,便于結合其他導航裝置實現移動機器人在面上的移動及精確定位。
【專利說明】
移動機器人定位方法及系統
【技術領域】
[0001]本發明涉及機器人領域,尤其涉及一種移動機器人定位方法及系統。
【背景技術】
[0002]移動機器人在倉儲物流、移動操作等領域有著廣泛的應用需求。在機器人移動過程中,定位是機器人移動平臺的重要的功能。傳統的移動機器人在方法上大都采用貼制磁條,嵌入磁釘的方法。這些方法能夠實現規定軌跡的平臺移動任務,但是運動方式較為單一。現代移動機器人的使用過程中,要求移動機器人在有限空間中從線軌跡改變為面內任意軌跡的運動。
[0003]面內任意軌跡的移動機器人,在定位方式上有多種方法。比如,加入編碼器的方法可以在微小的距離下進行定位操作,但機器人運動過程中的打滑現象會造成這種方法的誤差累積,從而造成定位不準確;加裝射頻識別設備的定位方法,是構造一系列的射頻標簽,并構造對應的地理坐標尋址表進行標簽對應,但是多個射頻標簽如果在空間分布較為密集,則會在定位中產生干擾,造成定位不準確;一維碼或條形碼定位方式,需要求在二維碼橫向偏離不大的情況下對其進行解碼,這不符合機器人運動任意性的特點。
[0004]綜上所述,尋求一種準確、快速地對移動機器人進行定位的方法是一個亟待解決的問題。
【發明內容】
[0005]基于此,有必要針對傳統技術中移動機器人在面內移動位置定位困難的問題,提供一種能夠快速、準確地對移動機器人在面內的運動進行定位的移動機器人定位方法及系統。
[0006]為實現本發明目的提供的一種移動機器人定位方法,包括以下步驟:
[0007]獲取移動機器人所在場景內的場景圖像,并將所述場景圖像轉換為灰度圖像;
[0008]從所述灰度圖像中獲取二維碼,并獲取所述二維碼的中心點坐標及所述二維碼的正方向;
[0009]計算所述二維碼的中心點和所述灰度圖像的中心點構成的二維向量與所述二維碼的正方向之間的夾角;
[0010]計算所述二維碼的中心點與所述灰度圖像的中心點之間的第一距離;
[0011]根據所述第一距離、所述夾角及所述二維碼的中心點坐標計算得到所述灰度圖像的中心點的坐標作為所述移動機器人的位置坐標。
[0012]作為一種移動機器人定位方法的可實施方式,還包括以下步驟:
[0013]計算所述灰度圖像的正方向和所述二維碼的正方向之間的夾角作為所述移動機器人的偏航角度。
[0014]作為一種移動機器人定位方法的可實施方式,所述從所述灰度圖像中獲取二維碼,包括以下步驟:
[0015]對所述灰度圖像進行邊緣檢測;
[0016]構造矩形結構的形態學單元結構對所述灰度圖像的邊緣結構進行膨脹操作,得到膨脹結果;
[0017]根據所述膨脹結果對所述灰度圖像的邊緣進行輪廓查找,得到所述灰度圖像的原始輪廓;
[0018]利用預設數量頂點的包絡線對所述原始輪廓進行擬合,得到擬合后的多個輪廓區域;
[0019]對所得到的輪廓區域進行基于邊數及區域大小過濾,得到二維碼輪廓區域;
[0020]對所述二維碼輪廓區域進行子圖切割,并對得到的子圖進行全局閾值的二值化操作,得到二維碼。
[0021]作為一種移動機器人定位方法的可實施方式,獲取所述二維碼的正方向包括以下步驟:
[0022]設置歐拉參數,確定所述二維碼的3個定位塊,并確定主定位塊;
[0023]根據所述主定位塊及第一象限假設確定輔助定位塊;
[0024]確定所述主定位塊和所述輔助定位塊之間的區域質心連線,并確定所述二維碼的中心點在所述區域質心連線上的投影點;
[0025]確定所述二維碼的中心點到所述投影點的方向為所述二維碼的正方向。
[0026]作為一種移動機器人定位方法的可實施方式,根據所述第一距離、所述夾角及所述二維碼的中心點坐標計算得到所述灰度圖像的中心點的坐標,包括以下步驟:
[0027]對像素點進行標定,獲取單個像素點對應的實際物理距離;
[0028]根據單個像素點對應的實際物理距離確定所述第一距離對應的第一實際距離;
[0029]根據所述中心點坐標、所述第一實際距離及所述夾角確定所述灰度圖像中心點的坐標。
[0030]作為一種移動機器人定位方法的可實施方式,通過對所述二維碼進行解析獲取所述二維碼的坐標數據作為所述二維碼的中心點坐標。
[0031]作為一種移動機器人定位方法的可實施方式,還包括在預設移動機器人移動場景中設置二維碼標簽的步驟。
[0032]基于相同構思的一種移動機器人定位系統,包括安裝有工業相機的移動機器人、設置在預設移動機器人移動場景中的多個二維碼標簽及上位機,其中:
[0033]所述工業相機與上位機通訊連接,能夠獲取包含所述二維碼標簽的場景圖像,并將所述場景圖像傳輸給所述上位機;
[0034]所述上位機能夠通過分析所述場景圖像確定所述移動機器人的位置。
[0035]作為一種移動機器人定位系統的可實施方式,還包括與所述工業相機配套設置的LED光源,所述LED光源也安裝在所述移動機器人上。
[0036]作為一種移動機器人定位系統的可實施方式,所述工業相機為USB接口攝像頭、1394接口攝像頭、網口通訊攝像頭或者網絡攝像頭。
[0037]本發明的有益效果包括:
[0038]本發明提供的一種移動機器人定位方法及系統,其中方法通過掃描事先設置在移動場景中的二維碼標簽,并根據二維碼的中心點坐標及二維碼圖像在場景圖像中的傾斜情況確定移動機器人的位置。其計算速度快,且每次圖像獲取后都是進行一次獨立的定位,受其他因素影響小,定位精度高,便于結合其他導航裝置實現移動機器人在面上的移動及精確定位。
【專利附圖】
【附圖說明】
[0039]圖1為本發明一種移動機器人定位方法的一具體實施例的流程圖;
[0040]圖2為一二維碼正方向示意圖;
[0041]圖3為一具體實施例中的二維碼正方向確定的過程圖;
[0042]圖4為一具體實施例的灰度圖像的中心點坐標計算解析圖;
[0043]圖5為一具體實施例的二維碼標簽陣列排布示意圖;
[0044]圖6為本發明一種移動機器人定位系統的一具體實施例的構成不意圖;
[0045]圖7為本發明一種移動機器人定位系統中二維碼標簽設置在房頂的示意圖。
【具體實施方式】
[0046]為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖對本發明的移動機器人定位方法及系統的【具體實施方式】進行說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
[0047]本發明一實施例的移動機器人定位方法,如圖1所示,包括以下步驟:
[0048]S100,獲取移動機器人所在場景內的場景圖像,并將所述場景圖像轉換為灰度圖像。
[0049]本步驟中,可使用移動機器人上安裝的工業相機獲取所在的移動場景中3通道RGB場景圖像,并將獲取的RGB彩色場景圖像轉換為單通道灰度圖像。以便下一步繼續對圖像中的圖案進行提取、分析等操作。
[0050]S200,從灰度圖像中獲取二維碼,并獲取二維碼的中心點坐標及二維碼的正方向。其中,確定如圖2中所示的箭頭方向(垂直向上)為二維碼的正方向。通過對二維碼進行解析獲取二維碼中存儲的坐標數據作為二維碼的中心點坐標。在量綱統一的情況下,通過解碼獲得二維碼的中心點坐標,并用于后續的圖像中心點坐標的求取,避免了查表,且精度更高。
[0051 ] S300,計算所獲取的二維碼的中心點A和灰度圖像的中心點B構成的二維向量(A, B)與所述二維碼的正方向之間的夾角。且向量(A,B)與二維碼的正方向的夾角要采用順時針法則確定。
[0052]S400,計算二維碼的中心點與灰度圖像的中心點之間的第一距離L。
[0053]S500,根據第一距離L、二維向量(A,B)與二維碼的正方向之間的夾角及二維碼的中心點坐標計算得到所述灰度圖像的中心點的坐標作為所述移動機器人的位置坐標。
[0054]此處需要說明的是,二維碼中所存儲的坐標數據是與實際場景相對應的坐標,通過其最終確定灰度圖像中的中心點坐標。灰度圖像的中心點坐標也就是移動機器人的實際物理位置。
[0055]本發明實施例的移動機器人定位方法,通過掃描事先設置在移動場景中的二維碼標簽,分析獲得的二維碼確定移動機器人的位置。計算速度快,且每次圖像獲取后都是進行一次獨立的定位,受其他因素影響小,定位精度高。
[0056]較佳地,在其中一個移動機器人定位方法的實施例中,還包括以下步驟:
[0057]S600,計算灰度圖像的正方向和二維碼的正方向之間的夾角作為所述移動機器人的偏航角度。從而確定了移動機器人的具體位置,并進一步確定了移動機器人的偏航角度,更便于通過導航裝置對機器人的移動軌跡進行調整。
[0058]較佳地,可通過在二維碼的中心點引出垂直方向作為圖像的正方向,進而可計算出二維碼的垂直方向與其自身的正方向的夾角作為移動機器人的偏航角。
[0059]具體的,步驟S200中,從所述灰度圖像中獲取二維碼,包括以下步驟:
[0060]S211,對灰度圖像進行邊緣檢測。具體可采用使用Canny算子方法對灰度圖像進行邊緣檢測,確定灰度圖像中包含的圖形的邊緣。使用Canny算子方法進行邊緣檢測提取較為準確。
[0061]S212,構造矩形結構的形態學單元結構對灰度圖像的邊緣結構進行膨脹操作,得到膨脹結果。此處構造矩形結構可以更好地對正方形的二維碼圖形的邊緣結構進行膨脹操作。更有利于后續二維碼的輪廓查找,使查找更準確。
[0062]S213,根據膨脹結果對灰度圖像的邊緣進行輪廓查找,得到灰度圖像的原始輪廓。
[0063]S214,利用預設數量頂點的包絡線對所述原始輪廓進行擬合,得到擬合后的多個輪廓區域。一般使用頂點較少的包絡線對原始輪廓進行擬合。
[0064]S215,對所得到的輪廓區域進行基于邊數及區域大小過濾,得到二維碼輪廓區域。這里以二維碼輪廓擬合多邊形的邊不能少于4為前提對擬合的多邊形(輪廓區域)進行邊數篩選,并進一步利用輪廓區域比例限定條件對過大或者過小的輪廓區域進行過濾,得到二維碼所在的二維碼輪廓區域。此處需要說明的是,輪廓區域的大小與工業相機與二維碼標簽之間的距離有一定關系,因此,輪廓區域大小的限定條件因不同的具體環境而不同。
[0065]S216,對二維碼輪廓區域進行子圖切割,并對得到的子圖進行全局閾值的二值化操作,得到二維碼。
[0066]具體地,步驟S200中,獲取所述二維碼的正方向包括以下步驟:
[0067]S221,設置歐拉參數,確定所述二維碼的3個定位塊,并確定主定位塊。其中,確定了二維碼的三個定位塊之后,依據距離最大關系,確定二維碼的兩個對角定位塊,并進一步利用區域排除法確定另外一個定位塊為二維碼的主定位塊。
[0068]S222,根據所述主定位塊及第一象限假設確定輔助定位塊。其是令主定位塊順時針方向的第一個定位塊為輔助定位塊。
[0069]S223,確定所述主定位塊和所述輔助定位塊之間的區域質心連線,并確定所述二維碼的中心點在所述區域質心連線上的投影點。
[0070]S224,確定所述二維碼的中心點到所述投影點的方向為所述二維碼的正方向。
[0071 ] 本發明實施例中基于歐拉數的二維碼正方向確定方法準確性高。
[0072]如圖3所示,為一個二維碼的正方向的確定過程的示意圖。其中01為獲取的場景圖像中的一個彩色二維碼;02為經過轉換的灰度圖像;03的二維碼圖標中確定了三個定位塊;04所標注的二維碼確定了兩個對角的定位塊;05中確定了兩個在圖中位置較為靠上的定位塊分別為主定位塊和輔助定位塊,其中左側的在兩個定位塊中間的為主定位塊,正上方的輔助定位塊;06中箭頭的方向為二維碼的正方向。
[0073]此處需要說明的是,工業相機在獲取移動機器人所在場景內的場景圖像時,當軌跡有偏斜時,在所獲取的場景圖像中包含的二維碼可能具有一定的傾斜角度。一般可認為圖像的上方為圖像的正方向,也即圖3中每個二維碼圖像的垂直向上的方向為所在圖像的正方向。
[0074]步驟S500,根據第一距離L、二維向量(A,B)與二維碼的正方向之間的夾角及二維碼的中心點坐標計算得到所述灰度圖像的中心點的坐標,包括以下步驟:
[0075]S510,對像素點進行標定,獲取單個像素點對應的實際物理距離。包括單個像素點的水平方向與垂直方向所代表的實際物理距離。
[0076]S520,根據單個像素點對應的實際物理距離確定所述第一距離對應的第一實際距離。此處需要說明的是,確定的二維碼的中心點與灰度圖像的中心點之間的第一距離L是以像素點為單位的,并且對所述第一距離進行取整處理,從而確定兩個點之間的像素差。而根據工業相機和二維碼標簽之間的距離,獲取的二維碼的圖標的大小可以確定當前獲取的場景圖像中的單個像素點所代表的實際物理距離,并能夠依此進一步確定第一距離所表征的實際距離。
[0077]S530,根據中心點坐標、第一實際距離及二維碼的中心點和灰度圖像的中心點構成的二維向量與所述二維碼的正方向之間的夾角,確定所述灰度圖像中心點的坐標。從而也就確定了移動機器人的位置。整個算法簡單易行,需要采集的參數少,計算效率高,從而提高定位的速度。同時,通過角度偏差及像素點距離進行位置確定定位精度高。
[0078]具體的,如圖4所示,圖中坐標系的原點為二維碼的中心點,圖中的實心圓為灰度圖像的中心點,圖中斜向下的箭頭方向為二維碼的正方向,二維碼的中心點和灰度圖像的中心點構成的二維向量與所述二維碼的正方向之間的夾角為α。若二維碼的中心點坐標為(X,y),灰度圖像的中心點坐標為(X,Y),像素點長度在橫縱坐標軸的方向上與實際物理距離的比例均為u,則可以得到:X = x+LXsinO -α ) Xu,Y = y+LXcosO -α ) Xu,從而確定了灰度圖像的中心點坐標。
[0079]較佳地,可將工業相機安裝在移動機器人車體的前端,并將獲取的場景圖像的正方向與移動機器人的前進方向相配套,如設定獲取的場景圖像的正方向與移動機器人前進的方向相同。
[0080]當然,要實施本發明的移動機器人定位方法,需要提前在移動機器人的移動場景中設置二維碼標簽。對于二維碼標簽的設置可布設為如圖5所示的矩陣形式。且可以布設在墻體或者房頂等位置,當然工業相機在移動機器人上的安裝位置要和二維碼標簽的布設位置相互匹配。要保證工業相機獲取的每幀圖像中至少有一個二維碼標簽。所述二維碼標簽就是單個的二維碼圖標。
[0081]同時,本發明還提供一種移動機器人定位系統,采用上述的移動機器人定位方法對移動機器人進行定位,從而能夠對機器人在面內的移動進行導航。
[0082]在其中一個實施例的移動機器人定位系統中,如圖6所示,包括安裝有工業相機100的移動機器人200、設置在預設移動機器人移動場景中的多個二維碼標簽(二維碼標簽組300)及上位機400。其中:工業相機100與上位機400通訊連接,能夠獲取包含所述二維碼標簽的場景圖像,并將所述場景圖像傳輸給上位機40。上位機400能夠采用前述的移動機器人定位方法,通過分析場景圖像確定移動機器人200的位置。
[0083]本系統能夠對在面內移動的移動機器人進行定位,確定移動機器人的精確位置,從而可以更準確的機器人進行導航。且本系統的硬件構成簡單,只需要將工業相機安裝在移動機器人的合適位置即可。所述上位機可采用普通的具有計算功能的設備,如一般的計算機,或者能夠對圖像進行處理的單片機等。而工業相機的位置可根據實際運行場景的不同設置在移動機器人的頂部或者下部,結合其他的導航方式可實現移動機器人的靈活運動方式。
[0084]對于二維碼標簽的設置,如前所述,可以布設在墻體或者房頂等位置,其中,在房頂出布設二維碼標簽,并使用工業相機獲取移動機器人所在場景內的場景圖像如圖7所示(圖中只示出了工業相機100和房頂圖像)。
[0085]較佳地,在其他實施例中,還可以設置與工業相機100相配套的LED光源。LED光源也安裝在所述移動機器人上,一般與工業相機100的位置較近,以便工業相機能夠獲取更加清晰的場景圖像。
[0086]其中,安裝在移動機器人200上的工業相機100可以為USB接口攝像頭、1394接口攝像頭、網口通訊攝像頭或者網絡攝像頭。可根據上位機的接口及成本需求選擇合適的工業相機100,只要能夠完成獲取移動機器人所在場景內的場景圖像,并能提取出二維碼標簽即可。
[0087]以上所述實施例僅表達了本發明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對本發明專利范圍的限制。應當指出的是,對于本領域的普通技術人員來說,在不脫離本發明構思的前提下,還可以做出若干變形和改進,這些都屬于本發明的保護范圍。因此,本發明專利的保護范圍應以所附權利要求為準。
【權利要求】
1.一種移動機器人定位方法,其特征在于,包括以下步驟: 獲取移動機器人所在場景內的場景圖像,并將所述場景圖像轉換為灰度圖像; 從所述灰度圖像中獲取二維碼,并獲取所述二維碼的中心點坐標及所述二維碼的正方向; 計算所述二維碼的中心點和所述灰度圖像的中心點構成的二維向量與所述二維碼的正方向之間的夾角; 計算所述二維碼的中心點與所述灰度圖像的中心點之間的第一距離; 根據所述第一距離、所述夾角及所述二維碼的中心點坐標計算得到所述灰度圖像的中心點的坐標作為所述移動機器人的位置坐標。
2.根據權利要求1所述的移動機器人定位方法,其特征在于,還包括以下步驟: 計算所述灰度圖像的正方向和所述二維碼的正方向之間的夾角作為所述移動機器人的偏航角度。
3.根據權利要求1所述的移動機器人定位方法,其特征在于,所述從所述灰度圖像中獲取二維碼,包括以下步驟: 對所述灰度圖像進行邊緣檢測; 構造矩形結構的形態學單元結構對所述灰度圖像的邊緣結構進行膨脹操作,得到膨脹結果; 根據所述膨脹結果對所述灰度圖像的邊緣進行輪廓查找,得到所述灰度圖像的原始輪廓; 利用預設數量頂點的包絡線對所述原始輪廓進行擬合,得到擬合后的多個輪廓區域; 對所得到的輪廓區域進行基于邊數及區域大小過濾,得到二維碼輪廓區域; 對所述二維碼輪廓區域進行子圖切割,并對得到的子圖進行全局閾值的二值化操作,得到二維碼。
4.根據權利要求1所述的移動機器人定位方法,其特征在于,獲取所述二維碼的正方向包括以下步驟: 設置歐拉參數,確定所述二維碼的3個定位塊,并確定主定位塊; 根據所述主定位塊及第一象限假設確定輔助定位塊; 確定所述主定位塊和所述輔助定位塊之間的區域質心連線,并確定所述二維碼的中心點在所述區域質心連線上的投影點; 確定所述二維碼的中心點到所述投影點的方向為所述二維碼的正方向。
5.根據權利要求1所述的移動機器人定位方法,其特征在于,根據所述第一距離、所述夾角及所述二維碼的中心點坐標計算得到所述灰度圖像的中心點的坐標,包括以下步驟: 對像素點進行標定,獲取單個像素點對應的實際物理距離; 根據單個像素點對應的實際物理距離確定所述第一距離對應的第一實際距離; 根據所述中心點坐標、所述第一實際距離及所述夾角確定所述灰度圖像中心點的坐標。
6.根據權利要求1至5任一項所述的移動機器人定位方法,其特征在于,通過對所述二維碼進行解析獲取所述二維碼的坐標數據作為所述二維碼的中心點坐標。
7.根據權利要求1至5任一項所述的移動機器人定位方法,其特征在于,還包括在預設移動機器人移動場景中設置二維碼標簽的步驟。
8.一種移動機器人定位系統,其特征在于,包括安裝有工業相機的移動機器人、設置在預設移動機器人移動場景中的多個二維碼標簽及上位機,其中: 所述工業相機與上位機通訊連接,能夠獲取包含所述二維碼標簽的場景圖像,并將所述場景圖像傳輸給所述上位機; 所述上位機能夠通過分析所述場景圖像確定所述移動機器人的位置。
9.根據權利要求8所述的移動機器人定位系統,其特征在于,還包括與所述工業相機配套設置的LED光源,所述LED光源也安裝在所述移動機器人上。
10.根據權利要求8或9所述的移動機器人定位系統,其特征在于,所述工業相機為USB接口攝像頭、1394接口攝像頭、網口通訊攝像頭或者網絡攝像頭。
【文檔編號】G01C11/04GK104197899SQ201410493517
【公開日】2014年12月10日 申請日期:2014年9月24日 優先權日:2014年9月24日
【發明者】張承寧, 夏慶華 申請人:中國科學院寧波材料技術與工程研究所