TW202142835A - 在一slam地圖中重新定位一移動載具的方法及移動載具 - Google Patents
在一slam地圖中重新定位一移動載具的方法及移動載具 Download PDFInfo
- Publication number
- TW202142835A TW202142835A TW109115019A TW109115019A TW202142835A TW 202142835 A TW202142835 A TW 202142835A TW 109115019 A TW109115019 A TW 109115019A TW 109115019 A TW109115019 A TW 109115019A TW 202142835 A TW202142835 A TW 202142835A
- Authority
- TW
- Taiwan
- Prior art keywords
- slam
- mobile vehicle
- slam map
- map
- time stamp
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000013507 mapping Methods 0.000 claims abstract description 10
- 230000004807 localization Effects 0.000 claims abstract description 9
- 238000004364 calculation method Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- QVFWZNCVPCJQOP-UHFFFAOYSA-N chloralodol Chemical compound CC(O)(C)CC(C)OC(O)C(Cl)(Cl)Cl QVFWZNCVPCJQOP-UHFFFAOYSA-N 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3667—Display of a road map
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/165—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
- G01C21/1652—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with ranging devices, e.g. LIDAR or RADAR
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
- G01C21/32—Structuring or formatting of map data
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3848—Data obtained from both position sensors and additional sensors
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0217—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Artificial Intelligence (AREA)
- Navigation (AREA)
Abstract
本揭露提出一種在一即時定位與地圖繪製(SLAM)地圖中重新定位一移動載具的方法,用於在一區域中移動的上述移動載具中,包括:在一初始時間點建立對應上述區域之上述SLAM地圖;藉由一非SLAM定位裝置在上述SLAM地圖上偵測上述移動載具的一第一位置軌跡及一第一方位軌跡;藉由一SLAM定位裝置偵測上述移動載具在一第一時間戳及一第二時間戳之間的一迷失機率;判斷是否滿足一條件;以及當在一目前時間點滿足上述條件時,更新上述SLAM地圖為對應上述目前時間點之一新SLAM地圖及更新上述移動載具位於上述新SLAM地圖中之一定位資訊。
Description
本揭露係有關於一種重新定位的方法及移動載具,且特別係有關於一種在一即時定位與地圖繪製(Simultaneous Localization and Mapping,SLAM)地圖中重新定位一移動載具的方法及移動載具。
作為使移動機器人能夠繪製其環境地圖並維護其在該地圖中位置的工作數據的系統,即時定位與地圖繪製(Simultaneous Localization and Mapping,SLAM)既準確又通用。 它的可靠性和對各種應用的適應性使其成為賦予機器人一定程度自主權的有用元件。
目前SLAM技術係使用計算機率的方式定位移動機器人的位置並繪製地圖。由於使用此技術需要較精確的位置或方位,否則移動機器人一旦遇到某些複雜環境或者變化較大的環境時,移動機器人將無法重新將自己定位在目前所繪製的SLAM地圖中(即,移動機器人迷路了)。而先前由移動機器人所建立之地圖與定位資訊也將全部失效。
因此,需要一種在一SLAM地圖中重新定位一移動載具的方法及移動載具,以改善上述問題。
以下揭露的內容僅為示例性的,且不意指以任何方式加以限制。除所述說明方面、實施方式和特徵之外,透過參照附圖和下述具體實施方式,其他方面、實施方式和特徵也將顯而易見。即,以下揭露的內容被提供以介紹概念、重點、益處及本文所描述新穎且非顯而易見的技術優勢。所選擇,非所有的,實施例將進一步詳細描述如下。因此,以下揭露的內容並不意旨在所要求保護主題的必要特徵,也不意旨在決定所要求保護主題的範圍中使用。
因此,本揭露之主要目的即在於提供一種在一SLAM地圖中重新定位一移動載具的方法及移動載具,以改善上述缺點。
本揭露提出一種在一即時定位與地圖繪製(Simultaneous Localizat1nand Mapping,SLAM)地圖中重新定位一移動載具的方法,用於在一區域中移動的上述移動載具中,包括:在一初始時間點使用SLAM建立對應上述區域之上述SLAM地圖;藉由一非SLAM定位裝置在上述SLAM地圖上偵測上述移動載具的一第一位置軌跡及一第一方位軌跡;藉由一SLAM定位裝置偵測上述移動載具在一第一時間戳及一第二時間戳之間的一迷失機率;判斷是否滿足一條件;以及當在一目前時間點滿足上述條件時,更新上述SLAM地圖為對應上述目前時間點之一新SLAM地圖及更新上述移動載具位於上述新SLAM地圖中之一定位資訊;其中上述條件係為下列其中之一:上述位置軌跡或上述方位軌跡不介於一第一範圍之間以及上述迷失機率不介於一第二範圍之間;以及上述迷失機率不介於上述第二範圍之間。
在一些實施例中,更新上述SLAM地圖為上述新SLAM地圖及更新上述定位資訊之步驟更包括:使用上述非SLAM定位裝置所偵測出上述移動載具於上述目前時間點的一位置及一方位更新上述SLAM地圖為上述新SLAM地圖及更新上述定位資訊。
在一些實施例中,在更新上述SLAM地圖為上述新SLAM地圖及更新上述定位資訊之前,上述方法更包括:藉由上述非SLAM定位裝置計算上述移動載具於上述目前時間點的一第一可信任值;藉由上述SLAM定位裝置計算上述移動載具於上述目前時間點的一第二可信任值;以及當上述第一可信任值或上述第二可信任度高於一閾值時,更新上述SLAM地圖為對應上述目前時間點之上述新SLAM地圖及更新上述移動載具位於上述新SLAM地圖中之上述定位資訊。
在一些實施例中,上述第一可信任值及上述第二可信任度係一均值函數。
在一些實施例中,上述迷失機率係為上述移動載具在上述第一時間戳及上述第二時間戳之間所移動之一第二位置軌跡、一第二方位軌跡或上述SLAM地圖在上述第一時間戳與上述第二時間戳之間的一疊合差異。
在一些實施例中,上述迷失機率係一均值函數。
在一些實施例中,上述SLAM定位裝置即時於上述目前時間點將上述SLAM地圖更新為上述新SLAM地圖。
在一些實施例中,上述非SLAM定位裝置不定時將上述SLAM地圖更新為上述新SLAM地圖。
在一些實施例中,上述第一時間戳及上述第二時間戳係為連續的時間戳。
在一些實施例中,上述第一時間戳及上述第二時間戳係為不連續的時間戳。
本揭露提出一種移動載具,用於在一區域中移動,包括:一計算裝置,在一初始時間點使用SLAM建立對應上述區域之上述SLAM地圖;一非SLAM定位裝置,連接至上述計算裝置,在上述SLAM地圖上偵測上述移動載具的一第一位置軌跡及一第一方位軌跡;以及一SLAM定位裝置,連接至上述計算裝置,偵測上述移動載具在一第一時間戳及一第二時間戳之間的一迷失機率:其中上述計算裝置判斷是否滿足一條件;以及當在一目前時間點滿足上述條件時,更新上述SLAM地圖為對應上述目前時間點之一新SLAM地圖及更新上述移動載具位於上述新SLAM地圖中之一定位資訊;其中上述條件係為下列其中之一:上述位置軌跡或上述方位軌跡不介於一第一範圍之間以及上述迷失機率不介於一第二範圍之間;以及上述迷失機率不介於上述第二範圍之間。
在下文中將參考附圖對本揭露的各方面進行更充分的描述。然而,本揭露可以具體化成許多不同形式且不應解釋為侷限於貫穿本揭露所呈現的任何特定結構或功能。相反地,提供這些方面將使得本揭露周全且完整,並且本揭露將給本領域技術人員充分地傳達本揭露的範圍。基於本文所教導的內容,本領域的技術人員應意識到,無論是單獨還是結合本揭露的任何其它方面實現本文所揭露的任何方面,本揭露的範圍旨在涵蓋本文中所揭露的任何方面。例如,可以使用本文所提出任意數量的裝置或者執行方法來實現。另外,除了本文所提出本揭露的多個方面之外,本揭露的範圍更旨在涵蓋使用其它結構、功能或結構和功能來實現的裝置或方法。應可理解,其可透過申請專利範圍的一或多個元件具體化本文所揭露的任何方面。
詞語「示例性」在本文中用於表示「用作示例、實例或說明」。本揭露的任何方面或本文描述為「示例性」的設計不一定被解釋為優選於或優於本揭露或設計的其他方面。此外,相同的數字在所有若干圖示中指示相同的元件,且除非在描述中另有指定,冠詞「一」和「上述」包含複數的參考。
可以理解,當元件被稱為被「連接」或「耦接」至另一元件時,該元件可被直接地連接到或耦接至另一元件或者可存在中間元件。相反地,當該元件被稱為被「直接連接」或「直接耦接」至到另一元件時,則不存在中間元件。用於描述元件之間的關係的其他詞語應以類似方式被解釋(例如,「在…之間」與「直接在…之間」、「相鄰」與「直接相鄰」等方式)。
本揭露實施例提供一種在一即時定位與地圖繪製(Simultaneous Localizat1nand Mapping,SLAM)地圖中重新定位一移動載具的方法及移動載具,加入了另一個精確的非SLAM定位裝置,以進一步解決使用SLAM定位裝置定位失效的問題。
第1圖示意性地示出了裝配有SLAM定位裝置102及非SLAM定位裝置104之以無人載具設備形式的移動載具100。在所示的實施例中,SLAM定位裝置102可以為可產生準確地圖的任何合適的測距感測器(例如激光器(LiDAR)、激光掃描儀(laser scanner)或聲納設備)。非SLAM定位裝置104可為任何以射頻(Radio frequency,RF)為基礎的定位裝置(例如,超寬頻(Ultra-wideband,UWB)、藍牙(Bluetooth)、LoRa、WiFi等裝置)。移動載具100更包括具有處理器112及可以儲存程式1142之一記憶體114的計算裝置110。
計算裝置110係為可支援各種無線存取技術之裝置,例如一行動電話、筆記型電腦、智慧型手機、或平板電腦等裝置。計算裝置110與SLAM定位裝置102及非SLAM定位裝置104通訊(例如,經由無線通訊介面),並且能夠儲存和處理與使用由SLAM定位裝置102及非SLAM定位裝置104所接收訊號有關的數據。
記憶體114可儲存由處理器112使用SLAM建立對應一區域之的SLAM地圖。計算裝置110可進一步包括其他常規特徵,例如允許其與遠端裝置交換數據的使用者介面和通訊介面。在替代的實施例中,來自至少一感測器中的訊號可以被傳送至遠端計算裝置以進行處理,而不是由計算裝置110進行處理。
在使用中,移動載具100在一區域中沿著路面行進,並且由SLAM定位裝置102及非SLAM定位裝置104捕獲與移動載具100周圍場景有關的數據。儘管示例性移動載具100是沿著道路/地面行駛的無人載具,但應可理解,在替代的實施例中,移動載具100可以為可在可被掃描之地面上方行駛(並且不必與地面接觸)任何類型的裝置。此外,在其他實施例中,SLAM定位裝置102、非SLAM定位裝置104和計算裝置110可不需安裝在移動載具100上,而是可以被包括在像是手持導航裝置中。
處理器112被配置為處理從SLAM定位裝置102及非SLAM定位裝置104接收的數據,以嘗試從現有的地圖數據定位移動載具100。處理器112可使用從SLAM定位裝置102所取得的數據來產生移動載具100運行時的一SLAM地圖,如第2圖所示。第2圖係顯示根據本揭露一實施例所述之移動載具100根據SLAM定位裝置102所獲得的數據生成的SLAM地圖200。如圖所示,SLAM地圖200至少由三個數據-1、0、1所組成,其中-1表示未知區域(例如,第2圖中灰色區域),0表示已知區域(例如,第2圖中黑色區域、牆壁或障礙物),1表示空白區域(例如,第2圖中白色區域或空地)。
應可理解,第1圖所示的計算裝置110可經由任何類型的計算裝置來實現,像是參考第5圖描述的計算裝置500,如第5圖所示。
第3圖係顯示根據本揭露一實施例所述之在一即時定位與地圖繪製(Simultaneous Localizat1nand Mapping,SLAM)地圖中重新定位一移動載具的方法流程圖300。此方法可執行於如第1圖所示之在一區域移動的移動載具100中。
在步驟S305中,此移動載具在一初始時間點使用SLAM建立對應上述區域之上述SLAM地圖。
在步驟S310中,此移動載具藉由一非SLAM定位裝置在上述SLAM地圖上偵測上述移動載具的一第一位置軌跡及一第一方位軌跡。更詳細地說明,非SLAM定位裝置可即時記錄移動載具在SLAM地圖上的位置及方位。所有位置可表示為位置集合rf.p={{timestamp1, position1}, { timestamp2, position2},…},所有方位可表示為方位集合rf.a={{timestamp1, azrimuth1}, {timestamp2, azrimuth2},…}。而第一位置軌跡係為位置集合中連續兩個以上位置所形成的軌跡,第一方位軌跡係為方位集合中連續兩個以上方位所形成的軌跡。
在步驟S315中,此移動載具藉由一SLAM定位裝置偵測上述移動載具在一第一時間戳及一第二時間戳之間的一迷失機率,其中上述迷失機率係為上述移動載具在上述第一時間戳及上述第二時間戳之間所移動之一第二位置軌跡、一第二方位軌跡或上述SLAM地圖在上述第一時間戳與上述第二時間戳之間的一疊合差異。
更詳細地說明, SLAM定位裝置可即時記錄移動載具在SLAM地圖上的位置及方位。所有位置可表示為位置集合opt.p={{timestamp1, position1}, { timestamp2, position2},…},所有方位可表示為方位集合opt.a={{timestamp1, azrimuth1}, {timestamp2, azrimuth2},…}。而第二位置軌跡係為位置集合中連續兩個或任意兩個位置所形成的軌跡,第一方位軌跡係為方位集合中連續兩個或任意兩個方位所形成的軌跡。此外,SLAM地圖在第一時間戳與第二時間戳之間的一疊合差異係為SLAM地圖在第一時間戳與第二時間戳之間的差異機率值。舉例來說,第4圖係為係顯示根據本揭露一實施例所述之SLAM地圖疊合的示意圖。SLAM地圖410係為在時間戳t0所產生的SLAM地圖,SLAM地圖420係為在時間戳ti所產生的SLAM地圖。SLAM定位裝置可計算SLAM地圖410與SLAM地圖420的機率值,作為移動載具在時間戳t0及時間戳ti之間的一迷失機率。
在第3圖之S315中,移動載具藉由SLAM定位裝置偵測移動載具在第一時間戳及第二時間戳之間的迷失機率之流程可以用以下python程式碼來表示,其中輸入參數至少有前一個時間t-1的SLAM地圖map_t-1、測距感測器LiDAR輸入(即,移動載具與周圍環境之距離值)、時間t時移動載具所在的位置opt_p_t(x_t, y_t)及方位 opt_a_t(a_t),而「#」及其右側的文字表示程式中之註解。
在另一實施例中,上述迷失機率係一均值函數,如mean(p)。
p=[0.5 for i in range(360)] #初始假設機率 for i in range(360): #時間t時,移動載具的位置opt_p_t (x_t, y_t)及方位opt_a_t(a_t) #bias_i=i*pi/180 #時間t時,所有i機率估算map自訂義函數 p[i]=map(x_t+LiDAR[i]*cos(a_t+bias_i), y_t+LiDAR[i]*sin(a_t+bias_i)) |
此外,須注意的是,步驟S310及S315係分別同時由非SLAM定位裝置及SLAM定位裝置所執行。
接著,在步驟S320中,此移動載具之處理器判斷是否滿足一條件,其中上述條件係為下列其中之一:(1)上述位置軌跡或上述方位軌跡不介於一第一範圍之間以及上述迷失機率不介於一第二範圍之間;以及(2)上述迷失機率不介於上述第二範圍之間。
當在一目前時間點滿足上述條件時(步驟S320中的「是」),在步驟S325中,此移動載具之處理器更新上述SLAM地圖為對應上述目前時間點之一新SLAM地圖及更新上述移動載具位於上述新SLAM地圖中之一定位資訊(例如,位置及方位)。更詳細地說明,此移動載具之處理器係使用上述非SLAM定位裝置所偵測出上述移動載具於上述目前時間點的一位置及一方位更新上述SLAM地圖為上述新SLAM地圖及更新上述定位資訊。舉例來說,移動載具之SLAM定位裝置在目前時間點i偵測到移動載具位於SLAM地圖的位置及方位分別為opt_p_i (x_i, y_i)及opt_a_i(a_i),而移動載具之非SLAM定位裝置在目前時間點i偵測到移動載具位於SLAM地圖的位置及方位分別為rf_p_i (x_i, y_i)及rf_a_i(a_i)。當在目前時間點i滿足上述條件時,移動載具之處理器將SLAM定位裝置偵測到移動載具位於SLAM地圖的位置及方位從opt_p_i (x_i, y_i)及opt_a_i(a_i)更新為rf_p_i (x_i, y_i)及rf_a_i(a_i)。SLAM定位裝置接著以移動載具位於SLAM地圖的位置及方位rf_p_i (x_i, y_i)及rf_a_i(a_i)更新SLAM地圖為對應目前時間點i的一新SLAM地圖。在SLAM定位裝置將舊的SLAM地圖更新為新SLAM地圖後,非SLAM定位裝置會不定時將舊的SLAM地圖更新為新SLAM地圖。
在另一實施例中,在步驟S325中,在更新上述SLAM地圖為上述新SLAM地圖及更新上述定位資訊之前,移動載具更可藉由非SLAM定位裝置計算移動載具於目前時間點的一第一可信任值,以及藉由SLAM定位裝置計算移動載具於目前時間點的一第二可信任值。可信任值表示重新定位之結果是否為可信任的。
當上述第一可信任值或上述第二可信任度高於一閾值時,移動載具才更新上述SLAM地圖為對應上述目前時間點之上述新SLAM地圖及更新上述移動載具位於上述新SLAM地圖中之上述定位資訊。當上述第一可信任值或上述第二可信任度未高於上述閾值時,移動載具放棄更新SLAM地圖及移動載具之定位資訊。
更詳細地說明,上述第一可信任值及上述第二可信任值可以用以下python程式碼來表示,其中輸入參數至少有SLAM定位裝置於時間t時取得移動載具位於SLAM地圖的位置opt_p_t (x_t, y_t)及方位opt_a_t(a_t)或非SLAM定位裝置於時間t時取得移動載具位於SLAM地圖的位置rf_p_t (x_t, y_t)及方位及rf_a_t(a_t),而「#」及其右側的文字表示程式中之註解。
在另一實施例中,上述第一可信任值及第二可信任度係均值函數,如mean(p)。
p=[0.5 for i in range(360)] #初始假設機率 for i in range(360): #時間t時,移動載具的位置rf_p_t (x_t, y_t)及方位rf_a_t(a_t)或位置opt_p_t (x_t, y_t)及方位opt_a_t(a_t) #bias_i=i*pi/180 #時間t時,所有i機率估算map自訂義函數 p[i]=map(x_t+LiDAR[i]*cos(a_t+bias_i), y_t+LiDAR[i]*sin(a_t+bias_i)) |
此外,移動載具100中之處理器112亦可與SLAM定位裝置102及非SLAM定位裝置104整合至一起。而移動載具100中之處理器112也可執行記憶體114中之程式1142以呈現上述實施例所述之動作和步驟,或其它在說明書中內容之描述。
因此,透過本揭露利用在一SLAM地圖中重新定位一移動載具的方法及移動載具,移動載具之SLAM定位裝置可藉由使用另一精準的非SLAM定位裝置所提供之位置及方位重新將自己定位在目前所繪製的SLAM地圖,以提高在SLAM地圖中定位的精確度。
對於本發明已描述的實施例,下文描述了可以實現本發明實施例的示例性操作環境。具體參考第5圖,第5圖係顯示用以實現本發明實施例的示例性操作環境,一般可被視為計算裝置500。計算裝置500僅為一合適計算環境的一個示例,並不意圖暗示對本發明使用或功能範圍的任何限制。計算裝置500也不應被解釋為具有與所示元件任一或組合相關任何的依賴性或要求。
本發明可在電腦程式碼或機器可使用指令來執行本發明,指令可為程式模組的電腦可執行指令,其程式模組由電腦或其它機器,例如個人數位助理或其它可攜式裝置執行。一般而言,程式模組包括例程、程式、物件、元件、數據結構等,程式模組指的是執行特定任務或實現特定抽象數據類型的程式碼。本發明可在各種系統組態中實現,包括可攜式裝置、消費者電子產品、通用電腦、更專業的計算裝置等。本發明還可在分散式運算環境中實現,處理由通訊網路所連結的裝置。
參考第5圖。計算裝置500包括直接或間接耦接以下裝置的匯流排510、記憶體512、一或多個處理器514、一或多個顯示元件516、輸入/輸出(I/O)埠口518、輸入/輸出(I/O)元件520以及說明性電源供應器522。匯流排510表示可為一或多個匯流排之元件(例如,位址匯流排、數據匯流排或其組合)。雖然第5圖的各個方塊為簡要起見以線示出,實際上,各個元件的分界並不是具體的,例如,可將顯示裝置的呈現元件視為I/O元件;處理器可具有記憶體。
計算裝置500一般包括各種電腦可讀取媒體。電腦可讀取媒體可以是可被計算裝置500存取的任何可用媒體,該媒體同時包括易揮發性和非易揮發性媒體、可移動和不可移動媒體。舉例但不侷限於,電腦可讀取媒體可包括電腦儲存媒體和通訊媒體。電腦可讀取媒體同時包括在用於儲存像是電腦可讀取指令、資料結構、程式模組或其它數據之類資訊的任何方法或技術中實現的易揮發性性和非易揮發性媒體、可移動和不可移動媒體。電腦儲存媒體包括但不侷限於隨機存取記憶體(Random Access Memory,RAM)、唯讀記憶體(Read-Only Memory,ROM)、電子抹除式可複寫唯讀記憶體(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、快閃記憶體或其它記憶體技術、唯讀記憶光碟(Compact Disc Read-Only Memory, CD-ROM)、數位多功能光碟(Digital Versatile Disc,DVD)或其它光碟儲存裝置、磁片、磁碟、磁片儲存裝置或其它磁儲存裝置,或可用於儲存所需的資訊並且可被計算裝置500存取的其它任何媒體。電腦儲存媒體本身不包括信號。
通訊媒體一般包含電腦可讀取指令、資料結構、程式模組或其它採用諸如載波或其他傳輸機制之類的模組化數據訊號形式的數據,並包括任何資訊傳遞媒體。術語「模組化數據訊號」係指具有一或多個特徵集合或以在訊號中編碼資訊之一方式更改的訊號。舉例但不侷限於,通訊媒體包括像是有線網路或直接有線連接的有線媒體及無線媒體,像是聲頻、射頻、紅外線以及其它無線媒體。上述媒體的組合包括在電腦可讀取媒體的範圍內。
記憶體512包括以易揮發性和非易揮發性記憶體形式的電腦儲存媒體。記憶體可為可移動、不移動或可以為這兩種的組合。示例性硬體裝置包括固態記憶體、硬碟驅動器、光碟驅動器等。計算裝置500包括一或多個處理器,其讀取來自像是記憶體512或I/O元件520各實體的數據。顯示元件516向使用者或其它裝置顯示數據指示。示例性顯示元件包括顯示裝置、揚聲器、列印元件、振動元件等。
I/O埠口518允許計算裝置500邏輯連接到包括I/O元件520的其它裝置,一些此種裝置為內建裝置。示例性元件包括麥克風、搖桿、遊戲台、碟形衛星訊號接收器、掃描器、印表機、無線裝置等。I/O元件520可提供一自然使用者介面,用於處理使用者生成的姿勢、聲音或其它生理輸入。在一些例子中,這些輸入可被傳送到一合適的網路元件以便進一步處理。計算裝置500可裝備有深度照相機,像是立體照相機系統、紅外線照相機系統、RGB照相機系統和這些系統的組合,以偵測與識別物件。此外,計算裝置500可以裝備有感測器(例如:雷達、光達)週期性地感測周遭一感測範圍內的鄰近環境,產生表示自身與周遭環境關聯的感測器資訊。再者,計算裝置500可以裝備有偵測運動的加速度計或陀螺儀。加速度計或陀螺儀的輸出可被提供給計算裝置500顯示。
此外,計算裝置500中之處理器514也可執行記憶體512中之程式及指令以呈現上述實施例所述之動作和步驟,或其它在說明書中內容之描述。
在此所揭露程序之任何具體順序或分層之步驟純為一舉例之方式。基於設計上之偏好,必須了解到程序上之任何具體順序或分層之步驟可在此文件所揭露的範圍內被重新安排。伴隨之方法權利要求以一示例順序呈現出各種步驟之元件,也因此不應被此所展示之特定順序或階層所限制。
申請專利範圍中用以修飾元件之「第一」、「第二」、「第三」等序數詞之使用本身未暗示任何優先權、優先次序、各元件之間之先後次序、或方法所執行之步驟之次序,而僅用作標識來區分具有相同名稱(具有不同序數詞)之不同元件。
雖然本揭露已以實施範例揭露如上,然其並非用以限定本案,任何熟悉此項技藝者,在不脫離本揭露之精神和範圍內,當可做些許更動與潤飾,因此本案之保護範圍當視後附之申請專利範圍所界定者為準。
100:移動載具
102:SLAM定位裝置
104:非SLAM定位裝置
110:計算裝置
112:處理器
114:記憶體
1142:程式
200:SLAM地圖
300:方法流程圖
S305,S310,S315,S320,S325,S330:步驟
410:SLAM地圖
420:SLAM地圖
500:計算裝置
510:匯流排
512:記憶體
514:處理器
516:顯示元件
518:I/O埠口
520:I/O元件
522:電源供應器
第1圖示意性地示出了裝配有SLAM定位裝置及非SLAM定位裝置之以無人載具設備形式的移動載具。
第2圖係顯示根據本揭露一實施例所述之移動載具根據SLAM定位裝置所獲得的數據生成的SLAM地圖。
第3圖係顯示根據本揭露一實施例所述之在一即時定位與地圖繪製地圖中重新定位一移動載具的方法流程圖。
第4圖係為係顯示根據本揭露一實施例所述之SLAM地圖疊合的示意圖。
第5圖係顯示用以實現本揭露實施例的示例性操作環境。
300:方法流程圖
S305,S310,S315,S320,S325,S330:步驟
Claims (20)
- 一種在一即時定位與地圖繪製(Simultaneous Localizat1nand Mapping,SLAM)地圖中重新定位一移動載具的方法,用於在一區域中移動的上述移動載具中,包括: 在一初始時間點使用SLAM建立對應上述區域之上述SLAM地圖; 藉由一非SLAM定位裝置在上述SLAM地圖上偵測上述移動載具的一第一位置軌跡及一第一方位軌跡; 藉由一SLAM定位裝置偵測上述移動載具在一第一時間戳及一第二時間戳之間的一迷失機率; 判斷是否滿足一條件;以及 當在一目前時間點滿足上述條件時,更新上述SLAM地圖為對應上述目前時間點之一新SLAM地圖及更新上述移動載具位於上述新SLAM地圖中之一定位資訊; 其中上述條件係為下列其中之一: 上述位置軌跡或上述方位軌跡不介於一第一範圍之間以及上述迷失機率不介於一第二範圍之間;以及 上述迷失機率不介於上述第二範圍之間。
- 如請求項1所述之在一SLAM地圖中重新定位一移動載具的方法,其中更新上述SLAM地圖為上述新SLAM地圖及更新上述定位資訊之步驟更包括: 使用上述非SLAM定位裝置所偵測出上述移動載具於上述目前時間點的一位置及一方位更新上述SLAM地圖為上述新SLAM地圖及更新上述定位資訊。
- 如請求項1所述之在一SLAM地圖中重新定位一移動載具的方法,其中在更新上述SLAM地圖為上述新SLAM地圖及更新上述定位資訊之前,上述方法更包括: 藉由上述非SLAM定位裝置計算上述移動載具於上述目前時間點的一第一可信任值; 藉由上述SLAM定位裝置計算上述移動載具於上述目前時間點的一第二可信任值;以及 當上述第一可信任值或上述第二可信任度高於一閾值時,更新上述SLAM地圖為對應上述目前時間點之上述新SLAM地圖及更新上述移動載具位於上述新SLAM地圖中之上述定位資訊。
- 如請求項3所述之在一SLAM地圖中重新定位一移動載具的方法,其中上述第一可信任值及上述第二可信任度係一均值函數。
- 如請求項1所述之在一SLAM地圖中重新定位一移動載具的方法,其中上述迷失機率係為上述移動載具在上述第一時間戳及上述第二時間戳之間所移動之一第二位置軌跡、一第二方位軌跡或上述SLAM地圖在上述第一時間戳與上述第二時間戳之間的一疊合差異。
- 如請求項1所述之在一SLAM地圖中重新定位一移動載具的方法,其中上述迷失機率係一均值函數。
- 如請求項1所述之在一SLAM地圖中重新定位一移動載具的方法,其中上述SLAM定位裝置即時於上述目前時間點將上述SLAM地圖更新為上述新SLAM地圖。
- 如請求項1所述之在一SLAM地圖中重新定位一移動載具的方法,其中上述非SLAM定位裝置不定時將上述SLAM地圖更新為上述新SLAM地圖。
- 如請求項1所述之在一SLAM地圖中重新定位一移動載具的方法,其中上述第一時間戳及上述第二時間戳係為連續的時間戳。
- 如請求項1所述之在一SLAM地圖中重新定位一移動載具的方法,其中上述第一時間戳及上述第二時間戳係為不連續的時間戳。
- 一種移動載具,用於在一區域中移動,包括: 一計算裝置,在一初始時間點使用SLAM建立對應上述區域之上述SLAM地圖; 一非SLAM定位裝置,連接至上述計算裝置,在上述SLAM地圖上偵測上述移動載具的一第一位置軌跡及一第一方位軌跡;以及 一SLAM定位裝置,連接至上述計算裝置,偵測上述移動載具在一第一時間戳及一第二時間戳之間的一迷失機率: 其中上述計算裝置判斷是否滿足一條件;以及當在一目前時間點滿足上述條件時,更新上述SLAM地圖為對應上述目前時間點之一新SLAM地圖及更新上述移動載具位於上述新SLAM地圖中之一定位資訊; 其中上述條件係為下列其中之一: 上述位置軌跡或上述方位軌跡不介於一第一範圍之間以及上述迷失機率不介於一第二範圍之間;以及 上述迷失機率不介於上述第二範圍之間。
- 如請求項11所述之移動載具,其中更新上述SLAM地圖為上述新SLAM地圖及更新上述定位資訊之步驟更包括: 使用上述非SLAM定位裝置所偵測出上述移動載具於上述目前時間點的一位置及一方位更新上述SLAM地圖為上述新SLAM地圖及更新上述定位資訊。
- 如請求項11所述之移動載具,其中在更新上述SLAM地圖為上述新SLAM地圖及更新上述定位資訊之前,上述移動載具更執行: 上述非SLAM定位裝置計算上述移動載具於上述目前時間點的一第一可信任值; 上述SLAM定位裝置計算上述移動載具於上述目前時間點的一第二可信任值;以及 當上述第一可信任值或上述第二可信任度高於一閾值時,上述計算裝置更新上述SLAM地圖為對應上述目前時間點之上述新SLAM地圖及更新上述移動載具位於上述新SLAM地圖中之上述定位資訊。
- 如請求項13所述之移動載具,其中上述第一可信任值及上述第二可信任度係一均值函數。
- 如請求項11所述之移動載具,其中上述迷失機率係為上述移動載具在上述第一時間戳及上述第二時間戳之間所移動之一第二位置軌跡、一第二方位軌跡或上述SLAM地圖在上述第一時間戳與上述第二時間戳之間的一疊合差異。
- 如請求項11所述之移動載具,其中上述迷失機率係一均值函數。
- 如請求項11所述之移動載具,其中上述SLAM定位裝置即時於上述目前時間點將上述SLAM地圖更新為上述新SLAM地圖。
- 如請求項11所述之移動載具,其中上述非SLAM定位裝置不定時將上述SLAM地圖更新為上述新SLAM地圖。
- 如請求項11所述之移動載具,其中上述第一時間戳及上述第二時間戳係為連續的時間戳。
- 如請求項11所述之移動載具,其中上述第一時間戳及上述第二時間戳係為不連續的時間戳。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109115019A TW202142835A (zh) | 2020-05-06 | 2020-05-06 | 在一slam地圖中重新定位一移動載具的方法及移動載具 |
CN202010800299.4A CN113618729A (zh) | 2020-05-06 | 2020-08-11 | 在slam地图中重新定位移动载具的方法及移动载具 |
AU2020230251A AU2020230251B2 (en) | 2020-05-06 | 2020-09-08 | Method for relocating a mobile vehicle in a slam map and mobile vehicle |
US17/016,116 US11674817B2 (en) | 2020-05-06 | 2020-09-09 | Method for relocating a mobile vehicle in a SLAM map and mobile vehicle |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109115019A TW202142835A (zh) | 2020-05-06 | 2020-05-06 | 在一slam地圖中重新定位一移動載具的方法及移動載具 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202142835A true TW202142835A (zh) | 2021-11-16 |
Family
ID=78377766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109115019A TW202142835A (zh) | 2020-05-06 | 2020-05-06 | 在一slam地圖中重新定位一移動載具的方法及移動載具 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11674817B2 (zh) |
CN (1) | CN113618729A (zh) |
AU (1) | AU2020230251B2 (zh) |
TW (1) | TW202142835A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116968037B (zh) * | 2023-09-21 | 2024-01-23 | 杭州芯控智能科技有限公司 | 一种多机械臂协同任务调度方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102016102644A1 (de) * | 2016-02-15 | 2017-08-17 | RobArt GmbH | Verfahren zur Steuerung eines autonomen mobilen Roboters |
US11556125B2 (en) | 2018-01-05 | 2023-01-17 | Irobot Corporation | Mapping, controlling, and displaying networked devices with a mobile cleaning robot |
US11681303B2 (en) * | 2018-07-06 | 2023-06-20 | Verity Ag | Methods and systems for estimating the orientation of an object |
-
2020
- 2020-05-06 TW TW109115019A patent/TW202142835A/zh unknown
- 2020-08-11 CN CN202010800299.4A patent/CN113618729A/zh active Pending
- 2020-09-08 AU AU2020230251A patent/AU2020230251B2/en active Active
- 2020-09-09 US US17/016,116 patent/US11674817B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
AU2020230251B2 (en) | 2022-06-02 |
US11674817B2 (en) | 2023-06-13 |
US20210348941A1 (en) | 2021-11-11 |
CN113618729A (zh) | 2021-11-09 |
AU2020230251A1 (en) | 2021-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021128777A1 (en) | Method, apparatus, device, and storage medium for detecting travelable region | |
US10049455B2 (en) | Physically-constrained radiomaps | |
US9304970B2 (en) | Extended fingerprint generation | |
US8897947B2 (en) | Autonomous mobile device | |
US7374103B2 (en) | Object localization | |
KR102518534B1 (ko) | 차량 위치 인식 장치 및 방법 | |
CN110319834B (zh) | 一种室内机器人定位的方法及机器人 | |
JP2020503507A (ja) | 測位方法、端末及びサーバー | |
US20130138337A1 (en) | Digest for Localization or Fingerprinted Overlay | |
WO2018214825A1 (zh) | 一种检测未知位置的障碍物存在概率的方法和装置 | |
CN114391777B (zh) | 清洁机器人的障碍躲避方法、装置、电子设备及介质 | |
JP2010224755A (ja) | 移動体及び移動体の位置推定方法 | |
US20180275663A1 (en) | Autonomous movement apparatus and movement control system | |
TW202102959A (zh) | 用於合併關於自動化機器人之單原點的不連續地圖及路線數據之系統及方法 | |
TW202142835A (zh) | 在一slam地圖中重新定位一移動載具的方法及移動載具 | |
JP6610466B2 (ja) | 車両制御システム | |
WO2018076720A1 (zh) | 单手操控方法及操控系统 | |
US9811165B2 (en) | Electronic system with gesture processing mechanism and method of operation thereof | |
WO2019183928A1 (zh) | 一种室内机器人定位的方法及机器人 | |
CN113375657A (zh) | 电子地图的更新方法、装置和电子设备 | |
JP2010250695A (ja) | タッチパネルディスプレイ、電子機器、補正方法、およびプログラム | |
WO2019233299A1 (zh) | 地图构建方法、装置及计算机可读存储介质 | |
KR20220102058A (ko) | 로봇 및 그 제어 방법 | |
JP2019148456A (ja) | 算出装置、自己位置算出方法、およびプログラム | |
KR102513036B1 (ko) | 3차원 공간 상의 오브젝트를 맵핑하기 위한 평면을 결정하는 방법 및 장치 |