TW202411139A - 貨箱存放方法和機器人 - Google Patents
貨箱存放方法和機器人 Download PDFInfo
- Publication number
- TW202411139A TW202411139A TW112105051A TW112105051A TW202411139A TW 202411139 A TW202411139 A TW 202411139A TW 112105051 A TW112105051 A TW 112105051A TW 112105051 A TW112105051 A TW 112105051A TW 202411139 A TW202411139 A TW 202411139A
- Authority
- TW
- Taiwan
- Prior art keywords
- target
- container
- image
- robot
- marker
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 103
- 239000003550 marker Substances 0.000 claims abstract description 250
- 238000001514 detection method Methods 0.000 claims description 118
- 238000003708 edge detection Methods 0.000 claims description 79
- 230000000007 visual effect Effects 0.000 claims description 56
- 230000007246 mechanism Effects 0.000 claims description 50
- 238000004422 calculation algorithm Methods 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 14
- 238000001914 filtration Methods 0.000 claims description 13
- 238000012795 verification Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 16
- 238000005192 partition Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 9
- 230000008859 change Effects 0.000 description 6
- 239000000463 material Substances 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000002146 bilateral effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000003032 molecular docking Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 1
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 1
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 1
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 1
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 1
- 238000011497 Univariate linear regression Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G1/00—Storing articles, individually or in orderly arrangement, in warehouses or magazines
- B65G1/02—Storage devices
- B65G1/04—Storage devices mechanical
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G1/00—Storing articles, individually or in orderly arrangement, in warehouses or magazines
- B65G1/02—Storage devices
- B65G1/04—Storage devices mechanical
- B65G1/137—Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Warehouses Or Storage Devices (AREA)
Abstract
本發明公開了一種貨箱存放方法和機器人,所述貨箱存放方法包括:根據目標貨箱的預設存放位置控制機器人移動到機器人預設位置;檢測所述目標貨箱所屬的目標標誌物,所述目標標誌物為所述目標貨箱所屬的目標貨架、所述目標貨箱相鄰的貨箱和與所述目標貨架相對的貨架上的貨箱中至少一者的結構特徵;依據所述目標標誌物的位置確定所述目標貨箱在所述目標貨架上的目標存放位置;根據所述目標存放位置控制所述機器人從所述機器人預設位置移動以將所述目標貨箱存放到所述目標貨架上。本發明的貨箱存放方法無需預先在貨箱或貨架上貼裝標識,節省了成本。
Description
本發明涉及倉儲技術領域,具體地,涉及一種貨箱存放方法和機器人。
移動機器人(AGV)是按規劃的路徑自動行駛至指定地點的自動導引搬運車。相關技術中,移動機器人利用其諸如相機的資訊採集裝置識別貨物或貨架上的標識(例如二維碼)實現貨物定位以及對接。
然而,本發明的發明人認識到,為實現上述對接方式,移動機器人正式部署前,需提前規劃好貨位的位置,並將標識準確貼裝到貨箱和貨架上。而且貨位需要與標識一一對應,貨位較多時,需要貼裝較多的標識,實施繁瑣,實施成本和安全保障成本高。另外,貨架會定期維護和升級改造,則會重新貼裝標識,造成成本進一步增加。
為此,本發明的實施例提出一種貨箱存放方法,該方法無需預先在貨箱或貨架上貼裝標識,節省了成本。
本發明的實施例還提出一種機器人。
本發明實施例的貨箱存放方法包括:
根據目標貨箱的預設存放位置控制機器人移動到機器人預設位置;
檢測所述目標貨箱所屬的目標標誌物,所述目標標誌物為所述目標貨箱所屬的目標貨架、所述目標貨箱相鄰的貨箱和與所述目標貨架相對的貨架上的貨箱中至少一者的結構特徵;
依據所述目標標誌物的位置確定所述目標貨箱在所述目標貨架上的目標存放位置;
根據所述目標存放位置控制所述機器人從所述機器人預設位置移動以將所述目標貨箱存放到所述目標貨架上。
本發明實施例的貨箱存放方法利用倉儲作業場景中已有的貨架本身或者已經放置在貨架上的其他貨箱作為目標標誌物,確定目標貨箱的目標存放位置(精確存放位置),由於目標標誌物不再採用二維碼等需要預先貼裝的標識,因此本發明實施例的貨箱存放方法不需要預先貼裝標識,不僅節省了勞動時間,而且降低了實施成本。
在一些實施例中,所述檢測所述目標貨箱所屬的目標標誌物,包括:
檢測所述目標貨箱所屬的目標貨架上的編碼圖;
在未檢測到所述編碼圖的情況下,檢測所述目標貨箱所屬的目標標誌物。
在一些實施例中,所述貨箱存放方法還包括:
在檢測到所述編碼圖的情況下,依據所述編碼圖的位置確定所述目標貨箱在所述目標貨架上的所述目標存放位置。
在一些實施例中,所述機器人包括機器人本體和設在所述機器人本體上的取放機構,其中根據目標貨箱的預設存放位置控制所述機器人移動到機器人預設位置,包括:控制所述機器人本體移動到第一水準位置,控制所述取放機構移動到第一高度位置。
在一些實施例中,在所述機器人本體移動到第一水準位置之後或朝向所述第一水準位置移動過程中,控制所述取放機構移動到第一高度位置;或者,在所述機器人本體移動到第一水準位置之前,控制所述取放機構移動到低於所述第一高度位置的第二高度位置,並在所述機器人本體移動到第一水準位置之後,控制所述取放機構從所述第二高度位置移動到所述第一高度位置。
在一些實施例中,在機器人移動到所述機器人預設位置之後或朝向所述機器人預設位置移動的過程中,依據所述目標標誌物的位置確定所述目標存放位置。
在一些實施例中,檢測所述目標標誌物時,若所述目標標誌物與預設存箱特徵不符或檢測不到所述目標標誌物,則取消放箱的任務。
在一些實施例中,所述貨箱存放方法還包括:檢測所述目標存放位置上是否有其他貨箱,若有其他貨箱,將所述目標存放位置上具有其他貨箱的資訊傳輸至伺服器;控制所述機器人取消放箱任務;或者給所述目標貨箱重新分配存放位置;或者控制所述機器人取出所述其他貨箱並放置在其他位置。
在一些實施例中,所述貨箱存放方法還包括:在將所述目標貨箱放置到所述目標貨架之後,檢測所述目標貨箱的實際放置位置;將所述實際放置位置與所述目標存放位置對比並確定二者的相對位置誤差,若相對位置誤差不滿足預設誤差條件,則控制機器人將所述目標貨箱取出並重新放置所述目標貨箱。
在一些實施例中,所述貨箱存放方法還包括:在將所述目標貨箱放置到所述目標貨架之後,檢測所述目標貨架的空間佔用資訊,並將所述目標貨架的空間佔用資訊傳輸至伺服器。
在一些實施例中,向所述目標貨架上放置第一個目標貨箱時,所述目標標誌物為所述目標貨架的結構特徵。
本發明實施例的機器人包括:機器人本體;取放機構,所述取放機構設在所述機器人本體上;控制單元,所述控制單元用於根據目標貨箱的預設存放位置控制所述機器人移動到機器人預設位置;檢測單元,所述檢測單元設在所述取放機構上且用於檢測所述目標貨箱所屬的目標標誌物,所述目標標誌物為所述目標貨箱所屬的目標貨架、所述目標貨箱相鄰的貨箱和與所述目標貨架相對的貨架上的貨箱中至少一者的結構特徵,其中所述控制單元還用於依據所述目標標誌物的位置確定所述目標貨箱的目標存放位置並根據所述目標存放位置控制所述機器人移動以使所述取放機構將所述目標貨箱存放到所述目標貨架上。
根據本發明實施例的機器人可以利用倉儲作業場景中已有的貨架本身或者已經放置在貨架上的其他貨箱作為目標標誌物,確定目標貨箱的目標存放位置(精確存放位置),由於目標標誌物不再採用二維碼等需要預先貼裝的標識,因此本發明不需要預先貼裝標識,不僅節省了勞動時間,而且降低了實施成本。
在一些實施例中,所述檢測單元檢測所述目標貨箱所屬的目標貨架上的編碼圖,且在未檢測到所述編碼圖的情況下檢測所述目標貨箱所屬的目標標誌物。
在一些實施例中,在所述檢測單元檢測到所述編碼圖的情況下,所述控制單元依據所述編碼圖的位置確定所述目標貨箱在所述目標貨架上的所述目標存放位置。
在一些實施例中,所述控制單元用於依據目標貨箱的預設存放位置,控制所述機器人本體移動到第一水準位置,並控制所述取放機構移動到第一高度位置。
相關申請案之參考:
本申請要求於2022年02月11日提交中國專利局、申請號為202210130228.7、發明名稱為“貨箱存放方法和機器人”以及于2022年06月30日提交中國專利局、申請號為202210778425.X、發明名稱為“容器定位方法、裝置、容器存取設備及存儲介質”的中國專利申請的優先權,其全部內容通過引用結合在本申請中。
下面詳細描述本發明的實施例,所述實施例的示例在附圖中示出。下面通過參考附圖描述的實施例是示例性的,旨在用於解釋本發明,而不能理解為對本發明的限制。
下面參考附圖描述本發明實施例的貨箱存放方法。在倉儲作業場景中,機器人可運行在存儲區域上,該存儲區域上設置有貨架,機器人可從貨架的不同層/不同格內取放貨箱。
如圖1所示,本發明實施例的貨箱存放方法包括以下步驟:
S1、根據目標貨箱的預設存放位置控制機器人移動到機器人預設位置。具體地,調度系統下發目標貨箱的預設存放位置資訊,機器人100接收預設存放位置資訊並根據預設存放位置資訊攜帶目標貨箱導航行駛。當機器人100行駛至機器人預設位置處時,機器人100停止繼續行駛。可以理解的是,目標貨箱的預設存放位置是目標貨箱的粗略存放位置,並不是精確存放位置。機器人100首先基於目標貨箱的粗略存放位置到達機器人預設位置。
S2、檢測目標貨箱所屬的目標標誌物,目標標誌物為目標貨箱所屬的目標貨架200、目標貨箱相鄰的貨箱和與目標貨架200相對的貨架上的貨箱中至少一者的結構特徵。
換言之,在一些可選地實施例中,目標標誌物為目標貨架200的結構特徵,具體地,貨架包括橫樑230、立柱210和隔板220,隔板220用於放置貨箱,立柱210和橫樑230用於支撐隔板220,其中如圖2所示,立柱210沿上下方向延伸,多個立柱210位於貨架的外邊緣且沿貨架的周向間隔佈置,橫樑230沿左右方向延伸且與立柱210相連,多個橫樑230包括沿前後方向間隔佈置的多列,每一列包括多個沿上下方向間隔佈置的橫樑230,其中隔板220沿前後方向延伸且設在相鄰列橫樑230之間且與橫樑230和/或立柱210相連,多個隔板220和多個橫樑230分別沿上下方向間隔佈置以在多個立柱210圍成的空間內形成多個存儲空間,多個立柱210包括沿左右方向間隔佈置的至少三個立柱210,其中位於最左側立柱和最右側立柱之間的其餘立柱可將存儲空間分隔成多個沿左右方向間隔佈置的子空間240,每個子空間240內可存儲一個或多個貨箱。目標貨架200的結構特徵可以是立柱210某個具體位置的座標值,也可以是橫樑230的具體某個位置的座標值,還可以是隔板220的具體某個位置的座標值。對於立柱210上、橫樑230上、隔板220上的具體某個位置可以根據具體情況而定。
在另一些可選地實施例中,目標標誌物為目標貨箱相鄰的貨箱的結構特徵。需要說明的是,目標貨箱相鄰的貨箱是目標貨架200中已經存在的貨箱,且與目標貨箱可以在前後方向上相鄰,比如位於同一子空間240內可以放置至少兩個貨箱,後側貨箱和前側貨箱,後側貨箱放置後再放置前側貨箱,放置前側貨箱時,可以將後側貨箱作為目標標誌物;也可以在左右方向上相鄰,比如相鄰子空間240內分別放置一個貨箱,一個子空間240對應的貨箱放置完成後再放置另一個子空間240對應的貨箱,放置另一個子空間240對應的貨箱時,可以將上述一個子空間240對應的貨箱作為目標標誌物。具體地,相鄰的貨箱的結構特徵可以是該貨箱的具體某個位置的座標值,對於該具體某個位置,可以根據具體情況確定。也可以在同一子空間240內放置大於一個貨箱,如果某一個子空間240內已經存在一個貨箱,則目標貨箱可以以該子空間240內已經存在的貨箱作為目標標誌物,然後放置目標貨箱。
在再一些可選地實施例中,目標標誌物為目標貨箱相鄰的貨箱的結構特徵和目標貨架200的結構特徵。換言之,檢測時,既能檢測到目標貨箱相鄰的貨箱的結構特徵,也檢測到目標貨架200的結構特徵。
在又一些實施例中,目標標誌物為與目標貨架200相對的貨架上的貨箱的結構特徵。具體地,兩排貨架相對且間隔佈置,兩排貨架之間形成可供通行的巷道,其中一排貨架為目標貨架200,若目標貨架200上沒有貨箱,而另一排貨架上有貨箱,則可以檢測該另一排貨架上的貨箱的結構特徵。
在其他實施例中,目標標誌物還可以是目標貨箱相鄰的貨箱的結構特徵和與目標貨架200相對的貨架上的貨箱的結構特徵,也可以是目標貨架200的結構特徵和與該目標貨架200相對的貨架上的貨箱的結構特徵。
在一些實施例中,當目標標誌物為貨箱的情況下,檢測所述目標貨箱所屬的目標標誌物,包括:
獲取視覺感測器對所述目標標誌物進行圖像採集得到的貨箱圖像;
對所述貨箱圖像進行邊緣檢測,確定所述目標標誌物的多個邊緣線交點,並對所述貨箱圖像進行輪廓檢測,確定所述目標標誌物的多個輪廓頂點;
對所述多個邊緣線交點和所述多個輪廓頂點進行校驗,確定所述目標標誌物的目標頂點;
根據所述目標頂點,確定所述目標標誌物的位置。
在一些實施例中,所述對所述貨箱圖像進行邊緣檢測,確定所述目標標誌物的多個邊緣線交點,包括:
對所述貨箱圖像進行邊緣檢測,得到目標邊緣檢測圖像,其中,所述目標邊緣檢測圖像包括所述目標標誌物在所述貨箱圖像中的多條邊緣線;
識別所述目標邊緣檢測圖像中所述多條邊緣線的交點作為所述目標標誌物的多個邊緣線交點。
在一些實施例中,所述對所述貨箱圖像進行邊緣檢測,得到目標邊緣檢測圖像,包括:
對所述貨箱圖像進行邊緣檢測,得到初始邊緣檢測圖像;
對所述初始邊緣檢測圖像中的各條邊緣線分別進行擬合,得到目標邊緣檢測圖像。
在一些實施例中,所述對所述貨箱圖像進行邊緣檢測,得到初始邊緣檢測圖像,包括:
對所述貨箱圖像進行梯度計算,得到初始邊緣檢測圖像。
在一些實施例中,所述對所述貨箱圖像進行輪廓檢測,確定所述目標標誌物的多個輪廓頂點,包括:
對所述貨箱圖像進行輪廓檢測,得到目標輪廓檢測圖像,其中,所述目標輪廓檢測圖像包括所述目標標誌物在所述貨箱圖像中的輪廓圖形;
識別所述目標輪廓檢測圖像中所述輪廓圖形的頂點作為所述目標標誌物的多個輪廓頂點。
在一些實施例中,所述對所述貨箱圖像進行輪廓檢測,得到目標輪廓檢測圖像,包括:
對所述貨箱圖像進行輪廓檢測,得到初始輪廓檢測圖像;
對所述初始輪廓檢測圖像中的輪廓圖形進行擬合,得到目標輪廓檢測圖像。
在一些實施例中,所述對所述貨箱圖像進行輪廓檢測,得到初始輪廓檢測圖像,包括:
對所述貨箱圖像進行二值化處理,得到初始輪廓檢測圖像。
在一些實施例中,所述對所述多個邊緣線交點和所述多個輪廓頂點進行校驗,確定所述目標標誌物的目標頂點,包括:
確定位於同一位置處的第一邊緣線交點和第一輪廓頂點;
獲取所述第一邊緣線交點的預設範圍內各第一圖元點的圖元資訊以及所述第一輪廓頂點的所述預設範圍內各第二圖元點的圖元資訊;
根據所述各第一圖元點的圖元資訊和所述各第二圖元點的圖元資訊,確定所述目標標誌物的目標頂點。
在一些實施例中,所述確定位於同一位置處的第一邊緣線交點和第一輪廓頂點,包括:
識別所述貨箱圖像中的預設標識,其中,所述預設標識為預先在所述目標標誌物的各頂點處設置;
計算所述多個邊緣線交點與所述預設標識的第一距離,以及所述多個輪廓頂點與所述預設標識的第二距離;
根據所述第一距離和所述第二距離,確定位於同一位置處的第一邊緣線交點和第一輪廓頂點。
在一些實施例中,所述根據所述各第一圖元點的圖元資訊和所述各第二圖元點的圖元資訊,確定所述目標標誌物的目標頂點,包括:
根據所述各第一圖元點的圖元資訊,確定所述第一邊緣線交點的所述預設範圍內的第一圖元灰度分佈,並根據所述各第二圖元點的圖元資訊,確定所述第一輪廓頂點的所述預設範圍內的第二圖元灰度分佈;
從所述第一圖元灰度分佈和所述第二圖元灰度分佈中,確定符合預設分佈規則的目標圖元灰度分佈;
根據所述目標圖元灰度分佈,從所述第一邊緣線交點和所述第一輪廓頂點中確定所述目標標誌物的目標頂點。
在一些實施例中,所述目標標誌物的輪廓形狀為四邊形;
所述根據所述目標頂點,確定所述目標標誌物的位置,包括:
從所述目標標誌物的四個目標頂點中獲取任三個目標頂點的頂點資訊;
根據所述任三個目標頂點的頂點資訊,採用預設的透視投影演算法,計算所述目標標誌物相對於所述視覺感測器的位元姿資訊。
在一些實施例中,在所述根據所述任三個目標頂點的頂點資訊,採用預設的透視投影演算法,計算所述目標標誌物相對於所述視覺感測器的位元姿資訊之後,還包括:
根據所述位元姿資訊,將所述四個目標頂點中除所述任三個目標頂點以外的剩餘目標頂點投影至所述貨箱圖像,得到所述剩餘目標頂點的投影座標;
獲取所述貨箱圖像中所述剩餘目標頂點的頂點座標;
根據所述投影座標和所述頂點座標,計算誤差值;
根據所述誤差值,更新所述位元姿資訊,並返回執行所述根據所述位元姿資訊,將所述四個目標頂點中除所述任三個目標頂點以外的剩餘目標頂點投影至所述貨箱圖像,得到所述剩餘目標頂點的投影座標的步驟;
在所述誤差值小於或等於預設閾值情況下,確定更新的所述位元姿資訊為所述目標標誌物相對於所述視覺感測器的目標位元姿資訊。
在一些實施例中,在所述對所述貨箱圖像進行邊緣檢測,獲得所述目標標誌物的多個邊緣線交點,並對所述貨箱圖像進行輪廓檢測,獲得所述目標標誌物的多個輪廓頂點之前,還包括:
對所述貨箱圖像進行濾波處理,得到去除雜訊的所述貨箱圖像。
在一些實施例中,所述目標標誌物為貨箱。
S3、依據目標標誌物的位置確定目標貨箱在目標貨架200上的目標存放位置。可以理解的是,目標存放位置是目標貨箱的精確存放位置,依據檢測到的目標標誌物的位置確定該精確存放位置。
在一些實施例中,目標貨架200、貨箱的各個具體位置的座標值依據預設設定的空間直角坐標系而定,其中對於目標貨架200的各個具體位置的座標值,在目標貨架200完成施工後會經預先存儲在調度系統的伺服器中,例如以左右方向、上下方向和前後方向形成的空間直角坐標系為例,左右方向作為X軸,上下方向作為Y軸,前後方向作為Z軸。
假設目標標誌物的座標值為(x,y,z),可通過以下公式計算目標存放位置的座標值(X,Y,Z),例如:
若目標標誌物為目標貨箱左側或右側相鄰的貨箱,對於目標標誌物的座標值X, X=x+目標貨箱和作為目標標誌物的貨箱在左右方向上的偏差值,該偏差值例如可以為目標貨箱的寬度/2+目標貨箱相鄰的貨箱的寬度/2+相鄰貨箱在左右方向上的間距。對於目標標誌物的座標值Y,若目標貨箱與作為目標標誌物的貨箱與同一橫樑230對應,即在上下方向上的高度一致,則Y=y;若目標貨箱與作為目標標誌物的貨箱對應不同橫樑230,即在上下方向上的高度不一致,則Y=y+目標貨箱和作為目標標誌物的貨箱在上下方向上的偏差值,該偏差值例如為目標貨箱的高度/2+目標貨箱相鄰的貨箱的高度/2+相鄰貨箱在上下方向上的間距。對於目標標誌物的座標值Z,若目標貨箱與作為目標標誌物的貨箱的在Z方向上位置一致,則Z=z;若目標貨箱與作為目標標誌物的貨箱的在Z方向上位置不一致,則Z=z+目標貨箱和作為目標標誌物的貨箱在前後方向上的偏差值。
若目標標誌物為目標貨架200的立柱210,對於目標標誌物的座標值X,X=x+目標貨箱和立柱210在左右方向上的偏差值,該偏差值例如為目標貨箱與立柱210之間的距離+目標貨箱的寬度/2。對於目標標誌物的座標值Y,若目標貨箱與立柱210的高度位置一致,則Y=y;若目標貨箱與立柱210的高度不一致,則Y=y+目標貨箱和立柱210在上下方向上的偏差值。對於目標標誌物的座標值Z,若目標貨箱與立柱210在前後方向上的位置一致,則Z=z;若目標貨箱與立柱210的在前後方向上的位置不一致,則Z=z+目標貨箱和立柱210在前後方向上的偏差值。
若目標標誌物為內側箱子,對於目標標誌物的座標值X,X可參照內側箱子的X,其中內側箱子X的獲取可參考上述目標標誌物為目標貨箱相鄰的貨箱或目標貨架200的立柱210的獲取方式。對於目標標誌物的座標值Y和Z可參考上述目標標誌物為立柱210或相鄰貨箱的獲取方法。
需要說明的是,若目標標誌物為目標貨箱相鄰的貨箱,目標標誌物的X方向的座標值x可以是箱子的中心位置的座標值,也可以是箱子的外邊沿的某個位置的座標值;若目標標誌物為立柱210,目標標誌物的X方向的座標值x可以是立柱210的中心位置的座標值,也可以是立柱210的外邊沿的某個位置的座標值。
在一些實施例中,本發明實施例中的貨箱存放方法中,目標標誌物可以不止一個,具體地,同一次任務中,可以檢測多個目標標誌物,基於多個目標標誌物的位置進行計算獲得目標貨箱的精確存放位置。
可以理解的是,基於多個目標標誌物的位置確定目標存放位置,可以提高目標貨箱的存放位置的精度。
進一步地,每個目標標誌物對貨箱存放位置的修正可以有不同的權重,可以選擇一個或多個目標標誌物的資訊進行計算獲得精確存放位置,比如多個目標標誌物分別記為:p1,p2,p3,..pn,n為目標標誌物的數量,多個目標標誌物的權重分別對應記為:k1,k2,k3,..kn,則精確存放位置的座標為P = (k1*p1+k2*p2+k3*p3+..kn*pn)/(k1+k2+k3+..kn)。
例如,機器人100的掃描監測範圍內有立柱210,並且在目標貨箱的預設存放位置相鄰的位置處存放有貨箱,立柱210的位置精度大於目標貨箱的預設存放位置相鄰的位置處的貨箱,進而可設置立柱210的結構特徵的權重大於目標貨箱相鄰的貨箱的結構特徵的權重。
其中多個目標標誌物,可以是目標標誌物為目標貨箱相鄰的貨箱的結構特徵和目標貨架200的結構特徵,也可以是目標標誌物均為目標貨架200的結構特徵,且為立柱210的結構特徵、橫樑230的結構特徵和隔板220的結構特徵中的至少兩個;還可以均為目標貨箱相鄰的貨箱的結構特徵,且相鄰的貨箱為至少兩個;也可以是與目標貨架相對的貨架上的貨箱的結構特徵和與目標貨箱相鄰的貨箱的結構特徵;也可以是目標貨架相對的貨架上的貨箱的結構特徵與目標貨架200的結構特徵。
可以理解的是,機器人100可以通過目標貨箱的預設存放位置將目標貨箱運送至目標貨箱的精確存放位置的附近,為將貨箱存放至精確存放位置,因此需要依靠目標標誌物,當機器人100移動至與目標貨箱的預設存放位置對應的機器人預設位置時,掃描檢測目標標誌物,並確定目標標誌物的位置,基於目標標誌物的位置確定目標貨箱的目標存放位置。
S4、根據目標存放位置控制機器人100從機器人預設位置移動以將目標貨箱存放到目標貨架200上。
可以理解的是,機器人100根據精確存放位置調整機器人100自身的位置以將目標貨箱放在目標貨架200上。其中,機器人100將目標貨箱放在目標貨架200上之後,目標貨箱存在實際放置位置,該實際放置位置與精確存放位置可能存在一定的偏差。
本發明實施例的貨箱存放方法利用倉儲作業場景中已有的貨架本身的或者已經放置在貨架上的其他貨箱作為目標標誌物,確定目標貨箱的目標存放位置(精確存放位置),由於目標標誌物不再採用二維碼等需要預先貼裝的標識,因此本發明實施例的貨箱存放方法不需要預先貼裝標識,不僅節省了勞動時間,而且降低了實施成本。
在一些實施例中,檢測目標貨箱所屬的目標標誌物的步驟包括:
檢測目標貨箱所屬的目標貨架200上的編碼圖;
在未檢測到編碼圖的情況下,檢測目標貨箱所屬的目標標誌物。
換言之,在檢測目標標誌物之前,先檢測目標貨架200上是否有編碼圖,若沒有檢測到編碼圖,則檢測目標標誌物,根據目標標誌物的位置確定目標貨箱的目標存放位置。需要說明的是,編碼圖可以為二維碼、條碼等,編碼圖可以是目標貨架200上已有的,也可以是預先貼設在目標貨架200上的。
在一些實施例中,本發明實施例的貨箱存放方法還包括:在檢測到編碼圖的情況下,依據編碼圖的位置確定目標貨箱在目標貨架200上的目標存放位置。
換言之,當目標貨架200的目標貨箱存儲位置附近設有編碼圖,則對編碼圖進行檢測,且對編碼圖進行解碼,得到編碼圖對應的位置,並通過該位置確定目標貨箱的目標存放位置。具體地,編碼圖可以設在目標貨架200的立柱210、橫樑230、隔板220中的至少一個上的具體某個位置。對於立柱210上、橫樑230上、隔板220上的具體某個位置可以根據具體情況而定。
例如,檢測到目標貨箱存放位置附近的立柱210上貼有編碼圖,依據編碼圖確定目標貨箱的目標存放位置,並將目標貨箱存放在目標存放位置上。機器人100在對下一個目標貨箱進行存放操作時未檢測到編碼圖,機器人100可以將前一個已完成放置的目標貨箱作為目標標誌物以確定該下一個目標貨箱的目標存放位置。
可以理解的是,在一些具體實施例中,目標貨架200的一部分位置可以設置編碼圖,目標貨架200的另一部分位置沒有設置編碼圖。例如目標貨架200的某一層或某幾層均設有編碼圖,而其餘層沒有編碼圖;或者目標貨架200的某一層中某一個或某幾個子空間設有編碼圖,而其餘子空間沒有編碼圖。具體地,在設有編碼圖的位置,檢測編碼圖,並依據編碼圖確定目標貨箱的目標存放位置;在沒有編碼圖的位置,檢測目標貨架200、目標貨箱相鄰的貨箱和與目標貨箱200相鄰的貨架上的貨箱中的至少一個以作為目標標誌物,並以目標標誌物的位置確定目標貨箱的目標存放位置。
在一些實施例中,機器人100包括機器人本體110和設在機器人本體110上的取放機構120,其中根據目標貨箱的預設存放位置控制機器人100移動到機器人預設位置,包括:控制機器人本體110移動到第一水準位置,控制取放機構120移動到第一高度位置。
由於機器人本體110上的取放機構120與機器人本體110在水準方向上是同步移動,因此當機器人本體110行駛到存儲區域平面上的第一水準位置之後,取放機構120在水準方向上也同步移動到第一水準位置,可以實現取放機構120移動到與預設存放位置資訊指示的水準位置對齊的第一水準位置處。
在本實施例中,取放機構120可將不同目標貨箱分別存放至不同高度位置的存儲空間內,取放機構12可根據預設存放位置資訊指示的高度位置,提升到相對存儲區域平面的第一高度位置,以使第一高度位置與預設存放位置資訊指示的高度位置對應,或者盡可能相同。由此,取放機構12可以到達對目標貨箱進行存放操作的位置附近。
在一些可選地實施例中,機器人100可以採用SLAM、二維碼、UWB等導航方式中的至少一種在存儲區域平面進行導航行駛。
在一些實施例中,在機器人本體110移動到第一水準位置之後或朝向第一水準位置移動過程中,控制取放機構120移動到第一高度位置。換言之,在機器人本體110在向第一水準位置的移動過程中,機器人100通過取放機構120將目標貨箱抬升至第一高度位置;在另一些可選地實施例中,機器人本體110在到達第一水準位置後,機器人100通過取放機構120將目標貨箱抬升至第一高度位置。
可以理解的是,機器人本體110在向第一水準位置的移動過程中就通過取放機構120對目標貨箱的抬升操作,進而機器人本體110行駛到第一水準位置後可以直接對目標標誌物進行掃描檢測,並根據目標標誌物的結構特徵確定目標貨箱的精確存放位置,因此提高了機器人100的工作效率。
但是,當存儲區域記憶體在地形限制,例如,在機器人100的行駛路線上有障礙物,機器人100的取放機構120無法將目標貨箱抬升至第一高度位置;或者,第一高度位置過高,機器人100將目標貨箱抬升至第一高度位置後,機器人100與目標貨箱的整體重心上移,可能影響機器人100在行駛過程中的穩定性,因此,在機器人本體110移動到第一水準位置之後,再控制取放機構120移動到第一高度位置。
在機器人本體110移動到第一水準位置之前,控制取放機構120移動到低於第一高度位置的第二高度位置,並在機器人本體110移動到第一水準位置之後,控制取放機構120從第二高度位置移動到第一高度位置。
可以理解的是,機器人本體110移動到第一水準位置之前,控制取放機構120移動到第二高度位置,進而避免取放機構120位置過高影響機器人本體110的行駛,並且機器人本體110移動到第一水準位置之後,控制取放機構120從第二高度位置移動到第一高度位置,進而節省了機器人本體110移動到第一水準位置之後取放機構120抬升至第一水準位置的時間,因此提高了機器人100的工作效率。
在一些實施例中,在機器人100移動到機器人預設位置之後或朝向機器人預設位置移動的過程中,依據目標標誌物的位置確定目標存放位置。換言之,機器人100在向機器人預設位置的移動過程中對目標標誌物的位置進行掃描檢測,並依據目標標誌物的位置確定目標存放位置;或者,機器人100在到達機器人預設位置後對目標標誌物的位置進行掃描檢測,並依據目標標誌物的位置確定目標存放位置。
可以理解的是,目標貨箱在X軸方向上、Y軸方向上的以及Z軸方向上的位置座標均是參照機器人本體110所運行的倉儲區域來進行參照確定,當出現存儲區域平面不平整或者機器人100存在的誤差情況就會導致目標貨箱的存放位置與目標貨箱的預設存放位置不相同,進而需要機器人100對目標標誌物的位置進行檢測採集計算出目標貨箱的目標存放位置,使機器人100根據目標存放位置存放目標貨箱。
在一些實施例中,檢測目標標誌物時,若目標標誌物與預設存箱特徵不符或檢測不到目標標誌物,則取消放箱的任務。需要說明的是,針對每個子空間240內每個相應位置存放的目標貨箱,均會預先將相應目標貨箱對應的目標標誌物存儲在伺服器,該相應目標貨箱對應的目標標誌物即為預設存箱特徵,若是檢測到的目標標誌物不在預設存箱特徵範圍內,則目標標誌物與預設存箱特徵不符。
機器人100對目標標誌物進行掃描檢測,當目標標誌物與預設存箱特徵不符時,機器人100取消對目標貨箱的存放任務;當目標標誌物與預設存箱特徵相同,機器人100繼續對目標貨箱的進行存放操作。
可以理解的是,存儲區域內可能存儲有位於不同位置或不同類別的貨物,不同類別的貨物採用不同結構的貨箱盛放,同一類別的貨物的貨箱存儲在同一貨架200上。當機器人100掃描檢測目標標誌物與正在存放的目標貨箱相對應的目標標誌物的結構特徵資訊不一致,機器人100取消對目標貨箱的存放任務,避免不同貨箱類型的存儲在同一存儲區域內或目標貨箱存放位置出現大的偏差。
當機器人100檢測不到目標標誌物,機器人100取消對目標貨箱的存放任務。可以理解的是,機器人100檢測不到目標標誌物時,機器人100的行駛路線可能錯誤,且未到達機器人預設位置,或者預設存放位置為錯誤位置,機器人100停止存放目標貨箱的操作,避免目標貨箱的存放位置錯誤。
在一些實施例中,本發明實施例的貨箱存放方法還包括:
檢測目標存放位置上是否有其他貨箱,若有其他貨箱,將目標存放位置上具有其他貨箱的資訊傳輸至伺服器;
控制機器人100取消放箱任務;或者給目標貨箱重新分配存放位置;或者控制機器人100取出其他貨箱並把該其他貨箱放置在其他位置。
具體地,機器人100行駛到機器人預設位置後,機器人100對目標貨架200上目標貨箱的目標存放位置進行檢測,當目標貨架200上目標貨箱的目標存放位置沒有其他貨箱,機器人100繼續對目標貨箱進行存放操作。
當目標貨架200上目標貨箱的目標存放位置放置有其他貨箱,機器人100可以停止對目標貨箱進行存放操作並將該位置具有其他貨箱的資訊傳輸至伺服器。
可以理解的是,機器人100通過對目標存放位置進行掃描檢測,進而確定目標存放位置是否已經存放有貨箱後,避免目標貨架200上已經存放的貨箱被目標貨箱擠下目標貨架200,造成貨物損壞。比如,當目標貨箱的目標存放位置處存有其他貨箱時,機器人100將目標存放位置上具有其他貨箱的資訊傳輸至伺服器,保證後續的貨箱存放的過程中,伺服器不會向機器人100發出在已有貨箱的位置存儲貨箱的命令,提高了機器人100的工作效率。
當目標貨架200上目標貨箱的目標存放位置放置有其他貨箱,也可以是調度系統重新給目標貨箱分配存放位置,以控制機器人基於該重新分配的存放位置移動並實現目標貨箱的存放。
當目標貨架200上目標貨箱的目標存放位置放置有其他貨箱,還可以控制機器人100取出其他貨箱並把該其他貨箱放置在其他位置,以便可以將目標貨箱放在目標存放位置。
在一些實施例中,本發明實施例的貨箱存放方法還包括:
在將目標貨箱放置到目標貨架200之後,檢測目標貨箱的實際放置位置;
將實際放置位置與目標存放位置對比並確定二者的相對位置誤差,若相對位置誤差不滿足預設誤差條件,則控制機器人100將目標貨箱取出並重新放置目標貨箱。
具體地,機器人100將目標貨箱放置到目標貨架200之後,機器人100對目標貨箱進行掃描檢測,當目標貨箱的在目標貨架200上的位置在誤差範圍內時,無需再對目標貨箱的位置進行調整;當目標貨箱的在目標貨架200上的位置超過誤差範圍時,機器人100對目標貨箱的位置進行再次校正調整。
可以理解的是,在將目標貨箱放置到目標貨架200之後,機器人100對目標貨箱的位置進行再次校正,進而保證了目標貨箱的實際存放位置的位置精度,一方面,可以使目標貨箱的實際存放位置與目標貨箱的目標存放位置大體保持一致,另一方面,在保證該目標貨箱的位置精度高的情況下,當機器人100存放其他貨箱時將該目標貨箱作為目標標誌物,可以提高其他貨箱存放的位置精度。
在一些實施例中,本發明實施例的貨箱存放方法還包括:在將目標貨箱放置到目標貨架200之後,檢測目標貨架200的空間佔用資訊,並將目標貨架200的空間佔用資訊傳輸至伺服器。
可以理解的是,機器人100檢測目標貨架200的空間佔用資訊,並將目標貨架200的空間佔用資訊傳輸至伺服器,進而確定目標貨架200的存儲空間資訊,使伺服器能夠根據目標貨架200的存儲空間資訊向機器人100發出後續貨箱存放的指令,以將合適大小的箱子到該存儲空間內,其中存儲空間資訊包含目標貨箱所在位置資訊。
下面參考附圖2和3描述根據本發明實施例的機器人。
本發明實施例的機器人100包括機器人本體110、取放機構120、控制單元130和檢測單元140。
取放機構120設在機器人本體110上。具體地,取放機構120用於托舉和攜帶目標貨箱。換言之,機器人100可以通過取放機構120將目標貨箱移動至目標位置。在到達目標位置後,機器人100可以將取放機構120抬升至目標高度,進而將目標貨箱放置在貨架200上。
控制單元130用於根據目標貨箱的預設存放位置控制機器人100移動到機器人預設位置。
具體地,控制單元130可以根據目標貨箱的預設存放位置控制機器人本體110行駛到機器人預設位置,並且控制單元130還可以根據目標貨箱的預設存放位置控制取放機構120進行抬升和下降,進而調節目標貨箱的高度。
檢測單元140設在取放機構120上且用於檢測目標貨箱所屬的目標標誌物,目標標誌物為目標貨箱所屬的目標貨架200、目標貨箱相鄰的貨箱和與目標貨架200相對的貨架上的貨箱中至少一者的結構特徵。
具體地,檢測單元140包括圖像採集裝置141和影像處理裝置142,機器人100可以通過圖像採集裝置141採集到目標標誌物的結構特徵,比如,目標貨架200的立柱210、隔板220或者橫樑230,再通過影像處理裝置142將採集到目標標誌物的結構特徵轉化為電信號,並將帶有目標標誌物的結構特徵資訊的電信號輸送至控制單元130,以便控制單元130依據目標標誌物的結構特徵確定目標貨箱的目標存放位置。
其中檢測單元140可以為雷射雷達、視覺感測器、TOF相機、RGB-D相機、雙目相機、結構光相機等。
可以理解的是,機器人100可以通過檢測單元140對目標標誌物進行檢測並以目標標誌物的位置資訊作為目標貨箱存放位置的參照,以便存放目標貨箱。
其中控制單元130還用於依據目標標誌物的位置確定目標貨箱的目標存放位置並根據目標存放位置控制機器人100移動以使取放機構120將目標貨箱存放到目標貨架200上。
具體地,機器人100可以根據檢測單元140對目標標誌物的位置資訊進行檢測,控制單元130根據目標標誌物的位置資訊確定目標貨箱的目標存放位置,並控制機器人100基於目標存放位置放置目標貨箱。
本發明實施例的機器人100可以通過檢測倉儲作業場景中已有的貨架200本身或者已經放置在貨架200上的其他貨箱的位置,確定目標貨箱的目標存放位置(精確存放位置),並依據目標存放位置將目標貨箱放置在目標貨架200上,因此利用本發明實施例的機器人100存放目標貨箱時無需在目標貨架200上貼裝標識,不僅節省了勞動時間,而且降低了實施成本。
在一些實施例中,檢測單元140檢測目標貨箱所屬的編碼圖,且在未檢測到編碼圖的情況下檢測目標貨箱所屬的目標標誌物。
換言之,當機器人100的檢測單元140檢測到目標貨架上有編碼圖時,會優先檢測編碼圖;當機器人100的檢測單元140未檢測到目標貨架200上有編碼圖時,會將目標貨架200、目標貨箱相鄰的貨箱和與目標貨架200相對的貨架上的貨箱中的至少一者作為目標標誌物。
此外,在檢測單元140檢測到所述編碼圖的情況下,控制單元依據編碼圖的位置確定目標貨箱在目標貨架200上的目標存放位置。可以理解的是,機器人100的檢測單元140可以首先判斷目標貨架200上是否有編碼圖,若有編碼圖可以依據編碼圖確定目標貨箱的目標存放位置節約了時間,提高了貨箱存放效率。
在一些實施例中,控制單元130用於依據目標貨箱的預設存放位置,控制機器人本體110移動到第一水準位置,並控制取放機構120移動到第一高度位置。
具體地,機器人100接收預設存放位置資訊並根據預設存放位置資訊攜帶目標貨箱導航行駛至第一水準位置,並且機器人100通過取放機構120將目標貨箱移動到第一高度位置,從而將目標貨箱運送至預設存放位置。控制單元130取放機構120可以理解的是,控制單元130控制機器人本體110移動到第一水準位置,並控制取放機構120移動到第一高度位置,使目標貨箱接近貨箱的預設存放位置,以便檢測單元140對預設存放位置附近的目標標誌物進行掃描檢測,控制單元130進而確定目標貨箱的目標存放位置。
在一些可選的實施例中,機器人100在向機器人預設位置的移動過程中通過檢測單元140對目標標誌物的位置進行掃描檢測,控制單元130依據目標標誌物的位置確定目標存放位置。或者,機器人100在到達機器人預設位置後通過檢測單元140對目標標誌物的位置進行掃描檢測,控制單元130依據目標標誌物的位置確定目標存放位置。
在另一些實施例中,機器人100可以通過檢測單元140檢測目標標誌物的結構特徵是否滿足目標貨箱的存儲條件,進而決定是否繼續完成目標貨箱的存放操作。
例如,若機器人100檢測單元140檢測到目標標誌物與預設存箱特徵不符或檢測不到目標標誌物,則取消放箱的任務。
可以理解的是,存儲區域內可能存儲有位於不同位置或不同類別的貨物,不同類別的貨物採用不同結構的貨箱盛放,同一類別的貨物的貨箱存儲在同一貨架200上。當機器人100掃描檢測目標標誌物與正在存放的目標貨箱相對應的目標標誌物的結構特徵資訊不一致,機器人100取消對目標貨箱的存放任務,避免不同貨箱類型的存儲在同一存儲區域內或目標貨箱存放位置出現大的偏差。
在又一些實施例中,機器人100在將目標貨箱放置到目標貨架200之後,機器人100的檢測單元140檢測目標貨架200的空間佔用資訊,在檢測單元140確定目標貨架200的空間佔用資訊後,機器人100將目標貨架200的空間佔用資訊傳輸至伺服器。
可以理解的是,機器人100檢測目標貨架200的空間佔用資訊,並將目標貨架200的空間佔用資訊傳輸至伺服器,進而確定目標貨架200的存儲空間資訊,使伺服器能夠根據目標貨架200的存儲空間資訊向機器人100發出後續貨箱存放的指令,以將合適大小的箱子到該存儲空間內,其中存儲空間資訊包含目標貨箱所在位置資訊。
參見圖4,圖4是本發明實施例提供的另一種貨箱存放方法,具體包括:
步驟402,根據目標貨箱的預設存放位置控制機器人移動到機器人預設位置,確定所述目標貨箱所屬的目標標誌物,其中,所述目標標誌物為所述目標貨箱相鄰的貨箱和與所述目標貨箱相對貨架上的貨箱中至少一者。
關於步驟402的詳細內容,參見上述實施例中步驟S1的相關內容,在此不再贅述。
步驟404,獲取視覺感測器對目標標誌物進行圖像採集得到的貨箱圖像。
在本發明實施例中,視覺感測器可以為普通的2D視覺感測器,普通的2D視覺感測器相較於深度相機,成本更低,並且對貨箱的材質通用性更好。當然,本發明實施例中,視覺感測器並不僅限於普通的2D視覺感測器,能夠對目標標誌物進行圖像採集,且對貨箱的材質要求較低的視覺感測器均可適用。
視覺感測器對視野範圍內的場景進行圖像採集,視野範圍內需包含目標標誌物,則保證採集得到的貨箱圖像中包括目標標誌物,然後將採集得到的貨箱圖像傳輸至本發明實施例的執行主體處,以便執行主體基於該貨箱圖像對目標標誌物進行定位。
在實際應用中,視覺感測器的視野範圍內需包含目標標誌物的整個前端輪廓,具體地,可以通過以下三種方式來保證視覺感測器的視野範圍內包含目標標誌物的整個前端輪廓:第一種,獲取到視覺感測器採集的圖像後,對圖像中的貨箱頂點數目進行識別,首先判斷貨箱頂點是否是4個,如果貨箱頂點數目不滿4個,則識別貨箱的邊緣和圖像邊緣的位置關係,如果根據位置關係確定出貨箱超出了視野範圍,則可以發送控制信號給貨箱存取設備,使貨箱存取設備向超出方向移動。第二種,視覺感測器直接採用魚眼相機等視野範圍比較大的視覺感測器。第三種,視覺感測器採集到圖像後,可以顯示給管理人員,由管理人員從顯示的圖像中判斷貨箱是否超出了視野範圍,如果超出的話,人為控制貨箱存取設備向超出方向移動。
步驟406,對貨箱圖像進行邊緣檢測,確定目標標誌物的多個邊緣線交點,並對貨箱圖像進行輪廓檢測,確定目標標誌物的多個輪廓頂點。
在獲取到視覺感測器採集的貨箱圖像後,需要對貨箱圖像中的目標標誌物進行識別、定位,然而為了保證適用範圍,視覺感測器可以採用普通的2D視覺感測器,視覺感測器並不會採集到豐富的圖像資訊(比如深度資料、顏色資料等),但是,不論是哪種類型的視覺感測器,都可以採集到目標容日的邊緣和輪廓,因此,為了能夠適應各種類型的視覺感測器,本發明實施例通過邊緣檢測和輪廓檢測來進行目標標誌物的定位。
單獨通過邊緣檢測或者輪廓檢測,是可以實現目標標誌物定位的,然而,這種定位方案的精度較差,為了提升目標標誌物定位的精度,本發明實施例採用邊緣檢測和輪廓檢測相結合的方式進行貨箱定位。
邊緣檢測的目的是檢測出圖像中灰度變化明顯的點,而在倉儲領域的貨箱圖像中,灰度變化明顯的點往往就是貨箱邊緣。因此,對貨箱圖像進行邊緣檢測,是可以得到目標標誌物在貨箱圖像中的邊緣線的,在檢測出多條邊緣線後,通過對多條邊緣求交點,即可得到目標標誌物的多個邊緣線交點。在一些實施例中,邊緣檢測是可以直接在貨箱圖像中標識出目標標誌物的邊緣線,進而可以直接獲得目標標誌物的多個邊緣線交點。
在本發明實施例的一種實現方式中,步驟406中對貨箱圖像進行邊緣檢測,確定目標標誌物的多個邊緣線交點的步驟,具體可以通過如下方式實現:對貨箱圖像進行邊緣檢測,得到目標邊緣檢測圖像,其中,目標邊緣檢測圖像包括目標標誌物在貨箱圖像中的多條邊緣線;識別目標邊緣檢測圖像中多條邊緣線的交點作為目標標誌物的多個邊緣線交點。
在本發明實施例中,可以直接在貨箱圖像中進行邊緣檢測,則可得到目標邊緣檢測圖像,目標邊緣檢測圖像中會對目標標誌物在貨箱圖像中的多條邊緣線著重顯示(可以是僅顯示多條邊緣線,也可以是加粗、加重顯示多條邊緣線等),這樣,可以直接對多條邊緣線的交點進行識別,從而得到目標標誌物的多個邊緣線交點。通過該邊緣檢測的方法,能夠快速確定出目標標誌物在貨箱圖像中的多個邊緣線交點,使得貨箱定位的效率提升。
在本發明實施例的一種實現方式中,對貨箱圖像進行邊緣檢測,得到目標邊緣檢測圖像的步驟,具體可以通過如下方式實現:對貨箱圖像進行邊緣檢測,得到初始邊緣檢測圖像;對初始邊緣檢測圖像中的各條邊緣線分別進行擬合,得到目標邊緣檢測圖像。
一般情況下,由於受圖像採集的角度、光線等因素的影響,採集到的貨箱圖像與實際會有稍許誤差,並且所採用的邊緣檢測方法不同,也可以會導致檢測出的邊緣線與實際之間有誤差,為了保證檢測得到的目標邊緣檢測圖像更為準確,進而保證目標標誌物定位的精准。需要對邊緣檢測得到的初始邊緣檢測圖像中的各條邊緣線分別進行擬合。
由於貨箱一般情況下是四邊形的,也就是說目標標誌物的邊緣線一般情況下是直線,那麼,在對各條邊緣線分別進行擬合時,可以採用直線擬合的方法,直線擬合的方法有很多種,例如利用最小二乘法進行直線擬合、利用霍夫(Hough)變換進行直線擬合、利用梯度下降法進行直線擬合、利用一元線性回歸法進行直線擬合。在本發明實施例中,對於擬合所採用的方法不做具體限定,能夠達到邊緣線擬合的目的即可。當然,在一些特殊場景下,貨箱可能不是四邊形的,針對非四邊形的貨箱,在進行擬合時,對於是曲線的邊緣線,可以採用相應的曲線擬合方法,或者把曲線分割為多條直線,再使用直線擬合方法進行擬合。
在本發明實施例的一種實現方式中,對貨箱圖像進行邊緣檢測,得到初始邊緣檢測圖像的步驟,具體可以通過如下方式實現:對貨箱圖像進行梯度計算,得到初始邊緣檢測圖像。
如上述,邊緣檢測的目的是檢測出圖像中灰度變化明顯的點,那麼這種灰度變化明顯不明顯怎麼去定義呢,可以使用導數(梯度),衡量圖像灰度的變化率,因此,可以通過對貨箱圖像進行梯度計算從而實現邊緣檢測。梯度計算能夠快速、準確地計算出圖像中的灰度變化,能夠提升邊緣檢測的精度和效率。
將圖像函數f(x,y)梯度運算式表示出來,如公式(1)所示:
幅度如公式(2)所示:
方向角如公式(3)所示:
對於圖像來說,相當於是二維離散函數求梯度,使用差分來近似導數,如公式(4)所示:
因此,圖元點(x,y)處的梯度值如公式(5)所示,梯度方向如公式(6)所示:
在上述的推論中我們得到,梯度的方向是函數變化最快的方向,所以當函數中存在邊緣時,一定有較大的梯度值,相反,當圖像中有比較平滑的部分時,灰度值變化較小,則相應的梯度也較小,影像處理中把梯度的模簡稱為梯度,由圖像梯度構成的圖像成為梯度圖像。
一些經典的圖像梯度計算是考慮圖像的每個圖元的某個鄰域內的灰度變化,利用邊緣臨近的一階或二階導數變化規律,對原始圖像中圖元某個鄰域設置梯度運算元,通常用小區域範本進行卷積來計算,有Sobel運算元、Robinson運算元、Laplace運算元等。在本發明實施例中,可以直接通過梯度運算元對貨箱圖像進行運算,水準梯度運算元可以設置為[1,1,1;0,0,0;1,1,1],垂直梯度運算元可以設置為[1,0,1;1,0,1;1,0,1],利用水準梯度運算元、垂直梯度運算元對貨箱圖像進行計算,可以得到上述公式中的
和G
y(x,y),進一步地,可以計算出梯度值和梯度方向,從而得到整個貨箱圖像的梯度計算結果,基於貨箱圖像的梯度計算結果,可得到貨箱圖像中目標標誌物的邊緣線。
輪廓檢測是指在包含目標和背景的圖像中,忽略背景和目標內部的紋理以及雜訊干擾的影響,對目標輪廓進行提取的過程。在本發明實施例中,就是通過對貨箱圖像進行輪廓檢測,得到目標標誌物在貨箱圖像中的輪廓,在檢測出目標標誌物的輪廓後,通過對輪廓形狀的頂點進行識別,即可得到目標標誌物的多個輪廓頂點。
在本發明實施例的一種實現方式中,步驟406中對貨箱圖像進行輪廓檢測,確定目標標誌物的多個輪廓頂點的步驟,具體可以通過如下方式實現:對貨箱圖像進行輪廓檢測,得到目標輪廓檢測圖像,其中,目標輪廓檢測圖像包括目標標誌物在貨箱圖像中的輪廓圖形;識別目標輪廓檢測圖像中輪廓圖形的頂點作為目標標誌物的多個輪廓頂點。
在本發明實施例中,可以直接在貨箱圖像中進行輪廓檢測,則可得到目標輪廓檢測圖像,目標輪廓檢測圖像中會突顯出目標標誌物的輪廓圖形,這樣,可以直接對輪廓圖形的頂點進行識別,從而得到目標標誌物的多個輪廓頂點。通過該輪廓檢測的方法,能夠快速確定出目標標誌物在貨箱圖像中的多個輪廓頂點,使得貨箱定位的效率提升。
在本發明實施例的一種實現方式中,對貨箱圖像進行輪廓檢測,得到目標輪廓檢測圖像的步驟,具體可以通過如下方式實現:對貨箱圖像進行輪廓檢測,得到初始輪廓檢測圖像;對初始輪廓檢測圖像中的輪廓圖形進行擬合,得到目標輪廓檢測圖像。
一般情況下,由於受圖像採集的角度、光線等因素的影響,採集到的貨箱圖像與實際會有稍許誤差,並且所採用的輪廓檢測方法不同,也可以會導致檢測出的輪廓圖形與實際之間有誤差,為了保證檢測得到的目標輪廓檢測圖像更為準確,進而保證目標標誌物定位的精准。需要對輪廓檢測得到的初始輪廓檢測圖像中的輪廓圖形進行擬合。
由於貨箱一般情況下是四邊形的,那麼,在對輪廓圖形進行擬合時,可以採用四邊形擬合的方法,四邊形擬合就是通過對採集的輪廓圖形中各邊進行擬合,使得輪廓圖形更符合實際的四邊形。當然,在一些特殊場景下,貨箱可能不是四邊形的,針對多邊形的貨箱,在進行擬合時,可以採用相應的多邊形擬合方法對輪廓圖形進行擬合。
在具體實現中,可以採用開源的跨平臺電腦視覺和機器學習軟體庫(例如OpenCV)所提供的多邊形擬合方法對初始輪廓檢測圖像中的輪廓圖形進行擬合,OpenCV提供了最小包絡正矩形、最小包絡矩形、使用邊界點進行擬合得到四邊形、最小包絡四邊形幾種方法進行四邊形擬合,這些方法均基於反覆運算端點擬合算法(也稱為道格拉斯-普克演算法)的演算法思想設計。
在本發明實施例的一種實現方式中,對貨箱圖像進行輪廓檢測,得到初始輪廓檢測圖像的步驟,具體可以通過如下方式實現:對貨箱圖像進行二值化處理,得到初始輪廓檢測圖像。
本發明實施例中,具體可以採用二值化處理的方式進行輪廓檢測,即對貨箱圖像進行二值化處理得到初始輪廓檢測圖像。二值化處理可以採用自我調整二值化,即用來判斷貨箱圖像中某一圖元點是否是附近區間內較暗或較亮的區域,將該圖元點的圖元值與周圍區域的圖元值的平均值或加權平均值進行對比得到,從而得到二值化圖像(即初始輪廓檢測圖像),二值化圖像呈現出明顯的只有黑和白的視覺效果,目標標誌物的覆蓋區域與周圍區域會有明顯的區別,因此,可以從二值化圖像中識別出目標標誌物的覆蓋區域。在對貨箱圖像進行二值化處理時,由於貨箱圖像中各個部分的光照條件可能不均勻,可以分塊採用多個閾值對貨箱圖像進行二值化處理,對每一個圖像塊採用不同的二值化閾值。利用二值化處理方式,提升了定位目標標誌物的效率和準確度。
在本發明實施例的一種實現方式中,在執行步驟406之前,還可以執行如下步驟:對貨箱圖像進行濾波處理,得到去除雜訊的貨箱圖像。
由於受環境影響,視覺感測器採集的貨箱圖像往往包含有一些雜訊,圖像的雜訊是指存在於圖像資料中的不必要的或多餘的干擾資訊。雜訊的存在嚴重影響了圖像品質,因此在進行影像處理之前,需去除雜訊。本發明實施例中,採用對貨箱圖像進行濾波處理的方式進行去噪,濾波處理的方法主要包括雙邊濾波、中值濾波、高斯濾波等,本發明實施例中優先採用雙邊濾波演算法對貨箱圖像進行濾波處理,具有更好的濾波效果,得到去除雜訊的貨箱圖像。
步驟408,對所述多個邊緣線交點和所述多個輪廓頂點進行校驗,確定所述目標標誌物的目標頂點,並根據所述目標頂點,確定所述目標標誌物的位置。
在經過邊緣檢測、輪廓檢測得到目標標誌物的多個邊緣線交點、多個輪廓頂點後,對應位置的邊緣線交點和輪廓頂點應該是重合的,然而由於檢測手段的不同,所得到的邊緣線交點和輪廓頂點之間往往存在誤差,因此,需要對多個邊緣線交點和多個輪廓頂點進行校驗,校驗的過程就是將同一位置處的邊緣線交點和輪廓頂點相互之間進行交叉校驗,經過交叉校驗獲得更為準確的目標頂點。交叉校驗可以是同一位置處的邊緣線交點和輪廓頂點的位置求平均,也可以是根據同一位置處的邊緣線交點和輪廓頂點的圖元資訊,選擇出圖元資訊更符合實際情況的點作為目標頂點。
在本發明實施例的一種實現方式中,對多個邊緣線交點和多個輪廓頂點進行校驗,確定目標標誌物的目標頂點,具體可以通過如下方式實現:確定位於同一位置處的第一邊緣線交點和第一輪廓頂點;獲取第一邊緣線交點的預設範圍內各第一圖元點的圖元資訊以及第一輪廓頂點的預設範圍內各第二圖元點的圖元資訊;根據各第一圖元點的圖元資訊和各第二圖元點的圖元資訊,確定目標標誌物的目標頂點。
在對多個邊緣線交點和多個輪廓頂點進行校驗時,首先確定位於同一位置處的第一邊緣線交點和第一輪廓頂點,然後以第一邊緣線交點為中心,獲取第一邊緣線交點的預設範圍內各第一圖元點的圖元資訊(通常可以獲取第一邊緣線交點附近8個圖元點的圖元資訊),以第一輪廓頂點為中心,獲取第一輪廓頂點的預設範圍內各第二圖元點的圖元資訊,這裡所提及的圖元資訊是指圖元點的屬性資料,可以為圖元值、灰度值等。各第一圖元點的圖元資訊和各第二圖元點的圖元資訊表徵了第一邊緣線交點和第一輪廓頂點周圍的圖元分佈特點,而在實際場景下,貨箱目標頂點的圖元分佈具有一定的規律,根據基於該規律,根據各第一圖元點的圖元資訊和各第二圖元點的圖元資訊,確定出目標標誌物的目標頂點。
確定目標頂點的方式有多種,可以是判斷各第一圖元點的圖元資訊和各第二圖元點的圖元資訊中哪個符合上述規律,進一步能夠確定是將第一邊緣線交點確定為目標頂點還是將第一輪廓頂點確定為目標頂點。還可以是對各第一圖元點的圖元資訊和各第二圖元點的圖元資訊進行加權處理,然後判斷加權結果是否符合上述規律,如果不符合,則調整第一邊緣線交點和第一輪廓頂點的位置,直至加權結果符合上述規律,進而確定出目標頂點。
在本發明實施例的一種實現方式中,確定位於同一位置處的第一邊緣線交點和第一輪廓頂點的步驟,具體可以通過如下方式實現:識別貨箱圖像中的預設標識,其中,預設標識為預先在目標標誌物的各頂點處設置;計算多個邊緣線交點與預設標識的第一距離,以及多個輪廓頂點與預設標識的第二距離;根據第一距離和第二距離,確定位於同一位置處的第一邊緣線交點和第一輪廓頂點。
為了更精確的定位出位於同一位置處的第一邊緣線交點和第一輪廓頂點,在本發明實施例中,可以預先在目標標誌物的各頂點處設置預設標識,預設標識是一種幾何標識,如圖5所示,圖5示出了本發明一個實施例提供的一種目標標誌物前端輪廓示意圖,在目標標誌物的4個頂點出設置有圓形標識,當然,圓形標識僅為一種實例,預設標識還可以為矩形、三角形等,這裡不做具體限定。預設標識固定在目標標誌物的各頂點處,與目標標誌物的位置相對固定,檢測簡單。
在進行頂點查找時,可以先對貨箱圖像中的預設標識進行識別,然後計算多個邊緣線交點與預設標識的第一距離,以及多個輪廓頂點與預設標識的第二距離,正常情況下,邊緣線交點與一個預設標識的第一距離和輪廓頂點與該預設標識的第二距離的差值很小(小於一定的閾值),且第一距離和第二距離也較小,則說明該邊緣線交點和輪廓頂點是該預設標識所處頂點對應的邊緣線交點和輪廓頂點,即根據第一距離和第二距離,能夠確定出位於同一位置處的第一邊緣線交點和第一輪廓頂點,同時還能夠確定出實際所處的頂點位置。
在本發明實施例的一種實現方式中,根據各第一圖元點的圖元資訊和各第二圖元點的圖元資訊,確定目標標誌物的目標頂點的步驟,具體可以通過如下方式實現:根據各第一圖元點的圖元資訊,確定第一邊緣線交點的預設範圍內的第一圖元灰度分佈,並根據各第二圖元點的圖元資訊,確定第一輪廓頂點的預設範圍內的第二圖元灰度分佈;從第一圖元灰度分佈和第二圖元灰度分佈中,確定符合預設分佈規則的目標圖元灰度分佈;根據目標圖元灰度分佈,從第一邊緣線交點和第一輪廓頂點中確定目標標誌物的目標頂點。
根據各第一圖元點的圖元資訊,可以計算出第一邊緣線交點的預設範圍內的第一圖元灰度分佈,並且,根據各第二圖元點的圖元資訊,可以計算出第一輪廓頂點的預設範圍內的第二圖元灰度。具體地,圖元資訊可以為灰度值,則通過提取各第一圖元點、各第二圖元點的灰度值,即可得到第一圖元灰度分佈和第二圖元灰度分佈。如果是一個理想的頂點,其周圍的灰度分佈應該是,有四分之三的區域灰度值是在某一個閾值範圍之內,另外四分之一的區域的灰度值處於另一個閾值範圍,那麼,在得到第一圖元灰度分佈和第二圖元灰度分佈之後,可以從中確定出符合預設分佈規則的目標圖元灰度分佈,也就是判斷第一圖元灰度分佈和第二圖元灰度分佈哪一個能夠滿足上述分佈規則,將其作為目標圖元灰度分佈。然後基於目標圖元灰度分佈,從第一邊緣線交點和第一輪廓頂點中確定目標標誌物的目標頂點,也就是,如果第一邊緣線交點對應的第一圖元灰度分佈滿足上述分佈規則,則將第一邊緣線交點作為目標頂點,如果第一輪廓頂點對應的第二圖元灰度分佈滿足上述分佈規則,則將第一輪廓頂點作為目標頂點。
更進一步的,在得到目標標誌物的目標頂點之後,可以根據目標頂點確定目標標誌物的位置,確定目標標誌物的位置的方式可以採用PnP(Perspective-n-Point)定位演算法,也可以採用基於視覺感測器的其他定位演算法,位置是指目標標誌物相對於視覺感測器的實際定位資訊,位置可以包括目標標誌物的尺寸、位元姿等資訊。
在本發明實施例的一種實現方式中,目標標誌物的輪廓形狀為四邊形,相應地,根據目標頂點,確定目標標誌物的位置,具體可以通過如下方式實現:從目標標誌物的四個目標頂點中獲取任三個目標頂點的頂點資訊;根據該三個目標頂點的頂點資訊,採用預設的透視投影演算法,計算目標標誌物相對於視覺感測器的位元姿資訊。
由於目標標誌物的輪廓形狀為四邊形,針對四邊形的定位,可以採用P3P定位演算法,也就是在做定位的時候,可以從目標標誌物的四個目標頂點中獲取任三個目標頂點的頂點資訊,頂點資訊可以是頂點座標、頂點圖元等資訊,當然,還可以獲得目標標誌物的寬高先驗資訊,然後根據這三個目標頂點的頂點資訊,採用預設的透視投影演算法(即P3P演算法),即可計算出目標標誌物相對於視覺感測器的位元姿資訊。
如圖6所示,圖6示出了本發明一個實施例提供的一種目標標誌物的投影視圖,ABCD為目標標誌物前端輪廓的4個頂點,O為視覺感測器的視點,abcd為目標標誌物在投影面上投影後得到的4個頂點。
採用A,B,C三個頂點進行計算,已知BC、AC、AB的模長(即目標標誌物的寬高先驗資訊),以及∠AOC=∠aOc,∠BOC=∠bOc,∠AOB=∠aOb,且
,
,
。
根據公式(7)可以計算出三個角度,如公式(8)所示:
根據余弦定理有公式(9)所示等式成立:
為簡化計算,作出如公式(10)所示的變數代換(均轉化為與OC相關,從而消元):
經過變數代換後,可轉化為公式(11):
將v代入前兩個等式進一步消元,得到二元二次方程組,如公式(12)所示:
其中p, q, r, a, b是已知量,x, y為未知量,根據吳消元法解該方程,得到x,y,從而得到ABC三個點在視覺感測器的坐標系下的座標,根據目標標誌物表面建立三維世界坐標系,則ABC三點的世界座標也已知,根據ICP演算法即可求解出目標標誌物相對於視覺感測器的位元姿資訊。其中,位元姿資訊可以位元姿R矩陣與T矩陣表示。
步驟410,依據所述目標標誌物的位置確定所述目標貨箱在所述目標貨架上的目標存放位置,並根據所述目標存放位置控制所述機器人從所述機器人預設位置移動以將所述目標貨箱存放到所述目標貨架上。
關於步驟410的詳細內容,參見上述實施例中步驟S3至S4的相關內容,在此不再贅述。
在本發明實施例的一種實現方式中,在根據該三個目標頂點的頂點資訊,採用預設的透視投影演算法,計算目標標誌物相對於視覺感測器的位元姿資訊的步驟之後,還可以執行如下步驟:根據位元姿資訊,將四個目標頂點中除該三個目標頂點以外的剩餘目標頂點投影至貨箱圖像,得到剩餘目標頂點的投影座標;獲取貨箱圖像中剩餘目標頂點的頂點座標;根據投影座標和頂點座標,計算誤差值;根據誤差值,更新位元姿資訊,並返回執行根據位元姿資訊,將四個目標頂點中除該三個目標頂點以外的剩餘目標頂點投影至貨箱圖像,得到剩餘目標頂點的投影座標的步驟;在誤差值小於或等於預設閾值情況下,確定更新的位元姿資訊為目標標誌物相對於視覺感測器的目標位元姿資訊。
根據任三個目標頂點的頂點資訊,採用預設的透視投影演算法,計算得到目標標誌物相對於視覺感測器的位元姿資訊,然而在計算的過程中,不可避免的會引入誤差,這樣會導致得到的位元姿資訊並不是很準確,則需要利用四個目標頂點中除該三個目標頂點以外的剩餘目標頂點對位元姿資訊進行校驗,具體的位元姿資訊校驗過程為:根據位元姿資訊,將剩餘目標頂點投影至貨箱圖像,得到剩餘目標頂點的投影座標,投影座標和該剩餘目標頂點真實檢測到的頂點座標進行誤差計算得到誤差值,然後通過誤差梯度反向傳播的原理,根據誤差值更新位元姿資訊,依次類推,直到得到誤差值小於或等於預設閾值的位元姿資訊。通過利用四個目標頂點中除該三個目標頂點以外的剩餘目標頂點對位元姿資訊進行校驗,使得最終確定的位元姿資訊更為準確,提高了目標標誌物定位的精度。
應用本發明實施例,獲取視覺感測器對目標標誌物進行圖像採集得到的貨箱圖像;對貨箱圖像進行邊緣檢測,確定目標標誌物的多個邊緣線交點,並對貨箱圖像進行輪廓檢測,確定目標標誌物的多個輪廓頂點;對多個邊緣線交點和多個輪廓頂點進行校驗,確定目標標誌物的目標頂點;根據目標頂點,確定目標標誌物的位置。通過對視覺感測器採集的貨箱圖像進行邊緣檢測和輪廓檢測,分別得到目標標誌物的多個邊緣線交點和多個輪廓頂點,通過對多個邊緣線交點和多個輪廓頂點進行校驗,確定出目標標誌物的目標頂點更為精確,進而根據目標頂點確定出目標標誌物的位置更為精准,提高了目標標誌物的定位精度。
上述實施例中的目標標誌物具體可以為貨箱,為了便於理解,下面結合貨箱取放的應用場景對本發明實施例提供的一種貨箱定位方法進行介紹。在本發明實施例中,貨箱存取設備包括取放貨箱的取放裝置,在取放裝置的底部安裝有2D視覺感測器,貨箱存放裝置還包括處理器,由處理器執行如圖7所示的貨箱定位方法,圖7示出了本發明一個實施例提供的另一種貨箱定位方法的流程圖,具體包括以下步驟。
第一步,採集貨箱圖像。2D視覺感測器對目標貨箱進行圖像採集得到貨箱圖像,2D視覺感測器的視野範圍內需包含貨箱的整個前端輪廓。
第二步,圖像濾波。針對第一步中2D視覺感測器採集的貨箱圖像進行雙邊濾波處理,得到去除雜訊的圖像1。
第三步,梯度運算和自我調整二值化。針對第二步得到的圖像1進行水準梯度以及垂直梯度計算,得到圖像2;並針對圖像1同時並行進行自我調整二值化處理,得到圖像3。
第四步,邊緣查找和輪廓查找。針對第三步得到的圖像2進行邊緣查找得到圖像4,並對圖像3進行輪廓查找得到圖像5。其中,邊緣查找就是圖像2中梯度計算後梯度強度大於一定閾值的圖元位置,因為邊緣處灰度變化比較強烈,梯度回應會比較大。輪廓查找就是對圖像3的邊界輪廓進行識別。
第五步,直線擬合和四邊形擬合。針對第四步得到的圖像4中的邊緣線進行直線擬合,得到圖像6,並對圖像5中的四邊形輪廓形狀進行四邊形擬合,得到圖像7。具體的直線擬合、四邊形擬合方式詳見圖4所示實施例,這裡不再贅述。
第六步,確定直線交點和四邊形頂點。針對第五步得到的圖像6,對圖像6中的直線求交點,得到多個直線交點,並對圖像7查找四邊形輪廓頂點,得到多個四邊形頂點。
第七步,貨箱頂點校驗。
針對第六步得到的多個直線交點和多個四邊形頂點,首先確定出位於同一位置處的第一直線交點和第一四邊形頂點,然後以第一直線交點為中心,獲取第一直線交點的預設範圍內各第一圖元點的灰度值,以第一輪廓頂點為中心,獲取第一輪廓頂點的預設範圍內各第二圖元點的灰度值。提取各第一圖元點、各第二圖元點的灰度值,得到第一圖元灰度分佈和第二圖元灰度分佈。如果是一個理想的頂點,其周圍的灰度分佈應該是,有四分之三的區域灰度值是在某一個閾值範圍之內,另外四分之一的區域的灰度值處於另一個閾值範圍,那麼,在得到第一圖元灰度分佈和第二圖元灰度分佈之後,可以從中確定出符合預設分佈規則的目標圖元灰度分佈,也就是判斷第一圖元灰度分佈和第二圖元灰度分佈哪一個能夠滿足上述分佈規則,將其作為目標圖元灰度分佈。然後基於目標圖元灰度分佈,從第一直線交點和第一四邊形頂點中確定貨箱的目標頂點,也就是,如果第一直線交點對應的第一圖元灰度分佈滿足上述分佈規則,則將第一直線交點作為目標頂點,如果第一四邊形頂點對應的第二圖元灰度分佈滿足上述分佈規則,則將第一四邊形頂點作為目標頂點。
第八步,根據其中三個頂點採用P3P演算法計算貨箱相對於2D視覺感測器的位元姿。針對第七步得到的貨箱的四個頂點,根據其中的三個頂點以及貨箱的寬高先驗資訊,採用P3P演算法計算貨箱相對於2D視覺感測器的位元姿。具體的演算法實現過程詳見圖4和圖6所示實施例,這裡不再贅述。
第九步,採用剩餘的頂點做位姿校驗。
針對第八步得到的貨箱位姿,採用剩餘的頂點進行貨箱位姿的校驗。即根據位元姿資訊,將剩餘的頂點投影至圖像,得到剩餘的頂點的投影座標,投影座標和該剩餘的頂點真實檢測到的頂點座標進行誤差計算得到誤差值,然後通過誤差梯度反向傳播的原理,根據誤差值更新位元姿資訊,依次類推,直到得到誤差值小於或等於預設閾值的位元姿資訊。通過利用四個目標頂點中剩餘的頂點對位元姿資訊進行校驗,使得最終確定的位元姿資訊更為準確,提高了目標標誌物定位的精度。
第十步,輸出貨箱相對於2D視覺感測器的位元姿。
本發明採用普通的2D視覺感測器,無需依賴於深度相機,因此成本更低,且對貨箱的材料通用性更好;並且,無需依賴於貨位標識碼,能夠對貨箱直接進行定位,避免了貨箱與貨位標識碼之間的相對位置發生變化導致的貨箱實際位置不准,能夠獲取貨箱的實際角度、深度等資訊。
與上述方法實施例相對應,本發明還提供了貨箱存放裝置實施例,圖8示出了本發明一個實施例提供的一種貨箱存放裝置的結構示意圖。如圖8所示,該裝置包括:
確定模組810,被配置為根據目標貨箱的預設存放位置控制機器人移動到機器人預設位置,確定所述目標貨箱所屬的目標標誌物,其中,所述目標標誌物為所述目標貨箱相鄰的貨箱和與所述目標貨箱相對貨架上的貨箱中至少一者;
獲取模組820,被配置為獲取視覺感測器對所述目標標誌物進行圖像採集得到的貨箱圖像;
檢測模組830,被配置為對所述貨箱圖像進行邊緣檢測,確定所述目標標誌物的多個邊緣線交點,並對所述貨箱圖像進行輪廓檢測,確定所述目標標誌物的多個輪廓頂點;
校驗確定模組840,被配置為對所述多個邊緣線交點和所述多個輪廓頂點進行校驗,確定所述目標標誌物的目標頂點,並根據所述目標頂點,確定所述目標標誌物的位置;
存放模組850,被配置為依據所述目標標誌物的位置確定所述目標貨箱在所述目標貨架上的目標存放位置,並根據所述目標存放位置控制所述機器人從所述機器人預設位置移動以將所述目標貨箱存放到所述目標貨架上。
應用本發明實施例,獲取視覺感測器對目標標誌物進行圖像採集得到的貨箱圖像;對貨箱圖像進行邊緣檢測,確定目標標誌物的多個邊緣線交點,並對貨箱圖像進行輪廓檢測,確定目標標誌物的多個輪廓頂點;對多個邊緣線交點和多個輪廓頂點進行校驗,確定目標標誌物的目標頂點;根據目標頂點,確定目標標誌物的位置。通過對視覺感測器採集的貨箱圖像進行邊緣檢測和輪廓檢測,分別得到目標標誌物的多個邊緣線交點和多個輪廓頂點,通過對多個邊緣線交點和多個輪廓頂點進行校驗,確定出目標標誌物的目標頂點更為精確,進而根據目標頂點確定出目標標誌物的位置更為精准,提高了目標標誌物的定位精度。
可選地,檢測模組830,進一步可以被配置為對貨箱圖像進行邊緣檢測,得到目標邊緣檢測圖像,其中,目標邊緣檢測圖像包括目標標誌物在貨箱圖像中的多條邊緣線;識別目標邊緣檢測圖像中多條邊緣線的交點作為目標標誌物的多個邊緣線交點。
可選地,檢測模組830,進一步可以被配置為對貨箱圖像進行邊緣檢測,得到初始邊緣檢測圖像;對初始邊緣檢測圖像中的各條邊緣線分別進行擬合,得到目標邊緣檢測圖像。
可選地,檢測模組830,進一步可以被配置為對貨箱圖像進行梯度計算,得到初始邊緣檢測圖像。
可選地,檢測模組830,進一步可以被配置為對貨箱圖像進行輪廓檢測,得到目標輪廓檢測圖像,其中,目標輪廓檢測圖像包括目標標誌物在貨箱圖像中的輪廓圖形;識別目標輪廓檢測圖像中輪廓圖形的頂點作為目標標誌物的多個輪廓頂點。
可選地,檢測模組830,進一步可以被配置為對貨箱圖像進行輪廓檢測,得到初始輪廓檢測圖像;對初始輪廓檢測圖像中的輪廓圖形進行擬合,得到目標輪廓檢測圖像。
可選地,檢測模組830,進一步可以被配置為對貨箱圖像進行二值化處理,得到初始輪廓檢測圖像。
可選地,校驗確定模組840,進一步可以被配置為確定位於同一位置處的第一邊緣線交點和第一輪廓頂點;獲取第一邊緣線交點的預設範圍內各第一圖元點的圖元資訊以及第一輪廓頂點的預設範圍內各第二圖元點的圖元資訊;根據各第一圖元點的圖元資訊和各第二圖元點的圖元資訊,確定目標標誌物的目標頂點。
可選地,校驗確定模組840,進一步可以被配置為識別貨箱圖像中的預設標識,其中,預設標識為預先在目標標誌物的各頂點處設置;計算多個邊緣線交點與預設標識的第一距離,以及多個輪廓頂點與預設標識的第二距離;根據第一距離和第二距離,確定位於同一位置處的第一邊緣線交點和第一輪廓頂點。
可選地,校驗確定模組840,進一步可以被配置為根據各第一圖元點的圖元資訊,確定第一邊緣線交點的預設範圍內的第一圖元灰度分佈,並根據各第二圖元點的圖元資訊,確定第一輪廓頂點的預設範圍內的第二圖元灰度分佈;從第一圖元灰度分佈和第二圖元灰度分佈中,確定符合預設分佈規則的目標圖元灰度分佈;根據目標圖元灰度分佈,從第一邊緣線交點和第一輪廓頂點中確定目標標誌物的目標頂點。
可選地,目標標誌物的輪廓形狀為四邊形;
相應地,校驗確定模組840,進一步可以被配置為從目標標誌物的四個目標頂點中獲取任三個目標頂點的頂點資訊;根據該三個目標頂點的頂點資訊,採用預設的透視投影演算法,計算目標標誌物相對於視覺感測器的位元姿資訊。
可選地,校驗確定模組840,還可以被配置為根據位元姿資訊,將四個目標頂點中除該三個目標頂點以外的剩餘目標頂點投影至貨箱圖像,得到剩餘目標頂點的投影座標;獲取貨箱圖像中剩餘目標頂點的頂點座標;根據投影座標和頂點座標,計算誤差值;根據誤差值,更新位元姿資訊,並返回執行根據位元姿資訊,將四個目標頂點中除該三個目標頂點以外的剩餘目標頂點投影至貨箱圖像,得到剩餘目標頂點的投影座標的步驟;在誤差值小於或等於預設閾值情況下,確定更新的位元姿資訊為目標標誌物相對於視覺感測器的目標位元姿資訊。
可選地,該裝置還包括:
濾波模組,被配置為對貨箱圖像進行濾波處理,得到去除雜訊的貨箱圖像。
可選地,目標標誌物為貨箱。
上述為本實施例的一種貨箱存放裝置的示意性方案。需要說明的是,該貨箱存放裝置的技術方案與上述的貨箱存放方法的技術方案屬於同一構思,貨箱存放裝置的技術方案未詳細描述的細節內容,均可以參見上述貨存放方法的技術方案的描述。
圖9示出了本發明一個實施例提供的一種貨箱存取設備的結構框圖。該貨箱存取設備900的部件包括但不限於視覺感測器910、記憶體920和處理器930。處理器930與視覺感測器910、記憶體920通過匯流排940相連接,資料庫960用於保存資料。
貨箱存取設備900還包括接入設備950,接入設備950使得貨箱存取設備900能夠經由一個或多個網路970通信。這些網路的示例包括公用交換電話網(PSTN,Public Switched Telephone Network)、局域網(LAN,Local Area Network)、廣域網路(WAN,Wide Area Network)、個域網(PAN,Personal Area Network)或諸如網際網路的通信網路的組合。接入設備950可以包括有線或無線的任何類型的網路介面(例如,網路介面卡(NIC,Network Interface Card))中的一個或多個,諸如IEEE802.11無線局域網(WLAN,Wireless Local Area Networks)無線介面、全球微波互聯接入(Wi-MAX,World Interoperability for Microwave Access)介面、乙太網介面、通用序列匯流排(USB,Universal Serial Bus)介面、蜂窩網路介面、藍牙介面、近場通信(NFC,Near Field Communication)介面,等等。
在本發明的一個實施例中,貨箱存取設備900的上述部件以及圖9中未示出的其他部件也可以彼此相連接,例如通過匯流排。應當理解,圖9所示的貨箱存取設備結構框圖僅僅是出於示例的目的,而不是對本發明範圍的限制。本領域技術人員可以根據需要,增添或替換其他部件。
其中,視覺感測器910用於採集圖像,將圖像傳輸至處理器930;處理器930用於執行如下電腦可執行指令,該電腦可執行指令被處理器執行時實現:
獲取視覺感測器910對目標標誌物進行圖像採集得到的貨箱圖像;
對貨箱圖像進行邊緣檢測,確定目標標誌物的多個邊緣線交點,並對貨箱圖像進行輪廓檢測,確定目標標誌物的多個輪廓頂點;
對多個邊緣線交點和多個輪廓頂點進行校驗,確定目標標誌物的目標頂點;
根據目標頂點,確定目標標誌物的位置。
在得到位置後,可根據位置,控制貨箱存取設備取出目標標誌物。
上述為本實施例的一種貨箱存取設備的示意性方案。需要說明的是,該貨箱存取設備的技術方案與上述的貨箱存放方法的技術方案屬於同一構思,貨箱存取設備的技術方案未詳細描述的細節內容,均可以參見上述貨箱存放方法的技術方案的描述。
本發明一實施例還提供一種電腦可讀存儲介質,其存儲有電腦可執行指令,該電腦可執行指令被處理器執行時實現上述貨箱存放方法的步驟。
上述為本實施例的一種電腦可讀存儲介質的示意性方案。需要說明的是,該存儲介質的技術方案與上述的貨箱存放方法的技術方案屬於同一構思,存儲介質的技術方案未詳細描述的細節內容,均可以參見上述貨箱存放方法的技術方案的描述。
上述對本發明特定實施例進行了描述。其它實施例在所附權利要求書的範圍內。在一些情況下,在權利要求書中記載的動作或步驟可以按照不同於實施例中的順序來執行並且仍然可以實現期望的結果。另外,在附圖中描繪的過程不一定要求示出的特定順序或者連續順序才能實現期望的結果。在某些實施方式中,多工處理和並行處理也是可以的或者可能是有利的。
所述電腦指令包括電腦程式代碼,所述電腦程式代碼可以為原始程式碼形式、物件代碼形式、可執行檔或某些中間形式等。所述電腦可讀介質可以包括:能夠攜帶所述電腦程式代碼的任何實體或裝置、記錄介質、U盤、移動硬碟、磁碟、光碟、電腦記憶體、唯讀記憶體(ROM,Read-Only Memory)、隨機存取記憶體(RAM,Random Access Memory)、電載波信號、電信信號以及軟體分發介質等。
需要說明的是,對於前述的各方法實施例,為了簡便描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發明實施例並不受所描述的動作順序的限制,因為依據本發明實施例,某些步驟可以採用其它順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於優選實施例,所涉及的動作和模組並不一定都是本發明實施例所必須的。
在上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳述的部分,可以參見其它實施例的相關描述。
在本發明的描述中,需要理解的是,術語“中心”、“縱向”、“橫向”、“長度”、“寬度”、“厚度”、“上”、“下”、“前”、“後”、“左”、“右”、“豎直”、“水準”、“頂”、“底”“內”、“外”、“順時針”、“逆時針”、“軸向”、“徑向”、“周向”等指示的方位或位置關係為基於附圖所示的方位或位置關係,僅是為了便於描述本發明和簡化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構造和操作,因此不能理解為對本發明的限制。
此外,術語“第一”、“第二”僅用於描述目的,而不能理解為指示或暗示相對重要性或者隱含指明所指示的技術特徵的數量。由此,限定有“第一”、“第二”的特徵可以明示或者隱含地包括至少一個該特徵。在本發明的描述中,“多個”的含義是至少兩個,例如兩個,三個等,除非另有明確具體的限定。
在本發明中,除非另有明確的規定和限定,術語“安裝”、“相連”、“連接”、“固定”等術語應做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或成一體;可以是機械連接,也可以是電連接或彼此可通訊;可以是直接相連,也可以通過中間媒介間接相連,可以是兩個元件內部的連通或兩個元件的相互作用關係,除非另有明確的限定。對於本領域的普通技術人員而言,可以根據具體情況理解上述術語在本發明中的具體含義。
在本發明中,除非另有明確的規定和限定,第一特徵在第二特徵 “上”或“下”可以是第一和第二特徵直接接觸,或第一和第二特徵通過中間媒介間接接觸。而且,第一特徵在第二特徵“之上”、“上方”和“上面”可是第一特徵在第二特徵正上方或斜上方,或僅僅表示第一特徵水準高度高於第二特徵。第一特徵在第二特徵“之下”、“下方”和“下面”可以是第一特徵在第二特徵正下方或斜下方,或僅僅表示第一特徵水準高度小於第二特徵。
在本發明中,術語“一個實施例”、“一些實施例”、 “示例”、“具體示例”、或“一些示例”等意指結合該實施例或示例描述的具體特徵、結構、材料或者特點包含于本發明的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不必須針對的是相同的實施例或示例。而且,描述的具體特徵、結構、材料或者特點可以在任一個或多個實施例或示例中以合適的方式結合。此外,在不相互矛盾的情況下,本領域的技術人員可以將本說明書中描述的不同實施例或示例以及不同實施例或示例的特徵進行結合和組合。
儘管上面已經示出和描述了本發明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發明的限制,本領域的普通技術人員在本發明的範圍內可以對上述實施例進行變化、修改、替換和變型。
100:機器人;
110:機器人本體;
120:取放機構;
130:控制單元;
140:檢測單元;
141:圖像採集裝置;
142:影像處理裝置;
200:目標貨架;
210:立柱;
220:隔板;
230:橫樑;
240:子空間;
S1:根據目標貨箱的預設存放位置控制機器人移動到機器人預設位置;
S2:檢測目標貨箱所屬的目標標誌物,目標標誌物為目標貨箱所屬的目標貨架、目標貨箱相鄰的貨箱和與目標貨架相對的貨架上的貨箱中至少一者的結構特徵;
S3:依據目標標誌物的位置確定目標貨箱在目標貨架上的目標存放位置;
S4:根據目標存放位置控制機器人從機器人預設位置移動以將目標貨箱存放到目標貨架上;
402:根據目標貨箱的預設存放位置控制機器人移動到機器人預設位置,確定所述目標貨箱所屬的目標標誌物,其中,所述目標標誌物為所述目標貨箱相鄰的貨箱和與所述目標貨箱相對貨架上的貨箱中至少一者;
404:獲取視覺感測器對目標標誌物進行圖像採集得到的貨箱圖像;
406:對貨箱圖像進行邊緣檢測,確定目標標誌物的多個邊緣線交點,並對貨箱圖像進行輪廓檢測,確定目標標誌物的多個輪廓頂點;
408:對所述多個邊緣線交點和所述多個輪廓頂點進行校驗,確定所述目標標誌物的目標頂點,並根據所述目標頂點,確定所述目標標誌物的位置;
410:依據所述目標標誌物的位置確定所述目標貨箱在所述目標貨架上的目標存放位置,並根據所述目標存放位置控制所述機器人從所述機器人預設位置移動以將所述目標貨箱存放到所述目標貨架上;
810:確定模組;
820:獲取模組;
830:檢測模組;
840:校驗確定模組;
850:存放模組;
900:貨箱存取設備;
910:視覺感測器;
920:記憶體;
930:處理器;
940:匯流排;
950:接入設備;
960:資料庫;
970:網路。
圖1是本發明實施例的貨箱存放方法的流程圖;
圖2是本發明實施例的機器人在工作時的狀態示意圖;
圖3本發明實施例的機器人的結構示意圖;
圖4是本發明一個實施例提供的一種貨箱存放方法的流程圖;
圖5是本發明一個實施例提供的一種目標標誌物前端輪廓示意圖;
圖6是本發明一個實施例提供的一種目標標誌物的投影視圖;
圖7是本發明一個實施例提供的一種貨箱定位方法的流程圖;
圖8是本發明一個實施例提供的一種貨箱存放裝置的結構示意圖;
圖9是本發明一個實施例提供的一種貨箱存取設備的結構框圖。
S1:根據目標貨箱的預設存放位置控制機器人移動到機器人預設位置
S2:檢測目標貨箱所屬的目標標誌物,目標標誌物為目標貨箱所屬的目標貨架、目標貨箱相鄰的貨箱和與目標貨架相對的貨架上的貨箱中至少一者的結構特徵
S3:依據目標標誌物的位置確定目標貨箱在目標貨架上的目標存放位置
S4:根據目標存放位置控制機器人從機器人預設位置移動以將目標貨箱存放到目標貨架上
Claims (25)
- 一種貨箱存放方法,其特徵在於,包括: 根據目標貨箱的預設存放位置控制機器人移動到機器人預設位置; 檢測所述目標貨箱所屬的目標標誌物,所述目標標誌物為所述目標貨箱所屬的目標貨架、所述目標貨箱相鄰的貨箱和與所述目標貨架相對的貨架上的貨箱中至少一者的結構特徵; 依據所述目標標誌物的位置確定所述目標貨箱在所述目標貨架上的目標存放位置; 根據所述目標存放位置控制所述機器人從所述機器人預設位置移動以將所述目標貨箱存放到所述目標貨架上。
- 根據請求項1所述的貨箱存放方法,其特徵在於,所述機器人包括機器人本體和設在所述機器人本體上的取放機構,其中根據目標貨箱的預設存放位置控制所述機器人移動到機器人預設位置,包括: 控制所述機器人本體移動到第一水準位置,控制所述取放機構移動到第一高度位置。
- 根據請求項2所述的貨箱存放方法,其特徵在於,在所述機器人本體移動到第一水準位置之後或朝向所述第一水準位置移動過程中,控制所述取放機構移動到第一高度位置;或者, 在所述機器人本體移動到第一水準位置之前,控制所述取放機構移動到低於所述第一高度位置的第二高度位置,並在所述機器人本體移動到第一水準位置之後,控制所述取放機構從所述第二高度位置移動到所述第一高度位置。
- 根據請求項1所述的貨箱存放方法,其特徵在於,在機器人移動到所述機器人預設位置之後或朝向所述機器人預設位置移動的過程中,依據所述目標標誌物的位置確定所述目標存放位置。
- 根據請求項1所述的貨箱存放方法,其特徵在於,檢測所述目標標誌物時,若所述目標標誌物與預設存箱特徵不符或檢測不到所述目標標誌物,則取消放箱的任務。
- 根據請求項1所述的貨箱存放方法,其特徵在於,還包括: 檢測所述目標存放位置上是否有其他貨箱,若有其他貨箱,將所述目標存放位置上具有其他貨箱的資訊傳輸至伺服器; 控制所述機器人取消放箱任務;或者給所述目標貨箱重新分配存放位置;或者控制所述機器人取出所述其他貨箱並放置在其他位置。
- 根據請求項1所述的貨箱存放方法,其特徵在於,還包括: 在將所述目標貨箱放置到所述目標貨架之後,檢測所述目標貨箱的實際放置位置; 將所述實際放置位置與所述目標存放位置對比並確定二者的相對位置誤差,若相對位置誤差不滿足預設誤差條件,則控制機器人將所述目標貨箱取出並重新放置所述目標貨箱。
- 根據請求項1所述的貨箱存放方法,其特徵在於,在所述目標標誌物為貨箱的情況下,檢測所述目標貨箱所屬的目標標誌物,包括: 獲取視覺感測器對所述目標標誌物進行圖像採集得到的貨箱圖像; 對所述貨箱圖像進行邊緣檢測,確定所述目標標誌物的多個邊緣線交點,並對所述貨箱圖像進行輪廓檢測,確定所述目標標誌物的多個輪廓頂點; 對所述多個邊緣線交點和所述多個輪廓頂點進行校驗,確定所述目標標誌物的目標頂點; 根據所述目標頂點,確定所述目標標誌物的位置。
- 根據請求項8所述的貨箱存放方法,其特徵在於,所述對所述貨箱圖像進行邊緣檢測,確定所述目標標誌物的多個邊緣線交點,包括: 對所述貨箱圖像進行邊緣檢測,得到目標邊緣檢測圖像,其中,所述目標邊緣檢測圖像包括所述目標標誌物在所述貨箱圖像中的多條邊緣線; 識別所述目標邊緣檢測圖像中所述多條邊緣線的交點作為所述目標標誌物的多個邊緣線交點。
- 根據請求項9所述的貨箱存放方法,其特徵在於,所述對所述貨箱圖像進行邊緣檢測,得到目標邊緣檢測圖像,包括: 對所述貨箱圖像進行邊緣檢測,得到初始邊緣檢測圖像; 對所述初始邊緣檢測圖像中的各條邊緣線分別進行擬合,得到目標邊緣檢測圖像。
- 根據請求項8所述的貨箱存放方法,其特徵在於,所述對所述貨箱圖像進行輪廓檢測,確定所述目標標誌物的多個輪廓頂點,包括: 對所述貨箱圖像進行輪廓檢測,得到目標輪廓檢測圖像,其中,所述目標輪廓檢測圖像包括所述目標標誌物在所述貨箱圖像中的輪廓圖形; 識別所述目標輪廓檢測圖像中所述輪廓圖形的頂點作為所述目標標誌物的多個輪廓頂點。
- 根據請求項11所述的貨箱存放方法,其特徵在於,所述對所述貨箱圖像進行輪廓檢測,得到目標輪廓檢測圖像,包括: 對所述貨箱圖像進行輪廓檢測,得到初始輪廓檢測圖像; 對所述初始輪廓檢測圖像中的輪廓圖形進行擬合,得到目標輪廓檢測圖像。
- 根據請求項12所述的貨箱存放方法,其特徵在於,所述對所述貨箱圖像進行輪廓檢測,得到初始輪廓檢測圖像,包括: 對所述貨箱圖像進行二值化處理,得到初始輪廓檢測圖像。
- 根據請求項8-13任一項所述的貨箱存放方法,其特徵在於,所述對所述多個邊緣線交點和所述多個輪廓頂點進行校驗,確定所述目標標誌物的目標頂點,包括: 確定位於同一位置處的第一邊緣線交點和第一輪廓頂點; 獲取所述第一邊緣線交點的預設範圍內各第一圖元點的圖元資訊以及所述第一輪廓頂點的所述預設範圍內各第二圖元點的圖元資訊; 根據所述各第一圖元點的圖元資訊和所述各第二圖元點的圖元資訊,確定所述目標標誌物的目標頂點。
- 根據請求項14所述的貨箱存放方法,其特徵在於,所述確定位於同一位置處的第一邊緣線交點和第一輪廓頂點,包括: 識別所述貨箱圖像中的預設標識,其中,所述預設標識為預先在所述目標標誌物的各頂點處設置; 計算所述多個邊緣線交點與所述預設標識的第一距離,以及所述多個輪廓頂點與所述預設標識的第二距離; 根據所述第一距離和所述第二距離,確定位於同一位置處的第一邊緣線交點和第一輪廓頂點。
- 根據請求項14所述的貨箱存放方法,其特徵在於,所述根據所述各第一圖元點的圖元資訊和所述各第二圖元點的圖元資訊,確定所述目標標誌物的目標頂點,包括: 根據所述各第一圖元點的圖元資訊,確定所述第一邊緣線交點的所述預設範圍內的第一圖元灰度分佈,並根據所述各第二圖元點的圖元資訊,確定所述第一輪廓頂點的所述預設範圍內的第二圖元灰度分佈; 從所述第一圖元灰度分佈和所述第二圖元灰度分佈中,確定符合預設分佈規則的目標圖元灰度分佈; 根據所述目標圖元灰度分佈,從所述第一邊緣線交點和所述第一輪廓頂點中確定所述目標標誌物的目標頂點。
- 根據請求項8-13任一項所述的貨箱存放方法,其特徵在於,所述目標標誌物的輪廓形狀為四邊形; 所述根據所述目標頂點,確定所述目標標誌物的位置,包括: 從所述目標標誌物的四個目標頂點中獲取任三個目標頂點的頂點資訊; 根據所述任三個目標頂點的頂點資訊,採用預設的透視投影演算法,計算所述目標標誌物相對於所述視覺感測器的位元姿資訊。
- 根據請求項17所述的貨箱存放方法,其特徵在於,在所述根據所述任三個目標頂點的頂點資訊,採用預設的透視投影演算法,計算所述目標標誌物相對於所述視覺感測器的位元姿資訊之後,還包括: 根據所述位元姿資訊,將所述四個目標頂點中除所述任三個目標頂點以外的剩餘目標頂點投影至所述貨箱圖像,得到所述剩餘目標頂點的投影座標; 獲取所述貨箱圖像中所述剩餘目標頂點的頂點座標; 根據所述投影座標和所述頂點座標,計算誤差值; 根據所述誤差值,更新所述位元姿資訊,並返回執行所述根據所述位元姿資訊,將所述四個目標頂點中除所述任三個目標頂點以外的剩餘目標頂點投影至所述貨箱圖像,得到所述剩餘目標頂點的投影座標的步驟; 在所述誤差值小於或等於預設閾值情況下,確定更新的所述位元姿資訊為所述目標標誌物相對於所述視覺感測器的目標位元姿資訊。
- 根據請求項8-13任一項所述的貨箱存放方法,其特徵在於,在所述對所述貨箱圖像進行邊緣檢測,獲得所述目標標誌物的多個邊緣線交點,並對所述貨箱圖像進行輪廓檢測,獲得所述目標標誌物的多個輪廓頂點之前,還包括: 對所述貨箱圖像進行濾波處理,得到去除雜訊的所述貨箱圖像。
- 根據請求項1所述的貨箱存放方法,其特徵在於,還包括: 在將所述目標貨箱放置到所述目標貨架之後,檢測所述目標貨架的空間佔用資訊,並將所述目標貨架的空間佔用資訊傳輸至伺服器。
- 根據請求項1所述的貨箱存放方法,其特徵在於,向所述目標貨架上放置第一個目標貨箱時,所述目標標誌物為所述目標貨架的結構特徵。
- 一種機器人,其特徵在於,包括: 機器人本體; 取放機構,所述取放機構設在所述機器人本體上; 控制單元,所述控制單元用於根據目標貨箱的預設存放位置控制所述機器人移動到機器人預設位置; 檢測單元,所述檢測單元設在所述取放機構上且用於檢測所述目標貨箱所屬的目標標誌物,所述目標標誌物為所述目標貨箱所屬的目標貨架、所述目標貨箱相鄰的貨箱和與所述目標貨架相對的貨架上的貨箱中至少一者的結構特徵, 其中所述控制單元還用於依據所述目標標誌物的位置確定所述目標貨箱的目標存放位置並根據所述目標存放位置控制所述機器人移動以使所述取放機構將所述目標貨箱存放到所述目標貨架上。
- 一種貨箱存放方法,其特徵在於,包括: 根據目標貨箱的預設存放位置控制機器人移動到機器人預設位置,確定所述目標貨箱所屬的目標標誌物,其中,所述目標標誌物為所述目標貨箱相鄰的貨箱和與所述目標貨箱相對貨架上的貨箱中至少一者; 獲取視覺感測器對所述目標標誌物進行圖像採集得到的貨箱圖像; 對所述貨箱圖像進行邊緣檢測,確定所述目標標誌物的多個邊緣線交點,並對所述貨箱圖像進行輪廓檢測,確定所述目標標誌物的多個輪廓頂點; 對所述多個邊緣線交點和所述多個輪廓頂點進行校驗,確定所述目標標誌物的目標頂點,並根據所述目標頂點,確定所述目標標誌物的位置; 依據所述目標標誌物的位置確定所述目標貨箱在所述目標貨架上的目標存放位置,並根據所述目標存放位置控制所述機器人從所述機器人預設位置移動以將所述目標貨箱存放到所述目標貨架上。
- 一種貨箱存取設備,其特徵在於,包括:視覺感測器、記憶體和處理器; 所述視覺感測器用於對目標標誌物進行圖像採集獲得貨箱圖像,將所述貨箱圖像傳輸至所述處理器; 所述記憶體用於存儲電腦可執行指令,所述處理器用於執行所述電腦可執行指令,該電腦可執行指令被處理器執行時實現請求項23所述的方法。
- 一種電腦可讀存儲介質,其特徵在於,所述電腦可讀存儲介質存儲有電腦可執行指令,該電腦可執行指令被處理器執行時實現請求項23所述的方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210130228.7A CN116620772A (zh) | 2022-02-11 | 2022-02-11 | 货箱存放方法和机器人 |
CN2022101302287 | 2022-02-11 | ||
CN202210778425.XA CN117372513A (zh) | 2022-06-30 | 2022-06-30 | 容器定位方法、装置、容器存取设备及存储介质 |
CN202210778425X | 2022-06-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202411139A true TW202411139A (zh) | 2024-03-16 |
Family
ID=87563644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112105051A TW202411139A (zh) | 2022-02-11 | 2023-02-13 | 貨箱存放方法和機器人 |
Country Status (2)
Country | Link |
---|---|
TW (1) | TW202411139A (zh) |
WO (1) | WO2023151603A1 (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5233709B2 (ja) * | 2009-02-05 | 2013-07-10 | 株式会社デンソーウェーブ | ロボットシミュレーション画像表示システム |
US9884719B2 (en) * | 2014-12-12 | 2018-02-06 | Symbotic, LLC | Storage and retrieval system |
CN111792249B (zh) * | 2019-09-17 | 2022-08-12 | 北京京东乾石科技有限公司 | 仓储管理方法、装置、系统和计算机可读存储介质 |
CN111348361A (zh) * | 2020-01-21 | 2020-06-30 | 深圳市海柔创新科技有限公司 | 取、放货控制方法、装置、搬运装置及搬运机器人 |
CN113335825B (zh) * | 2020-03-03 | 2022-12-23 | 兰剑智能科技股份有限公司 | 货位动态定位方法、装置和电子设备 |
CN112407729A (zh) * | 2020-11-20 | 2021-02-26 | 深圳市海柔创新科技有限公司 | 货物取放方法、装置、仓储机器人和仓储系统 |
CN112678409B (zh) * | 2020-12-24 | 2024-04-02 | 深圳市海柔创新科技有限公司 | 货物处理方法、装置、设备、系统、存储介质及程序产品 |
-
2023
- 2023-02-08 WO PCT/CN2023/075054 patent/WO2023151603A1/zh unknown
- 2023-02-13 TW TW112105051A patent/TW202411139A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023151603A1 (zh) | 2023-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102326097B1 (ko) | 물리적 길이의 단위를 사용하는 팔렛 검출 | |
CN110837814B (zh) | 车辆导航方法、装置及计算机可读存储介质 | |
KR102194426B1 (ko) | 실내 이동 로봇이 엘리베이터에서 환경을 인식하기 위한 장치 및 방법, 이를 구현하기 위한 프로그램이 저장된 기록매체 및 이를 구현하기 위해 매체에 저장된 컴퓨터프로그램 | |
CN109160452B (zh) | 基于激光定位和立体视觉的无人转运叉车及导航方法 | |
KR101967088B1 (ko) | 가시 광 및 적외선 투영 패턴들을 검출하기 위한 이미저 | |
US9630320B1 (en) | Detection and reconstruction of an environment to facilitate robotic interaction with the environment | |
US11763459B2 (en) | Method and computing system for object identification | |
US8150658B2 (en) | Three-dimensional object recognition system and inventory system using the same | |
CN110793512A (zh) | 位姿识别方法、装置、电子设备和存储介质 | |
CN113253737B (zh) | 货架检测方法及装置、电子设备、存储介质 | |
CN107390679A (zh) | 存储设备、激光导航叉车 | |
WO2023005384A1 (zh) | 可移动设备的重定位方法及装置 | |
CN113574563A (zh) | 多相机图像处理 | |
US11977392B2 (en) | Identifying elements in an environment | |
JP2023040090A (ja) | 着地面上のコンテナのための着地ソリューションを生成するための方法およびシステム背景 | |
CN114170521B (zh) | 一种叉车托盘对接识别定位方法 | |
CN205472298U (zh) | 一种集装箱起重机自动化检测标定系统 | |
TW202411139A (zh) | 貨箱存放方法和機器人 | |
KR102325333B1 (ko) | 이동체 자율주행을 위한 인공표식 기반의 위치인식 방법 및 이를 위한 장치 | |
WO2023061501A1 (zh) | 基于货架标识的导航系统、方法 | |
US20230400858A1 (en) | Identifying transport structures | |
CN117372513A (zh) | 容器定位方法、装置、容器存取设备及存储介质 | |
WO2023192331A1 (en) | Localization of horizontal infrastructure using point clouds | |
CN116385533A (zh) | 一种基于二维和三维成像的叉式agv目标位姿检测方法 | |
CN116258998A (zh) | 障碍物识别方法、系统及存储介质 |