KR20220034843A - Systems and methods for real-time control of autonomous devices - Google Patents
Systems and methods for real-time control of autonomous devices Download PDFInfo
- Publication number
- KR20220034843A KR20220034843A KR1020227004537A KR20227004537A KR20220034843A KR 20220034843 A KR20220034843 A KR 20220034843A KR 1020227004537 A KR1020227004537 A KR 1020227004537A KR 20227004537 A KR20227004537 A KR 20227004537A KR 20220034843 A KR20220034843 A KR 20220034843A
- Authority
- KR
- South Korea
- Prior art keywords
- occupancy grid
- sdsf
- grid
- processor
- data
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 262
- 230000007613 environmental effect Effects 0.000 claims abstract description 44
- 238000012384 transportation and delivery Methods 0.000 claims description 73
- 230000003068 static effect Effects 0.000 claims description 41
- 238000002372 labelling Methods 0.000 claims description 28
- 238000001816 cooling Methods 0.000 claims description 20
- 238000001914 filtration Methods 0.000 claims description 20
- 230000001052 transient effect Effects 0.000 claims description 20
- 238000009966 trimming Methods 0.000 claims description 19
- 238000009499 grossing Methods 0.000 claims description 18
- 239000007788 liquid Substances 0.000 claims description 18
- 230000008859 change Effects 0.000 claims description 16
- 239000000872 buffer Substances 0.000 claims description 13
- 238000005259 measurement Methods 0.000 claims description 10
- 238000004146 energy storage Methods 0.000 claims description 4
- 238000005286 illumination Methods 0.000 claims description 4
- 230000004888 barrier function Effects 0.000 claims description 3
- 230000000694 effects Effects 0.000 claims 1
- 230000000284 resting effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 29
- 230000008569 process Effects 0.000 description 24
- 235000012489 doughnuts Nutrition 0.000 description 21
- 238000012545 processing Methods 0.000 description 18
- 238000013528 artificial neural network Methods 0.000 description 17
- 238000001514 detection method Methods 0.000 description 12
- 230000000712 assembly Effects 0.000 description 10
- 238000000429 assembly Methods 0.000 description 10
- 230000009194 climbing Effects 0.000 description 10
- 230000001276 controlling effect Effects 0.000 description 8
- 239000002826 coolant Substances 0.000 description 8
- 238000013459 approach Methods 0.000 description 7
- 239000003607 modifier Substances 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000008447 perception Effects 0.000 description 5
- 238000013439 planning Methods 0.000 description 5
- 230000011218 segmentation Effects 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 230000001131 transforming effect Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 241000282373 Panthera pardus Species 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000010267 cellular communication Effects 0.000 description 2
- 230000001143 conditioned effect Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 239000000428 dust Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000004441 surface measurement Methods 0.000 description 2
- 238000002604 ultrasonography Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- NAPPWIFDUAHTRY-XYDRQXHOSA-N (8r,9s,10r,13s,14s,17r)-17-ethynyl-17-hydroxy-13-methyl-1,2,6,7,8,9,10,11,12,14,15,16-dodecahydrocyclopenta[a]phenanthren-3-one;(8r,9s,13s,14s,17r)-17-ethynyl-13-methyl-7,8,9,11,12,14,15,16-octahydro-6h-cyclopenta[a]phenanthrene-3,17-diol Chemical compound O=C1CC[C@@H]2[C@H]3CC[C@](C)([C@](CC4)(O)C#C)[C@@H]4[C@@H]3CCC2=C1.OC1=CC=C2[C@H]3CC[C@](C)([C@](CC4)(O)C#C)[C@@H]4[C@@H]3CCC2=C1 NAPPWIFDUAHTRY-XYDRQXHOSA-N 0.000 description 1
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- 244000025254 Cannabis sativa Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 239000010426 asphalt Substances 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000002567 autonomic effect Effects 0.000 description 1
- 238000013398 bayesian method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000011449 brick Substances 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000004567 concrete Substances 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 239000000110 cooling liquid Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000011049 filling Methods 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 239000004519 grease Substances 0.000 description 1
- 230000017525 heat dissipation Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 238000011068 loading method Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000002362 mulch Substances 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 150000003071 polychlorinated biphenyls Chemical class 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 239000004576 sand Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
- 239000002023 wood Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0025—Planning or execution of driving tasks specially adapted for specific operations
- B60W60/00256—Delivery operations
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
- B60W30/08—Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/02—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
-
- 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/3453—Special cost functions, i.e. other than distance or default speed limit of road segments
- G01C21/3461—Preferred or disfavoured areas, e.g. dangerous zones, toll or emission zones, intersections, manoeuvre types, segments such as motorways, toll roads, ferries
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S13/00—Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
- G01S13/86—Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
- G01S13/865—Combination of radar systems with lidar systems
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S13/00—Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
- G01S13/86—Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
- G01S13/867—Combination of radar systems with cameras
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S13/00—Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
- G01S13/88—Radar or analogous systems specially adapted for specific applications
- G01S13/93—Radar or analogous systems specially adapted for specific applications for anti-collision purposes
- G01S13/931—Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S15/00—Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems
- G01S15/86—Combinations of sonar systems with lidar systems; Combinations of sonar systems with systems not using wave reflection
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S15/00—Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems
- G01S15/88—Sonar systems specially adapted for specific applications
- G01S15/93—Sonar systems specially adapted for specific applications for anti-collision purposes
- G01S15/931—Sonar systems specially adapted for specific applications for anti-collision purposes of land vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/02—Systems using the reflection of electromagnetic waves other than radio waves
- G01S17/06—Systems determining position data of a target
- G01S17/42—Simultaneous measurement of distance and other co-ordinates
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/86—Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/93—Lidar systems specially adapted for specific applications for anti-collision purposes
- G01S17/931—Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S7/00—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
- G01S7/48—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
- G01S7/4808—Evaluating distance, position or velocity data
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
- G05D1/0248—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means in combination with a laser
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
- G05D1/0251—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0002—Automatic control, details of type of controller or control system architecture
- B60W2050/0004—In digital systems, e.g. discrete-time systems involving sampling
- B60W2050/0005—Processor details or data handling, e.g. memory registers or chip architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0002—Automatic control, details of type of controller or control system architecture
- B60W2050/0008—Feedback, closed loop systems or details of feedback error signal
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0043—Signal treatments, identification of variables or parameters, parameter estimation or state estimation
- B60W2050/0052—Filtering, filters
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2420/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/40—Photo or light sensitive means, e.g. infrared sensors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2420/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/40—Photo or light sensitive means, e.g. infrared sensors
- B60W2420/403—Image sensing, e.g. optical camera
-
- B60W2420/408—
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2420/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/54—Audio sensitive means, e.g. ultrasound
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2556/00—Input parameters relating to data
- B60W2556/45—External transmission of data to or from the vehicle
- B60W2556/50—External transmission of data to or from the vehicle for navigation systems
Abstract
바람직하게 능력들이 변화되고, 바람직하게 위치되고, 바람직하게 환경 조건들에 영향을 받지 않는 센서들을 갖는 자율 차량. 예를 들어, 센서들로부터의 데이터와 함께 실질적으로 불연속적인 표면 피처들을 포함하는 맵을 수신하고, 맵 및 데이터에 기초하여 점유 그리드를 생성하고, 자율 차량이 내비게이팅하는 표면의 타입에 기초하여 자율 차량의 구성을 변경할 수 있는, 자율 차량 상에서 실행되는 시스템. 디바이스는 불연속적인 표면들 및 다른 장애물들을 횡단하는 것을 포함하여, 표면들 및 표면 피처들을 안전하게 내비게이팅할 수 있다.An autonomous vehicle having sensors, preferably in which capabilities are varied, preferably located, and preferably not affected by environmental conditions. For example, receive a map comprising substantially discrete surface features along with data from sensors, generate an occupancy grid based on the map and data, and autonomously based on the type of surface the autonomous vehicle navigates to. A system running on an autonomous vehicle capable of changing the configuration of the vehicle. The device can safely navigate surfaces and surface features, including traversing discrete surfaces and other obstacles.
Description
관련 출원들에 대한 상호 참조CROSS-REFERENCE TO RELATED APPLICATIONS
본 유틸리티 특허 출원은, 본 명세서에서 그 전체가 참조로 포함되는, 2020년 2월 25일에 출원된 "System and Method for Surface Feature Detection and Traversal"라는 명칭의 미국 특허 출원 제16/800,497호(대리인 관리 번호 AA164)의 일부 계속 출원이다. 이 특허 출원은 2019년 7월 10일에 출원된 "Apparatus for Long and Short Range Sensors on an Autonomous Delivery Device"라는 명칭의 미국 가특허 출원 제62/872,396호(대리인 관리 번호 AA028), 2020년 3월 17일에 출원된 "System and Method for Managing an Occupancy Grid"라는 명칭의 미국 가특허 출원 제62/990,485호(대리인 관리 번호 AA037), 및 2019년 7월 10일에 출원된 "System and Method for Real-Time Control of the Configuration of an Autonomous Device"라는 명칭의 미국 가특허 출원 제62/872,320호(대리인 관리 번호 Z96)의 이익을 주장한다.This utility patent application is filed in U.S. Patent Application Serial No. 16/800,497, entitled “System and Method for Surface Feature Detection and Traversal,” filed on February 25, 2020, which is incorporated herein by reference in its entirety, and is incorporated herein by reference in its entirety. It is a continuation application in part under Accession No. AA164). This patent application is filed in U.S. Provisional Patent Application Serial No. 62/872,396 (Attorney Docket No. AA028), entitled “Apparatus for Long and Short Range Sensors on an Autonomous Delivery Device,” filed July 10, 2019, March 2020; U.S. Provisional Patent Application No. 62/990,485 (Attorney Docket No. AA037), entitled “System and Method for Managing an Occupancy Grid,” filed on July 17, and “System and Method for Real,” filed July 10, 2019 -Time Control of the Configuration of an Autonomous Device."
본 출원은 2018년 7월 13일자로 출원된 "MOBILITY DEVICE"라는 명칭의 미국 특허 출원 제16/035,205호(대리인 관리 번호 X80), 2017년 10월 18일자로 출원된 "MOBILITY DEVICE"라는 명칭의 미국 특허 출원 제15/787,613호(대리인 관리 번호 W10), 2017년 5월 20일자로 출원된 "MOBILITY DEVICE"라는 명칭의 미국 특허 출원 제15/600,703호(대리인 관리 번호 U22), 2018년 5월 17일자로 출원된 "SYSTEM AND METHOD FOR SECURE REMOTE CONTROL OF A MEDICAL DEVICE"라는 명칭의 미국 특허 출원 제15/982,737호(대리인 관리 번호 X55), 2017년 7월 15일자로 출원된 "MOBILITY DEVICE IMPROVEMENTS"라는 명칭의 미국 가출원 제62/532,993호(대리인 관리 번호 U30), 2017년 9월 15일자로 출원된 "MOBILITY DEVICE SEAT"라는 명칭의 미국 가출원 제62/559,263호(대리인 관리 번호 V85), 및 2017년 11월 4일자로 출원된 "MOBILITY DEVICE SEAT"라는 명칭의 미국 가출원 제62/581,670호(대리인 관리 번호 W07)와 관련되고, 이들은 본 명세서에서 그 전체가 참조로 포함된다.This application is entitled to U.S. Patent Application No. 16/035,205 (Attorney Docket No. X80), entitled “MOBILITY DEVICE,” filed on July 13, 2018, and entitled “MOBILITY DEVICE,” filed on October 18, 2017. U.S. Patent Application Serial No. 15/787,613 (Attorney Docket No. W10); U.S. Patent Application Serial No. 15/982,737 (Attorney Docket No. X55), entitled “SYSTEM AND METHOD FOR SECURE REMOTE CONTROL OF A MEDICAL DEVICE,” filed on July 17, and “MOBILITY DEVICE IMPROVEMENTS,” filed July 15, 2017. U.S. Provisional Application No. 62/532,993 (Attorney Docket No. U30), entitled U.S. Provisional Application No. 62/559,263, entitled "MOBILITY DEVICE SEAT", filed September 15, 2017 (Attorney Docket No. V85), and 2017 to U.S. Provisional Application No. 62/581,670 (Attorney Docket No. W07), entitled “MOBILITY DEVICE SEAT,” filed on November 4, 2011, which is incorporated herein by reference in its entirety.
본 교시는 일반적으로 AV들에 관한 것으로서, 특히, 자율 경로 계획(autonomous route planning), 전역 점유 그리드 관리(global occupancy grid management), 차량 탑재 센서들(on-vehicle sensors), 표면 피처 검출 및 횡단(surface feature detection and traversal), 및 실시간 차량 구성 변경들(real-time vehicle configuration changes)에 관한 것이다.The present teachings generally relate to AVs, and more particularly, autonomous route planning, global occupancy grid management, on-vehicle sensors, surface feature detection and traversal ( surface feature detection and traversal, and real-time vehicle configuration changes.
AV들 및 반-자율 차량(AV)들의 내비게이션은 전형적으로, 예를 들어, 제한적인 것은 아니지만, LIDAR, 카메라들, 스테레오 카메라들, 및 레이더를 포함하는 장거리 센서들에 의존한다. 장거리 센서들은 AV로부터 4 내지 100 미터에서 감지할 수 있다. 대조적으로, 물체 회피 및/또는 표면 검출은 전형적으로, 예를 들어, 제한적인 것은 아니지만, 스테레오-카메라들, 단거리 레이더, 및 초음파 센서들을 포함하는 단거리 센서들에 의존한다. 이 단거리 센서들은 전형적으로 AV 주위의 약 5 미터까지 면적 또는 체적을 관찰한다. 센서들은, 예를 들어, 그의 환경 내에서 AV를 배향시키고, 거리들, 보도들, 장애물들, 및 열린 공간들을 원하는 목적지에 도달하도록 내비게이팅하는 것을 가능하게 할 수 있다. 센서들은 또한 인간들, 표지판, 교통 신호등들, 장애물들, 및 표면 피처들을 시각화하는 것을 가능하게 할 수 있다.Navigation of AVs and semi-autonomous vehicles (AV) typically relies on long-range sensors including, but not limited to, LIDAR, cameras, stereo cameras, and radar. Long range sensors can sense from 4 to 100 meters from the AV. In contrast, object avoidance and/or surface detection typically relies on short-range sensors including, but not limited to, stereo-cameras, short-range radar, and ultrasonic sensors. These short-range sensors typically observe an area or volume up to about 5 meters around the AV. Sensors may enable, for example, to orient an AV within its environment and navigate streets, sidewalks, obstacles, and open spaces to reach a desired destination. Sensors may also enable visualization of people, signs, traffic lights, obstacles, and surface features.
표면 피처 횡단은 어려울 수 있는데, 그 이유는 표면 피처들, 예를 들어, 제한적인 것은 아니지만, 실질적으로 불연속적인 표면 피처(substantially discontinuous surface feature)(SDSF)들이 이종 토폴로지(heterogeneous topology) 중에서 발견될 수 있고, 그 토폴로지는 특정 지리(geography)에 고유할 수 있기 때문이다. 그러나, 예를 들어, 제한적인 것은 아니지만, 경사들, 에지들, 커브들(curbs), 계단들(steps), 및 커브형 기하구조(curb-like geometry)들(본 명세서에서, 비-제한적인 방식으로, SDSF들 또는 단순히 표면 피처들로서 지칭됨)과 같은 SDSF들은 그들의 식별을 보조할 수 있는 일부 전형적인 특성들을 포함할 수 있다. 표면/도로 조건들 및 표면 타입들은, 예를 들어, 복잡하고 비용이 많이 들 수 있는 다감각 데이터(multisensory data)를 융합함으로써 인식되고 분류될 수 있다. 표면 피처들 및 조건은 AV의 물리적 재구성을 실시간으로 제어하는데 이용될 수 있다.Surface feature traversal can be difficult because surface features such as, but not limited to, substantially discontinuous surface features (SDSFs) may be found among heterogeneous topologies. , and its topology may be unique to a particular geography. However, for example, but not limited to, slopes, edges, curves, steps, and curve-like geometries (herein, non-limiting In a way, SDSFs (referred to as SDSFs or simply surface features) may include some typical properties that may aid their identification. Surface/road conditions and surface types can be recognized and classified, for example, by fusing multisensory data, which can be complex and expensive. Surface features and conditions can be used to control the physical reconstruction of the AV in real time.
AV에 대한 경로 계획 목적을 위해 세계를 표현할 수 있는 점유 그리드의 생성을 가능하게 하기 위해 센서들이 이용될 수 있다. 경로 계획은 공간을 자유롭거나, 점유되거나, 알려지지 않은 것으로 식별하는 그리드를 요구한다. 그러나, 공간이 점유될 확률은 공간에 대한 의사 결정을 개선할 수 있다. 확률들의 로그오즈 표현(Logodds representation)은 0 및 1의 확률의 수치 경계들에서 정확도를 증가시키기 위해 이용될 수 있다. 셀이 점유될 확률은 적어도 새로운 센서 정보, 이전 센서 정보, 및 이전 점유 정보에 의존할 수 있다.Sensors may be used to enable the creation of an occupancy grid that may represent the world for route planning purposes for AV. Path planning requires a grid that identifies space as free, occupied, or unknown. However, the probability that a space will be occupied can improve decision making about the space. A Logodds representation of probabilities can be used to increase accuracy at numerical boundaries of probabilities of 0 and 1. The probability that the cell is occupied may depend at least on the new sensor information, the old sensor information, and the previous occupancy information.
가변 지형 횡단(variable terrain traversal)을 달성하기 위해 수집된 센서 데이터 및 실시간 센서 데이터를 차량의 물리적 구성의 변화와 조합하는 시스템이 필요하다. 물리적 구성 변경, 가변 지형 횡단, 및 물체 회피를 달성하기 위해 유리한 센서 배치가 필요하다. SDSF 식별을 위한 여러 기준들과 연관되는 다중 부분 모델(multi-part model)에 기초하여 SDSF들을 위치결정하는 능력이 필요하다. 후보 횡단 접근 각도, 후보 표면 피처의 양 측 상의 후보 횡단 드라이빙 표면, 및 후보 횡단 경로 장애물들의 실시간 결정과 같은 기준들에 기초하여 후보 표면 피처 횡단들을 결정하는 것이 필요하다. 드라이빙가능 표면 및 디바이스 모드 정보를 점유 그리드 결정에 통합하기 위한 시스템 및 방법이 필요하다.What is needed is a system that combines collected and real-time sensor data with changes in the vehicle's physical configuration to achieve variable terrain traversal. Favorable sensor placement is needed to achieve physical configuration changes, variable terrain traversal, and object avoidance. What is needed is the ability to locate SDSFs based on a multi-part model that is associated with several criteria for SDSF identification. It is necessary to determine candidate surface feature traversals based on criteria such as a candidate traversing approach angle, a candidate traversing driving surface on both sides of the candidate surface feature, and real-time determination of candidate traversing path obstacles. What is needed is a system and method for incorporating drivable surface and device mode information into an occupancy grid determination.
본 교시의 AV는 원하는 위치로 자율적으로 내비게이팅할 수 있다. 일부 구성들에서, AV는 센서들, 지각 서브시스템(perception subsystem), 자율 서브시스템, 및 드라이버 서브시스템을 포함하는 디바이스 제어기, 파워 베이스(power base), 4개의 전동 휠들(powered wheels), 2개의 캐스터 휠들(caster wheels), 및 화물 컨테이너(cargo container)를 포함할 수 있다. 일부 구성들에서, 지각 및 자율 서브시스템들은 센서 정보(지각) 및 맵 정보(지각 및 자율)를 수신 및 처리할 수 있고, 드라이버 서브시스템에 방향을 제공할 수 있다. 맵 정보는 표면 분류들 및 연관된 디바이스 모드를 포함할 수 있다. 드라이버 서브시스템에 의해 제어되고, 파워 베이스에 의해 가능해지는 AV의 이동은 센서 서브시스템에 의해 감지되어, 피드백 루프를 제공할 수 있다. 일부 구성들에서, SDSF들은 포인트 클라우드 데이터로부터 정확하게 식별될 수 있고, 예를 들어, 본 명세서에 설명된 프로세스에 따라 맵에 기억될 수 있다. AV의 위치와 연관된 맵의 부분들은 내비게이션 동안 AV에 제공될 수 있다. 지각 서브시스템은 횡단될 경로가 현재 점유될 확률에 관해 AV에게 통지할 수 있는 점유 그리드를 유지할 수 있다. 일부 구성들에서, AV는 다수의 별개의 모드들에서 동작할 수 있다. 모드들은 다른 이점들 중에서, 복잡한 지형 횡단을 가능하게 할 수 있다. 맵(예를 들어, 표면 분류), 센서 데이터(AV를 둘러싸는 피처들을 감지), 점유 그리드(다가오는 경로 포인트가 점유될 확률), 모드(어려운 지형을 횡단할 준비가 되거나 그렇지 않음)의 조합은 AV의 방향, 구성, 및 속도를 식별하는데 이용될 수 있다.The AV of the present teachings may autonomously navigate to a desired location. In some configurations, the AV is a device controller including sensors, a perception subsystem, an autonomous subsystem, and a driver subsystem, a power base, four powered wheels, two caster wheels, and a cargo container. In some configurations, the perceptual and autonomous subsystems can receive and process sensor information (perception) and map information (perception and autonomy), and can provide direction to the driver subsystem. The map information may include surface classifications and associated device mode. Movement of the AV controlled by the driver subsystem and enabled by the power base may be sensed by the sensor subsystem to provide a feedback loop. In some configurations, SDSFs may be accurately identified from point cloud data, eg, stored in a map according to the process described herein. Portions of the map associated with the location of the AV may be provided to the AV during navigation. The perceptual subsystem may maintain an occupancy grid that may notify the AV about the probability that the path to be traversed is currently occupied. In some configurations, AV may operate in multiple distinct modes. Mods may enable traversing complex terrain, among other advantages. The combination of map (e.g., surface classification), sensor data (detecting features surrounding the AV), occupancy grid (probability that an upcoming path point will be occupied), and mode (ready or not to traverse difficult terrain) is It can be used to identify the direction, configuration, and velocity of the AV.
맵을 준비하는 것과 관련하여, 일부 구성들에서, 본 교시의 방법은 AV가 마주치는 적어도 하나의 SDSF를 내비게이팅하기 위한 맵을 생성하기 위한 것이고, 여기서 AV는 표면 위의 경로를 이동하고, 표면은 적어도 하나의 SDSF를 포함하고, 경로는 시작 포인트 및 종료 포인트를 포함하고, 방법은, 제한적인 것은 아니지만, 표면을 나타내는 포인트 클라우드 데이터에 액세스하는 것, 포인트 클라우드 데이터를 필터링하는 것, 필터링된 포인트 클라우드 데이터를 처리가능 부분들로 형성하는 것, 및 처리가능 부분들을 적어도 하나의 오목 다각형으로 병합하는 것을 포함할 수 있다. 방법은 적어도 하나의 오목 다각형에서 적어도 하나의 SDSF를 위치결정 및 라벨링하는 것을 포함할 수 있다. 위치결정 및 라벨링은 라벨링된 포인트 클라우드 데이터를 형성할 수 있다. 방법은 적어도 하나의 오목 다각형에 적어도 기초하여 그래핑(graphing) 다각형들을 생성하는 것, 및 그래핑 다각형들에 적어도 기초하여 시작 포인트로부터 종료 포인트까지의 경로를 선택하는 것을 포함할 수 있다. 내비게이팅할 때, AV는 경로를 따라 적어도 하나의 SDSF를 횡단할 수 있다.With respect to preparing the map, in some configurations, the method of the present teachings is for generating a map for navigating to at least one SDSF encountered by the AV, wherein the AV travels a path over the surface, and includes at least one SDSF, the path includes a start point and an end point, and the method includes, but is not limited to, accessing point cloud data representing a surface, filtering the point cloud data, a filtered point forming the cloud data into processable portions, and merging the processable portions into at least one concave polygon. The method may include locating and labeling the at least one SDSF in the at least one concave polygon. Positioning and labeling may form labeled point cloud data. The method may include generating graphing polygons based at least on the at least one concave polygon, and selecting a path from a starting point to an ending point based at least on the graphing polygons. When navigating, the AV may traverse at least one SDSF along the path.
포인트 클라우드 데이터를 필터링하는 것은 포인트 클라우드 데이터로부터 과도 물체들(transient objects)을 나타내는 포인트들 및 이상치들(outliers)을 나타내는 포인트들을 조건부로 제거하는 것, 및 미리 선택된 높이를 갖는 제거된 포인트들을 대체하는 것을 선택적으로 포함할 수 있다. 처리 부분들을 형성하는 것은 포인트 클라우드 데이터를 처리가능 부분들로 세그먼트화하는 것, 및 미리 선택된 높이의 포인트들을 처리가능 부분들로부터 제거하는 것을 선택적으로 포함할 수 있다. 처리가능 부분들을 병합하는 것은 이상치들, 복셀들(voxels), 및 법선(normal)을 분석함으로써 처리가능 부분들의 크기를 감소시키는 것, 감소된 크기의 처리가능 부분들로부터 영역들을 성장시키는 것, 성장된 영역들로부터 초기 드다이빙가능 표면들을 결정하는 것, 초기 드라이빙가능 표면들을 세그먼트화 및 메싱(meshing)하는 것, 세그먼트화 및 메싱된 초기 드라이빙가능 표면들 내에 다각형들을 위치결정하는 것, 및 다각형들에 적어도 기초하여 드라이빙가능 표면들을 설정하는 것을 선택적으로 포함할 수 있다. 적어도 하나의 SDSF 피처를 위치결정 및 라벨링하는 것은 SDSF 필터에 따라 드라이빙가능 표면들의 포인트 클라우드 데이터를 정렬(sorting)하는 것―SDSF 필터는 포인트들의 적어도 3개의 카테고리들을 포함함―, 및 포인트들의 카테고리들이, 조합하여, 적어도 하나의 제1 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 포인트를 위치결정하는 것을 선택적으로 포함할 수 있다. 방법은 복수의 적어도 하나의 SDSF 포인트가, 조합하여, 적어도 하나의 제2 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 궤적을 생성하는 것을 선택적으로 포함할 수 있다. 그래핑 다각형들을 생성하는 것은 또한, 적어도 하나의 드라이빙가능 표면으로부터 적어도 하나의 다각형을 생성하는 것을 선택적으로 포함할 수 있다. 적어도 하나의 다각형은 에지들을 포함할 수 있다. 그래핑 다각형들을 생성하는 것은 에지들을 평활화하는 것, 평활화된 에지들에 기초하여 드라이빙 마진을 형성하는 것, 적어도 하나의 SDSF 궤적을 적어도 하나의 드라이빙가능 표면에 추가하는 것, 및 적어도 하나의 제3 미리 선택된 기준에 따라 적어도 하나의 드라이빙가능 표면으로부터 에지들을 제거하는 것을 포함할 수 있다. 에지들을 평활화하는 것은 에지들을 바깥쪽으로 트리밍(trimming)하는 것을 선택적으로 포함할 수 있다. 평활화된 에지들의 드라이빙 마진을 형성하는 것은 바깥쪽 에지들을 안쪽으로 트리밍하는 것을 선택적으로 포함할 수 있다.Filtering the point cloud data includes conditionally removing from the point cloud data points representing transient objects and points representing outliers, and replacing the removed points with a preselected height. may optionally be included. Forming the processing portions may optionally include segmenting the point cloud data into processable portions, and removing points of a preselected height from the processable portions. Merging processable parts includes reducing the size of processable parts by analyzing outliers, voxels, and normals, growing regions from reduced size processable parts, growth Determining initial drivable surfaces from the segmented regions, segmenting and meshing the initial drivable surfaces, positioning polygons within the segmented and meshed initial drivable surfaces, and polygons may optionally include setting the drivable surfaces based at least on locating and labeling the at least one SDSF feature includes sorting the point cloud data of the drivable surfaces according to an SDSF filter, the SDSF filter comprising at least three categories of points, and the categories of points , in combination, locating the at least one SDSF point based at least on whether the at least one first preselected criterion is met. The method may optionally include generating the at least one SDSF trajectory based at least on whether the plurality of at least one SDSF points, in combination, satisfy the at least one second preselected criterion. Generating the graphing polygons may also optionally include generating the at least one polygon from the at least one drivable surface. At least one polygon may include edges. Generating the graphing polygons includes smoothing edges, forming a driving margin based on the smoothed edges, adding at least one SDSF trajectory to the at least one drivable surface, and at least one third and removing edges from the at least one drivable surface according to a preselected criterion. Smoothing the edges may optionally include trimming the edges outward. Forming the driving margin of the smoothed edges may optionally include trimming the outer edges inward.
일부 구성들에서, 본 교시의 시스템은 AV가 마주치는 적어도 하나의 SDSF를 내비게이팅하기 위한 맵을 생성하기 위한 것이고, AV는 표면 위의 경로를 이동하고, 표면은 적어도 하나의 SDSF를 포함하고, 경로는 시작 포인트 및 종료 포인트를 포함하고, 시스템은, 제한적인 것은 아니지만, 표면을 나타내는 포인트 클라우드 데이터에 액세스하는 제1 프로세서, 포인트 클라우드 데이터를 필터링하는 제1 필터, 필터링된 포인트 클라우드 데이터로부터 처리가능 부분들을 형성하는 제2 프로세서, 처리가능 부분들을 적어도 하나의 오목 다각형으로 병합하는 제3 프로세서, 적어도 하나의 오목 다각형에서 적어도 하나의 SDSF를 위치결정 및 라벨링하는 제4 프로세서―위치결정 및 라벨링은 라벨링된 포인트 클라우드 데이터를 형성함―, 그래핑 다각형들을 생성하는 제5 프로세서, 및 그래핑 다각형들에 적어도 기초하여 시작 포인트로부터 종료 포인트까지의 경로를 선택하는 경로 선택기를 포함할 수 있다. AV는 경로를 따라 적어도 하나의 SDSF를 횡단할 수 있다.In some configurations, the system of the present teachings is for generating a map for navigating to the at least one SDSF the AV encounters, the AV moving a path over the surface, the surface comprising the at least one SDSF, The path includes a start point and an end point, and the system is capable of processing from, but not limited to, a first processor to access point cloud data representative of a surface, a first filter to filter the point cloud data, and to process from the filtered point cloud data. a second processor forming the portions, a third processor merging the processable portions into the at least one concave polygon, a fourth processor locating and labeling the at least one SDSF in the at least one concave polygon, wherein the positioning and labeling is labeling forming point cloud data, a fifth processor that generates graphing polygons, and a path selector that selects a path from a starting point to an ending point based at least on the graphing polygons. The AV may traverse at least one SDSF along the path.
제1 필터는, 제한적인 것은 아니지만, 포인트 클라우드 데이터로부터 과도 물체들을 나타내는 포인트들 및 이상치들을 나타내는 포인트들을 조건부로 제거하는 것, 및 미리 선택된 높이를 갖는 제거된 포인트들을 대체하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 세그멘터는, 제한적인 것은 아니지만, 포인트 클라우드 데이터를 처리가능 부분들로 세그먼트화하는 것, 및 미리 선택된 높이의 포인트들을 처리가능 부분들로부터 제거하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 제3 프로세서는, 제한적인 것은 아니지만, 이상치들, 복셀들, 및 법선을 분석함으로써 처리가능 부분들의 크기를 감소시키는 것, 감소된 크기의 처리가능 부분들로부터 영역들을 성장시키는 것, 성장된 영역들로부터 초기 드라이빙가능 표면들을 결정하는 것, 초기 드라이빙가능 표면들을 세그먼트화 및 메싱하는 것, 세그먼트화 및 메싱된 초기 드라이빙가능 표면들 내에 다각형들을 위치결정하는 것, 및 다각형들에 적어도 기초하여 드라이빙가능 표면들을 설정하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 제4 프로세서는, 제한적인 것은 아니지만, SDSF 필터에 따라 드라이빙가능 표면들의 포인트 클라우드 데이터를 정렬하는 것―SDSF 필터는 포인트들의 적어도 3개의 카테고리들을 포함함―, 및 포인트들의 카테고리들이, 조합하여, 적어도 하나의 제1 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 포인트를 위치결정하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 시스템은, 제한적인 것은 아니지만, 복수의 적어도 하나의 SDSF 포인트가, 조합하여, 적어도 하나의 제2 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 궤적을 생성하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다.The first filter may include, but is not limited to, conditionally removing points representing transient objects and points representing outliers from the point cloud data, and replacing the removed points with a preselected height. You can optionally include enable codes. A segmenter may optionally include executable code that may include, but is not limited to, segmenting the point cloud data into processable portions, and removing points of a preselected height from the processable portions. can A third processor includes, but is not limited to, reducing the size of the processable portions by analyzing outliers, voxels, and normals, growing regions from the reduced size processable portions, grown regions determining initial drivable surfaces from, segmenting and meshing the initial drivable surfaces, positioning polygons within the segmented and meshed initial drivable surfaces, and at least based on the polygons the drivable surface It may optionally include executable code that may include configuring them. A fourth processor includes, but is not limited to, sorting the point cloud data of the drivable surfaces according to the SDSF filter, the SDSF filter comprising at least three categories of points, and the categories of points, in combination, at least may optionally include executable code that may include locating the at least one SDSF point based at least on whether the one first preselected criterion is met. The system may include, but is not limited to, generating at least one SDSF trajectory based at least on whether the plurality of at least one SDSF points, in combination, satisfy at least one second preselected criterion. You can optionally include code.
그래핑 다각형들을 생성하는 것은, 제한적인 것은 아니지만, 적어도 하나의 드라이빙가능 표면으로부터 적어도 하나의 다각형을 생성하는 것―적어도 하나의 다각형은 에지들을 포함함―, 에지들을 평활화하는 것, 평활화된 에지들에 기초하여 드라이빙 마진을 형성하는 것, 적어도 하나의 드라이빙가능 표면에 적어도 하나의 SDSF 궤적을 추가하는 것, 및 적어도 하나의 제3 미리 선택된 기준에 따라 적어도 하나의 드라이빙가능 표면으로부터 에지들을 제거하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 에지들을 평활화하는 것은, 제한적인 것은 아니지만, 에지들을 바깥쪽으로 트리밍하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 평활화된 에지들의 드라이빙 마진을 형성하는 것은, 제한적인 것은 아니지만, 바깥쪽 에지들을 안쪽으로 트리밍하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다.Generating the graphing polygons includes, but is not limited to, generating at least one polygon from at least one drivable surface, wherein the at least one polygon includes edges, smoothing edges, smoothed edges forming a driving margin based on , adding at least one SDSF trajectory to the at least one drivable surface, and removing edges from the at least one drivable surface according to at least one third preselected criterion. It can optionally include executable code that it can include. Smoothing the edges may optionally include executable code, which may include, but is not limited to, trimming the edges outward. Forming the driving margin of the smoothed edges may optionally include executable code, which may include, but is not limited to, trimming the outer edges inward.
일부 구성들에서, 본 교시의 방법은 AV가 마주치는 적어도 하나의 SDSF를 내비게이팅하기 위한 맵을 생성하기 위한 것이고, AV는 표면 위의 경로를 이동하고, 표면은 적어도 하나의 SDSF를 포함하고, 경로는 시작 포인트 및 종료 포인트를 포함하고, 방법은, 제한적인 것은 아니지만, 루트 토폴로지(route topology)에 액세스하는 것을 포함할 수 있다. 루트 토폴로지는 필터링된 포인트 클라우드 데이터를 포함할 수 있는 적어도 하나의 그래핑 다각형을 포함할 수 있다. 포인트 클라우드 데이터는 라벨링된 피처들 및 드라이빙가능 마진을 포함할 수 있다. 방법은 포인트 클라우드 데이터를 전역 좌표계(global coordinate system)로 변환하는 것, 적어도 하나의 SDSF의 경계들을 결정하는 것, 경계들 주위에서 미리 선택된 크기의 SDSF 버퍼들을 생성하는 것, 적어도 하나의 SDSF 횡단 기준에 적어도 기초하여 적어도 하나의 SDSF 중 어느 것이 횡단될 수 있는지를 결정하는 것, 적어도 하나의 SDSF 횡단 기준, 변환된 포인트 클라우드 데이터, 및 루트 토폴로지에 적어도 기초하여 에지/가중치 그래프를 생성하는 것, 및 에지/가중치 그래프에 적어도 기초하여 시작 포인트로부터 목적지 포인트까지의 경로를 선택하는 것을 포함할 수 있다.In some configurations, the method of the present teachings is for generating a map for navigating to the at least one SDSF the AV encounters, the AV moving a path over the surface, the surface comprising the at least one SDSF, A route includes a start point and an end point, and the method may include, but is not limited to, accessing a route topology. The route topology may include at least one graphing polygon that may include filtered point cloud data. The point cloud data may include labeled features and a drivable margin. The method includes transforming the point cloud data into a global coordinate system, determining boundaries of at least one SDSF, generating SDSF buffers of a preselected size around the boundaries, at least one SDSF traversing criterion determining which of the at least one SDSF can be traversed based at least on selecting a path from the starting point to the destination point based at least on the edge/weight graph.
적어도 하나의 SDSF 횡단 기준은 적어도 하나의 SDSF의 미리 선택된 폭 및 적어도 하나의 SDSF의 미리 선택된 평활도(smoothness), 드라이빙가능 표면을 포함하는, 적어도 하나의 SDSF와 AV 사이의 최소 진입 거리(minimum ingress distance) 및 최소 진출 거리(minimum egress distance), 및 AV에 의한 적어도 하나의 SDSF로의 대략 90° 접근을 수용할 수 있는, 적어도 하나의 SDSF와 AV 사이의 최소 진입 거리를 선택적으로 포함할 수 있다.The at least one SDSF traversal criterion is a minimum ingress distance between the at least one SDSF and the AV, comprising a preselected width of the at least one SDSF and a preselected smoothness of the at least one SDSF, a drivable surface. ) and a minimum egress distance, and a minimum egress distance between the at least one SDSF and the AV, which can accommodate approximately 90° access to the at least one SDSF by the AV.
일부 구성들에서, 본 교시의 시스템은 AV가 마주치는 적어도 하나의 SDSF를 내비게이팅하기 위한 맵을 생성하기 위한 것이고, AV는 표면 위의 경로를 이동하고, 표면은 적어도 하나의 SDSF를 포함하고, 경로는 시작 포인트 및 종료 포인트를 포함하고, 시스템은, 제한적인 것은 아니지만, 루트 토폴로지에 액세스하는 제6 프로세서를 포함할 수 있다. 루트 토폴로지는 필터링된 포인트 클라우드 데이터를 포함할 수 있는 적어도 하나의 그래핑 다각형을 포함할 수 있다. 포인트 클라우드 데이터는 라벨링된 피처들 및 드라이빙가능 마진을 포함할 수 있다. 시스템은 포인트 클라우드 데이터를 전역 좌표계로 변환하는 제7 프로세서, 및 적어도 하나의 SDSF의 경계들을 결정하는 제8 프로세서를 포함할 수 있다. 제8 프로세서는 경계들 주위의 미리 선택된 크기의 SDSF 버퍼들을 생성할 수 있다. 시스템은 적어도 하나의 SDSF 횡단 기준에 적어도 기초하여 적어도 하나의 SDSF 중 어느 것이 횡단될 수 있는지를 결정하는 제9 프로세서, 적어도 하나의 SDSF 횡단 기준, 변환된 포인트 클라우드 데이터, 및 루트 토폴로지에 적어도 기초하여 에지/가중치 그래프를 생성하는 제10 프로세서, 및 에지/가중치 그래프에 적어도 기초하여 시작 포인트로부터 목적지 포인트까지의 경로를 선택하는 베이스 제어기를 포함할 수 있다.In some configurations, the system of the present teachings is for generating a map for navigating to the at least one SDSF the AV encounters, the AV moving a path over the surface, the surface comprising the at least one SDSF, The path includes a start point and an end point, and the system may include, but is not limited to, a sixth processor to access the route topology. The route topology may include at least one graphing polygon that may include filtered point cloud data. The point cloud data may include labeled features and a drivable margin. The system may include a seventh processor that transforms the point cloud data into a global coordinate system, and an eighth processor that determines boundaries of the at least one SDSF. The eighth processor may create SDSF buffers of a preselected size around the boundaries. The system is configured to determine which of the at least one SDSF can be traversed based at least on the ninth processor based at least on the at least one SDSF traversal criterion, at least based on the at least one SDSF traversal criterion, the transformed point cloud data, and a route topology. a tenth processor to generate an edge/weight graph, and a base controller to select a path from a starting point to a destination point based at least on the edge/weight graph.
일부 구성들에서, 본 교시의 방법은 AV가 마주치는 적어도 하나의 SDSF를 내비게이팅하기 위한 맵을 생성하기 위한 것이고, AV는 표면 위의 경로를 이동하고, 표면은 적어도 하나의 SDSF를 포함하고, 경로는 시작 포인트 및 종료 포인트를 포함하고, 방법은, 제한적인 것은 아니지만, 표면을 나타내는 포인트 클라우드 데이터에 액세스하는 것을 포함할 수 있다. 방법은 포인트 클라우드 데이터를 필터링하는 것, 필터링된 포인트 클라우드 데이터를 처리가능 부분들로 형성하는 단계, 및 처리가능 부분들을 적어도 하나의 오목 다각형으로 병합하는 것을 포함할 수 있다. 방법은 적어도 하나의 오목 다각형에서 적어도 하나의 SDSF를 위치결정 및 라벨링하는 것을 포함할 수 있다. 위치결정 및 라벨링은 라벨링된 포인트 클라우드 데이터를 형성할 수 있다. 방법은 적어도 하나의 오목 다각형에 적어도 기초하여 그래핑 다각형들을 생성하는 것을 포함할 수 있다. 그래핑 다각형들은 루트 토폴로지를 형성할 수 있고, 포인트 클라우드 데이터는 라벨링된 피처들 및 드라이빙가능 마진을 포함할 수 있다. 방법은 포인트 클라우드 데이터를 전역 좌표계로 변환하는 것, 적어도 하나의 SDSF의 경계들을 결정하는 것, 경계들 주위에서 미리 선택된 크기의 SDSF 버퍼들을 생성하는 것, 적어도 하나의 SDSF 횡단 기준에 적어도 기초하여 적어도 하나의 SDSF 중 어느 것이 횡단될 수 있는지를 결정하는 것, 적어도 하나의 SDSF 횡단 기준, 변환된 포인트 클라우드 데이터, 및 루트 토폴로지에 적어도 기초하여 에지/가중치 그래프를 생성하는 것, 및 에지/가중치 그래프에 적어도 기초하여 시작 포인트로부터 목적지 포인트까지의 경로를 선택하는 것을 포함할 수 있다.In some configurations, the method of the present teachings is for generating a map for navigating to the at least one SDSF the AV encounters, the AV moving a path over the surface, the surface comprising the at least one SDSF, The path includes a start point and an end point, and the method may include, but is not limited to, accessing point cloud data representing the surface. The method may include filtering the point cloud data, forming the filtered point cloud data into processable portions, and merging the processable portions into at least one concave polygon. The method may include locating and labeling the at least one SDSF in the at least one concave polygon. Positioning and labeling may form labeled point cloud data. The method may include generating the graphing polygons based at least on the at least one concave polygon. The graphing polygons may form a route topology, and the point cloud data may include labeled features and a drivable margin. The method comprises transforming the point cloud data into a global coordinate system, determining boundaries of at least one SDSF, generating SDSF buffers of a preselected size around the boundaries, at least based on at least one SDSF traversal criterion. determining which of the one SDSF can be traversed, generating an edge/weight graph based at least on the at least one SDSF traversal criterion, the transformed point cloud data, and the root topology, and in the edge/weight graph selecting a route from the starting point to the destination point based on at least.
포인트 클라우드 데이터를 필터링하는 것은 포인트 클라우드 데이터로부터 과도 물체들을 나타내는 포인트들 및 이상치들을 나타내는 포인트들을 조건부로 제거하는 것, 및 미리 선택된 높이를 갖는 제거된 포인트들을 대체하는 것을 선택적으로 포함할 수 있다. 처리 부분들을 형성하는 것은 포인트 클라우드 데이터를 처리가능 부분들로 세그먼트화하는 것, 및 미리 선택된 높이의 포인트들을 처리가능 부분들로부터 제거하는 것을 선택적으로 포함할 수 있다. 처리가능 부분들을 병합하는 것은 이상치들, 복셀들, 및 법선을 분석함으로써 처리가능 부분들의 크기를 감소시키는 것, 감소된 크기의 처리가능 부분들로부터 영역들을 성장시키는 것, 성장된 영역들로부터 초기 드다이빙가능 표면들을 결정하는 것, 초기 드라이빙가능 표면들을 세그먼트화 및 메싱하는 것, 세그먼트화 및 메싱된 초기 드라이빙가능 표면들 내에 다각형들을 위치결정하는 것, 및 다각형들에 적어도 기초하여 드라이빙가능 표면들을 설정하는 것을 선택적으로 포함할 수 있다. 적어도 하나의 SDSF 피처를 위치결정 및 라벨링하는 것은 SDSF 필터에 따라 드라이빙가능 표면들의 포인트 클라우드 데이터를 정렬하는 것―SDSF 필터는 포인트들의 적어도 3개의 카테고리들을 포함함―, 및 포인트들의 카테고리들이, 조합하여, 적어도 하나의 제1 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 포인트를 위치결정하는 것을 선택적으로 포함할 수 있다. 방법은 복수의 적어도 하나의 SDSF 포인트가, 조합하여, 적어도 하나의 제2 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 궤적을 생성하는 것을 선택적으로 포함할 수 있다. 그래핑 다각형들을 생성하는 것은 또한, 적어도 하나의 드라이빙가능 표면으로부터 적어도 하나의 다각형을 생성하는 것을 선택적으로 포함할 수 있다. 적어도 하나의 다각형은 에지들을 포함할 수 있다. 그래핑 다각형들을 생성하는 것은 에지들을 평활화하는 것, 평활화된 에지들에 기초하여 드라이빙 마진을 형성하는 것, 적어도 하나의 SDSF 궤적을 적어도 하나의 드라이빙가능 표면에 추가하는 것, 및 적어도 하나의 제3 미리 선택된 기준에 따라 적어도 하나의 드라이빙가능 표면으로부터 에지들을 제거하는 것을 포함할 수 있다. 에지들의 평활화하는 에지들을 바깥쪽으로 트리밍하는 것을 선택적으로 포함할 수 있다. 평활화된 에지들의 드라이빙 마진을 형성하는 것은 바깥쪽 에지들을 안쪽으로 트리밍하는 것을 선택적으로 포함할 수 있다. 적어도 하나의 SDSF 횡단 기준은 적어도 하나의 SDSF의 미리 선택된 폭 및 적어도 하나의 SDSF의 미리 선택된 평활도, 드라이빙가능 표면을 포함하는, 적어도 하나의 SDSF와 AV 사이의 최소 진입 거리 및 최소 진출 거리, 및 AV에 의한 적어도 하나의 SDSF로의 대략 90° 접근을 수용할 수 있는, 적어도 하나의 SDSF와 AV 사이의 최소 진입 거리를 선택적으로 포함할 수 있다.Filtering the point cloud data may include conditionally removing from the point cloud data points representing transient objects and points representing outliers, and optionally replacing the removed points having a preselected height. Forming the processing portions may optionally include segmenting the point cloud data into processable portions, and removing points of a preselected height from the processable portions. Merging processable parts includes reducing the size of processable parts by analyzing outliers, voxels, and normals, growing regions from reduced sized processable parts, and initial decomposition from grown regions. determining the diverable surfaces, segmenting and meshing the initial drivable surfaces, positioning polygons within the segmented and meshed initial drivable surfaces, and setting the drivable surfaces based at least on the polygons may optionally include Locating and labeling the at least one SDSF feature comprises aligning the point cloud data of the drivable surfaces according to an SDSF filter, the SDSF filter comprising at least three categories of points, and the categories of points, in combination , locating the at least one SDSF point based at least on whether the at least one first preselected criterion is met. The method may optionally include generating the at least one SDSF trajectory based at least on whether the plurality of at least one SDSF points, in combination, satisfy the at least one second preselected criterion. Generating the graphing polygons may also optionally include generating the at least one polygon from the at least one drivable surface. At least one polygon may include edges. Generating the graphing polygons includes smoothing edges, forming a driving margin based on the smoothed edges, adding at least one SDSF trajectory to the at least one drivable surface, and at least one third and removing edges from the at least one drivable surface according to a preselected criterion. may optionally include outwardly trimming the smoothing edges of the edges. Forming the driving margin of the smoothed edges may optionally include trimming the outer edges inward. The at least one SDSF traversal criterion includes a preselected width of the at least one SDSF and a preselected smoothness of the at least one SDSF, a minimum entry distance and a minimum exit distance between the at least one SDSF and the AV, including a drivable surface, and AV may optionally include a minimum entry distance between the at least one SDSF and the AV, which may accommodate approximately 90° access to the at least one SDSF by
일부 구성들에서, 본 교시의 시스템은 AV가 마주치는 적어도 하나의 SDSF를 내비게이팅하기 위한 맵을 생성하기 위한 것이고, AV는 표면 위의 경로를 이동하고, 표면은 적어도 하나의 SDSF를 포함하고, 경로는 시작 포인트 및 종료 포인트를 포함하고, 시스템은, 제한적인 것은 아니지만, 표면을 나타내는 포인트 클라우드 데이터에 액세스하는 포인트 클라우드 액세서, 포인트 클라우드 데이터를 필터링하는 제1 필터, 필터링된 포인트 클라우드 데이터로부터 처리가능 부분들을 형성하는 세그멘터, 처리가능 부분들을 적어도 하나의 오목 다각형으로 병합하는 제3 프로세서, 적어도 하나의 오목 다각형에서 적어도 하나의 SDSF를 위치결정 및 라벨링하는 제4 프로세서―위치결정 및 라벨링은 라벨링된 포인트 클라우드 데이터를 형성함―, 그래핑 다각형들을 생성하는 제5 프로세서를 포함할 수 있다. 루트 토폴로지는 필터링된 포인트 클라우드 데이터를 포함할 수 있는 적어도 하나의 그래핑 다각형을 포함할 수 있다. 포인트 클라우드 데이터는 라벨링된 피처들 및 드라이빙가능 마진을 포함할 수 있다. 시스템은 포인트 클라우드 데이터를 전역 좌표계로 변환하는 제7 프로세서, 및 적어도 하나의 SDSF의 경계들을 결정하는 제8 프로세서를 포함할 수 있다. 제8 프로세서는 경계들 주위에서 미리 선택된 크기의 SDSF 버퍼들을 생성할 수 있다. 시스템은 적어도 하나의 SDSF 횡단 기준에 적어도 기초하여 적어도 하나의 SDSF 중 어느 것이 횡단될 수 있는지를 결정하는 제9 프로세서, 적어도 하나의 SDSF 횡단 기준, 변환된 포인트 클라우드 데이터, 및 루트 토폴로지에 적어도 기초하여 에지/가중치 그래프를 생성하는 제10 프로세서, 및 에지/가중치 그래프에 적어도 기초하여 시작 포인트로부터 목적지 포인트까지의 경로를 선택하는 베이스 제어기를 포함할 수 있다.In some configurations, the system of the present teachings is for generating a map for navigating to the at least one SDSF the AV encounters, the AV moving a path over the surface, the surface comprising the at least one SDSF, The path includes a start point and an end point, and the system is capable of processing from, but not limited to, a point cloud accessor to access point cloud data representing a surface, a first filter to filter the point cloud data, and to process from the filtered point cloud data. a segmenter forming the parts, a third processor merging the processable parts into the at least one concave polygon, a fourth processor locating and labeling the at least one SDSF in the at least one concave polygon, wherein the positioning and labeling is labeled forming the point cloud data—can include a fifth processor that generates the graphing polygons. The route topology may include at least one graphing polygon that may include filtered point cloud data. The point cloud data may include labeled features and a drivable margin. The system may include a seventh processor that transforms the point cloud data into a global coordinate system, and an eighth processor that determines boundaries of the at least one SDSF. The eighth processor may create SDSF buffers of a pre-selected size around the boundaries. The system is configured to determine which of the at least one SDSF can be traversed based at least on the ninth processor based at least on the at least one SDSF traversal criterion, at least based on the at least one SDSF traversal criterion, the transformed point cloud data, and a route topology. a tenth processor to generate an edge/weight graph, and a base controller to select a path from a starting point to a destination point based at least on the edge/weight graph.
제1 필터는, 제한적인 것은 아니지만, 포인트 클라우드 데이터로부터 과도 물체들을 나타내는 포인트들 및 이상치들을 나타내는 포인트들을 조건부로 제거하는 것, 및 미리 선택된 높이를 갖는 제거된 포인트들을 대체하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 세그멘터는, 제한적인 것은 아니지만, 포인트 클라우드 데이터를 처리가능 부분들로 세그먼트화하는 것, 및 미리 선택된 높이의 포인트들을 처리가능 부분들로부터 제거하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 제3 프로세서는, 제한적인 것은 아니지만, 이상치들, 복셀들, 및 법선을 분석함으로써 처리가능 부분들의 크기를 감소시키는 것, 감소된 크기의 처리가능 부분들로부터 영역들을 성장시키는 것, 성장된 영역들로부터 초기 드라이빙가능 표면들을 결정하는 것, 초기 드라이빙가능 표면들을 세그먼트화 및 메싱하는 것, 세그먼트화 및 메싱된 초기 드라이빙가능 표면들 내에 다각형들을 위치결정하는 것, 및 다각형들에 적어도 기초하여 드라이빙가능 표면들을 설정하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 제4 프로세서는, 제한적인 것은 아니지만, SDSF 필터에 따라 드라이빙가능 표면들의 포인트 클라우드 데이터를 정렬하는 것―SDSF 필터는 포인트들의 적어도 3개의 카테고리들을 포함함―, 및 포인트들의 카테고리들이, 조합하여, 적어도 하나의 제1 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 포인트를 위치결정하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 시스템은, 제한적인 것은 아니지만, 복수의 적어도 하나의 SDSF 포인트가, 조합하여, 적어도 하나의 제2 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 궤적을 생성하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다.The first filter may include, but is not limited to, conditionally removing points representing transient objects and points representing outliers from the point cloud data, and replacing the removed points with a preselected height. You can optionally include enable codes. A segmenter may optionally include executable code that may include, but is not limited to, segmenting the point cloud data into processable portions, and removing points of a preselected height from the processable portions. can A third processor includes, but is not limited to, reducing the size of the processable portions by analyzing outliers, voxels, and normals, growing regions from the reduced size processable portions, grown regions determining initial drivable surfaces from, segmenting and meshing the initial drivable surfaces, positioning polygons within the segmented and meshed initial drivable surfaces, and at least based on the polygons the drivable surface It may optionally include executable code that may include configuring them. A fourth processor includes, but is not limited to, sorting the point cloud data of the drivable surfaces according to the SDSF filter, the SDSF filter comprising at least three categories of points, and the categories of points, in combination, at least may optionally include executable code that may include locating the at least one SDSF point based at least on whether the one first preselected criterion is met. The system may include, but is not limited to, generating at least one SDSF trajectory based at least on whether the plurality of at least one SDSF points, in combination, satisfy at least one second preselected criterion. You can optionally include code.
그래핑 다각형들을 생성하는 것은, 제한적인 것은 아니지만, 적어도 하나의 드라이빙가능 표면으로부터 적어도 하나의 다각형을 생성하는 것―적어도 하나의 다각형은 에지들을 포함함―, 에지들을 평활화하는 것, 평활화된 에지들에 기초하여 드라이빙 마진을 형성하는 것, 적어도 하나의 드라이빙가능 표면에 적어도 하나의 SDSF 궤적을 추가하는 것, 및 적어도 하나의 제3 미리 선택된 기준에 따라 적어도 하나의 드라이빙가능 표면으로부터 에지들을 제거하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 에지들을 평활화하는 것은, 제한적인 것은 아니지만, 에지들을 바깥쪽으로 트리밍하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 평활화된 에지들의 드라이빙 마진을 형성하는 것은, 제한적인 것은 아니지만, 바깥쪽 에지들을 안쪽으로 트리밍하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다.Generating the graphing polygons includes, but is not limited to, generating at least one polygon from at least one drivable surface, wherein the at least one polygon includes edges, smoothing edges, smoothed edges forming a driving margin based on , adding at least one SDSF trajectory to the at least one drivable surface, and removing edges from the at least one drivable surface according to at least one third preselected criterion. It can optionally include executable code that it can include. Smoothing the edges may optionally include executable code, which may include, but is not limited to, trimming the edges outward. Forming the driving margin of the smoothed edges may optionally include executable code, which may include, but is not limited to, trimming the outer edges inward.
일부 구성들에서, SDSF는 그 치수들에 의해 식별될 수 있다. 예를 들어, 커브는, 제한적인 것은 아니지만, 약 0.6-0.7m의 폭을 포함할 수 있다. 일부 구성들에서, 포인트 클라우드 데이터는 SDSF들을 위치결정하기 위해 처리될 수 있고, 이들 데이터는 시작 포인트로부터 목적지까지의 AV에 대한 경로를 준비하기 위해 이용될 수 있다. 일부 구성들에서, 경로는 맵에 포함되고 지각 서브시스템에 제공될 수 있다. AV가 경로를 이동하고 있을 때, 일부 구성들에서, SDSF 횡단은 지각 서브시스템에 의해 부분적으로 가능하게 되는 AV의 센서 기반 포지셔닝을 통해 수용될 수 있다. 지각 서브시스템은 AV 내의 적어도 하나의 프로세서 상에서 실행될 수 있다.In some configurations, the SDSF can be identified by its dimensions. For example, the curve may include, but is not limited to, a width of about 0.6-0.7 m. In some configurations, point cloud data may be processed to locate SDSFs, and these data may be used to prepare a route for the AV from a starting point to a destination. In some configurations, the path may be included in a map and provided to the perceptual subsystem. When the AV is moving its path, in some configurations, SDSF traversal may be accommodated via sensor-based positioning of the AV, enabled in part by the perceptual subsystem. The perceptual subsystem may execute on at least one processor within the AV.
AV는, 제한적인 것은 아니지만, 2개의 전동 전방-휠들(powered front-wheels), 2개의 전동 후방-휠들(powered back-wheels), 에너지 저장소, 및 적어도 하나의 프로세서를 포함하는 파워 베이스를 포함할 수 있다. 파워 베이스는 명령된 속도로 이동하도록 구성될 수 있다. AV는 복수의 단거리 센서들을 포함하는, 파워 베이스에 기계적으로 부착된 화물 플랫폼(cargo platform)을 포함할 수 있다. AV는 일부 구성들에서 화물 플랫폼의 최상부에 장착되고, 배송할 하나 이상의 물체를 수용하기 위한 볼륨을 갖는 화물 컨테이너를 포함할 수 있다. AV는, 제한적인 것은 아니지만, LIDAR 및 하나 이상의 카메라를 포함할 수 있는, 일부 구성들에서 화물 컨테이너의 최상부 상에 장착된 장거리 센서 슈트(sensor suite)를 포함할 수 있다. AV는 장거리 센서 슈트 및 단거리 센서 슈트로부터 데이터를 수신할 수 있는 제어기를 포함할 수 있다.An AV may include, but is not limited to, a power base comprising two powered front-wheels, two powered back-wheels, an energy storage, and at least one processor. can The power base may be configured to move at a commanded speed. The AV may include a cargo platform mechanically attached to the power base, comprising a plurality of short-range sensors. The AV may in some configurations be mounted on top of a cargo platform and include a cargo container having a volume for receiving one or more objects to be shipped. The AV may include, but is not limited to, a long-range sensor suite mounted on top of the cargo container in some configurations, which may include a LIDAR and one or more cameras. The AV may include a controller capable of receiving data from the long range sensor suite and the short range sensor suite.
단거리 센서 슈트는 선택적으로 드라이빙가능 표면의 적어도 하나의 특성을 검출할 수 있고, 선택적으로 스테레오 카메라들, IR 프로젝터, 2개의 이미지 센서들, RGB 센서, 및 레이더 센서들을 포함할 수 있다. 단거리 센서 슈트는 선택적으로 제어기에 RGB-D 데이터를 공급할 수 있다. 제어기는 선택적으로 단거리 센서 슈트로부터 수신된 RGB-D 데이터에 기초하여 노면(road surface)의 기하구조를 결정할 수 있다. 단거리 센서 슈트는 선택적으로 AV의 4미터 이내의 물체들을 검출할 수 있고, 장거리 센서 슈트는 선택적으로 AV로부터 4미터보다 더 떨어져 있는 물체들을 검출할 수 있다.The short range sensor suite may optionally detect at least one characteristic of the drivable surface and may optionally include stereo cameras, an IR projector, two image sensors, an RGB sensor, and radar sensors. The short-range sensor suite can optionally feed RGB-D data to the controller. The controller may optionally determine the geometry of the road surface based on RGB-D data received from the short-range sensor suite. The short-range sensor suite may optionally detect objects within 4 meters of the AV, and the long-range sensor suite may optionally detect objects more than 4 meters away from the AV.
지각 서브시스템은 점유 그리드를 채우기 위해 센서들에 의해 수집된 데이터를 이용할 수 있다. 본 교시의 점유 그리드는 AV를 둘러싸는 포인트들의 3D 그리드로서 구성될 수 있고, AV는 중심 포인트를 점유한다. 일부 구성들에서, 점유 그리드는 AV의 좌측, 우측, 후방, 및 전방으로 10m 늘어날 수 있다. 그리드는 대략적으로, AV의 높이를 포함할 수 있고, AV가 이동함에 따라 AV와 함께 가상으로 이동할 수 있으며, AV를 둘러싸는 장애물들을 나타낸다. 그리드는 그것의 수직 축을 감소시킴으로써 2차원으로 변환될 수 있고, 예를 들어, 제한적인 것은 아니지만, 대략 5cm x 5cm 크기의 다각형들로 분할될 수 있다. AV 주위의 3D 공간에 나타나는 장애물들은 2D 형상으로 감소될 수 있다. 2D 형상이 다각형들 중 하나의 임의의 세그먼트와 중첩하면, 다각형에 100의 값이 주어질 수 있고, 이는 공간이 점유된다는 것을 표시한다. 채워지지 않은 임의의 다각형들에는 0의 값이 주어질 수 있고, AV가 이동할 수 있는 자유 공간으로서 지칭될 수 있다.The perception subsystem may use the data collected by the sensors to populate the occupancy grid. The occupancy grid of the present teachings may be constructed as a 3D grid of points surrounding an AV, with the AV occupying a central point. In some configurations, the occupancy grid can stretch 10 m to the left, right, rear, and front of the AV. The grid can roughly include the height of the AV, and can virtually move with the AV as it moves, representing obstacles surrounding the AV. A grid can be transformed into two dimensions by reducing its vertical axis, for example, but not limited to being divided into polygons approximately 5 cm x 5 cm in size. Obstacles appearing in 3D space around the AV can be reduced to a 2D shape. If the 2D shape overlaps any segment of one of the polygons, the polygon can be given a value of 100, indicating that space is occupied. Any polygons that are not filled can be given a value of 0, and can be referred to as free space in which AV can move.
AV가 내비게이팅함에 따라, AV의 구성의 변경이 요구될 수 있는 상황에 직면할 수 있다. 일부 구성들에서, 본 교시의 방법은 일부 구성들에서의 구성의 실시간 제어를 위한 것이고, 일부 구성들에서는 섀시(chassis), 적어도 4개의 휠들, 적어도 4개의 휠들 중 적어도 하나와 동작가능하게 결합된 섀시의 제1 측, 및 적어도 4개의 휠들 중 적어도 하나와 동작가능하게 결합된 섀시의 대향하는 제2 측을 포함하고, 방법은, 제한적인 것은 아니지만, 환경 데이터를 수신하는 것, 환경 데이터에 적어도 기초하여 표면 타입을 결정하는 것, 표면 타입 및 제1 구성에 적어도 기초하여 모드를 결정하는 것, 모드 및 표면 타입에 적어도 기초하여 제2 구성을 결정하는 것, 제2 구성에 적어도 기초하여 이동 명령들을 결정하는 것, 및 제1 구성으로부터 제2 구성으로 디바이스를 변경하기 위해 이동 명령들을 이용하여 디바이스의 구성을 제어하는 것을 포함할 수 있다.As the AV navigates, one may encounter a situation in which a change in the configuration of the AV may be required. In some configurations, the method of the present teachings is for real-time control of a configuration in some configurations, and in some configurations is operatively coupled with at least one of a chassis, at least four wheels, at least four wheels. A method comprising, but not limited to, a first side of the chassis and an opposite second side of the chassis operatively coupled to at least one of the at least four wheels, the method comprising, but not limited to, receiving environmental data, at least in the environmental data determining a surface type based on, determining a mode based at least on the surface type and the first configuration, determining a second configuration based at least on the mode and the surface type, moving instructions based at least on the second configuration and controlling the configuration of the device using move commands to change the device from the first configuration to the second configuration.
방법은 적어도 표면 타입 및 모드에 기초하여 점유 그리드를 채우는 것을 선택적으로 포함할 수 있다. 환경 데이터는 RGB-D 이미지 데이터 및 노면의 토폴로지를 선택적으로 포함할 수 있다. 구성은 적어도 4개의 휠들의 클러스터링된 2개의 쌍들을 선택적으로 포함할 수 있다. 2개의 쌍들 중 제1 쌍은 제1 측에 위치될 수 있고, 2개의 쌍들 중 제2 쌍은 제2 측에 위치될 수 있다. 제1 쌍은 제1 전방 휠 및 제1 후방 휠을 포함할 수 있고, 제2 쌍은 제2 전방 휠 및 제2 후방 휠을 포함할 수 있다. 구성의 제어는 환경 데이터에 적어도 기초하여 제1 쌍 및 제2 쌍의 조정된 전력공급을 선택적으로 포함할 수 있다. 구성의 제어는 적어도 4개의 휠들 및 수축된 캐스터들의 쌍을 구동하는 것으로부터, 제1 전방 휠 및 제2 전방 휠을 들어올리기 위해 클러스터링된 제1 쌍 및 클러스터링된 제2 쌍이 회전된 2개의 휠들을 구동하는 것으로 전환하는 것을 선택적으로 포함할 수 있다. 캐스터들의 쌍은 섀시와 동작가능하게 결합될 수 있다. 디바이스는 제1 후방 휠, 제2 후방 휠 및 캐스터들의 쌍에 놓일 수 있다. 구성의 제어는 환경 데이터에 적어도 기초하여 제1 측의 2개의 전동 휠들 및 제2 측의 2개의 전동 휠들과 동작가능하게 결합된 클러스터의 쌍을 회전시키는 것을 선택적으로 포함할 수 있다.The method may optionally include populating the occupancy grid based at least on the surface type and mode. The environment data may optionally include RGB-D image data and a topology of the road surface. The configuration may optionally include clustered two pairs of at least four wheels. A first pair of the two pairs may be located on the first side, and a second pair of the two pairs may be located on the second side. The first pair may include a first front wheel and a first rear wheel, and the second pair may include a second front wheel and a second rear wheel. Control of the configuration may optionally include regulated powering of the first pair and the second pair based at least on the environmental data. The control of the configuration includes the two wheels with the clustered first pair and the clustered second pair rotated to lift the first front wheel and the second front wheel from driving the pair of at least four wheels and retracted casters. It may optionally include switching to actuating. The pair of casters may be operatively coupled with the chassis. The device may rest on a pair of first rear wheels, second rear wheels and casters. Control of the configuration can optionally include rotating a pair of clusters operatively coupled with the two powered wheels on the first side and the two powered wheels on the second side based at least on the environmental data.
AV의 구성의 실시간 제어를 위한 본 교시의 시스템은, 제한적인 것은 아니지만, 디바이스 프로세서 및 파워 베이스 프로세서를 포함할 수 있다. AV는 섀시, 적어도 4개의 휠들, 섀시의 제1 측, 및 섀시의 대향하는 제2 측을 포함할 수 있다. 디바이스 프로세서는 AV를 둘러싸는 실시간 환경 데이터를 수신하고, 환경 데이터에 적어도 기초하여 표면 타입을 결정하고, 표면 타입 및 제1 구성에 적어도 기초하여 모드를 결정하고, 모드 및 표면 타입에 적어도 기초하여 제2 구성을 결정할 수 있다. 파워 베이스 프로세서는 AV가 제2 구성에 적어도 기초하여 이동할 수 있게 하고, AV가 제1 구성으로부터 제2 구성으로 변경될 수 있게 한다. 디바이스 프로세서는 표면 타입 및 모드에 적어도 기초하여 점유 그리드를 채우는 것을 선택적으로 포함할 수 있다.A system of the present teachings for real-time control of the configuration of an AV may include, but is not limited to, a device processor and a power base processor. The AV may include a chassis, at least four wheels, a first side of the chassis, and an opposing second side of the chassis. The device processor receives real-time environmental data surrounding the AV, determines a surface type based at least on the environmental data, determines a mode based at least on the surface type and a first configuration, and determines a second mode based on at least the mode and the surface type. 2 configuration can be determined. The power base processor enables the AV to move based at least on the second configuration, and enables the AV to change from the first configuration to the second configuration. The device processor may optionally include populating the occupancy grid based at least on the surface type and mode.
내비게이션 동안, AV는 성공적인 횡단을 위해 AV를 조종할 것을 요구할 수 있는 SDSF들을 만날 수 있다. 일부 구성들에서, 적어도 하나의 SDSF에 걸쳐 목표 포인트를 향해 이동 영역에서의 경로 라인을 따라 AV를 내비게이팅하기 위한 본 교시의 방법―AV는 선두 에지(leading edge) 및 후미 에지(trailing edge)를 포함함―은, 제한적인 것은 아니지만, 이동 영역에 대한 SDSF 정보 및 장애물 정보를 수신하는 것, SDSF 정보로부터 적어도 하나의 후보 SDSF를 검출하는 것, 및 적어도 하나의 선택 기준에 기초하여 적어도 하나의 후보 SDSF 라인으로부터 SDSF 라인을 선택하는 것을 포함할 수 있다. 방법은 선택된 SDSF 라인의 근처에서 장애물 정보에서 발견된 적어도 하나의 장애물의 적어도 하나의 위치에 기초하여 선택된 SDSF 라인의 적어도 하나의 횡단가능 부분을 결정하는 것, AV를 헤딩(heading)하는 것, AV를 횡단가능 부분에 수직인 라인을 따라 이동하도록 회전(turning)시킴으로써, 적어도 하나의 횡단가능 부분을 향해 제1 속도로 동작하는 것, 및 헤딩과 수직 라인 사이의 관계에 기초하여 AV의 헤딩을 계속해서 정정하는 것을 포함할 수 있다. 방법은 헤딩 및 AV와 횡단가능 부분 사이의 거리에 적어도 기초하여 AV의 제1 속도를 조정함으로써 AV를 제2 속도로 드라이빙하는 것을 포함할 수 있다. 적어도 하나의 횡단가능 부분과 연관된 SDSF가 이동 루트의 표면에 대해 상승되면, 방법은 선두 에지를 후미 에지에 대해 상승시킴으로써 SDSF를 횡단하고, 고도 당 제3 증가된 속도(third increased speed per degree of elevation)로 AV를 드라이빙하는 것, 및 AV가 SDSF를 클리어할 때까지 AV를 제4 속도로 드라이빙하는 것을 포함할 수 있다.During navigation, the AV may encounter SDSFs that may require steering the AV for successful traversal. In some configurations, a method of the present teachings for navigating an AV along a path line in a movement area towards a target point over at least one SDSF, wherein the AV has a leading edge and a trailing edge. including, but is not limited to, receiving SDSF information and obstacle information for a movement area, detecting at least one candidate SDSF from the SDSF information, and at least one candidate based on at least one selection criterion. selecting the SDSF line from the SDSF line. The method includes determining at least one traversable portion of the selected SDSF line based on at least one location of at least one obstacle found in obstacle information in the vicinity of the selected SDSF line, heading an AV, the AV moving at a first speed towards the at least one traversable portion by turning to move along a line perpendicular to the traversable portion, and continuing heading of the AV based on the relationship between the heading and the vertical line. This may include corrections. The method may include driving the AV at a second speed by adjusting a first speed of the AV based at least on the heading and a distance between the AV and the traversable portion. If the SDSF associated with the at least one traversable portion is raised relative to the surface of the route of travel, the method traverses the SDSF by raising the leading edge relative to the trailing edge, and a third increased speed per degree of elevation ), and driving the AV at the fourth speed until the AV clears the SDSF.
SDSF 정보로부터 적어도 하나의 후보 SDSF를 검출하는 것은 (a) AV의 위치, 및 목표 포인트의 위치를 포함하는 폐쇄 다각형을 그리는 것, (b) 목표 포인트와 AV의 위치 사이의 경로 라인을 그리는 것, (c) SDSF 정보로부터 2개의 SDSF 포인트들을 선택하는 것―SDSF 포인트들은 다각형 내에 위치됨―, 및 (d) 2개의 포인트들 사이에 SDSF 라인을 그리는 것을 선택적으로 포함할 수 있다. 적어도 하나의 후보 SDSF를 검출하는 것은 (e) SDSF 라인의 제1 미리 선택된 거리 내에 제1 미리 선택된 수의 포인트보다 적은 수의 포인트가 존재하는 경우, 및 SDSF 포인트들을 선택하고, 그들 사이에 라인을 그리고, SDSF 라인 주위의 제1 미리 선택된 수의 포인트들보다 적은 수의 포인트를 갖는데 있어서 제2 미리 선택된 수의 시도보다 적은 수의 시도가 존재하는 경우, 단계들 (c)-(e)를 반복하는 것을 포함할 수 있다. 적어도 하나의 후보 SDSF를 검출하는 것은 (f) 제1 미리 선택된 수의 포인트 또는 그보다 많은 포인트가 존재하는 경우, SDSF 라인의 제1 미리 선택된 거리 내에 있는 SDSF 포인트들에 곡선(curve)을 피팅(fitting)하는 것, (g) 곡선의 제1 미리 선택된 거리 내에 있는 SDSF 포인트의 제1 수가 SDSF 라인의 제1 미리 선택된 거리 내의 제2 수의 SDSF 포인트를 초과하는 경우, 및 곡선이 경로 라인과 교차하는 경우, 및 곡선 상의 SDSF 포인트들 사이에 제2 미리 선택된 거리를 초과하는 갭들이 존재하는 경우, 곡선을 SDSF 라인으로서 식별하는 것을 포함할 수 있다. 적어도 하나의 후보 SDSF를 검출하는 것은 (h) 곡선의 제1 미리 선택된 거리 내에 있는 포인트들의 수가 SDSF 라인의 제1 미리 선택된 거리 내의 포인트들의 수를 초과하지 않는 경우, 또는 곡선이 경로 라인과 교차하지 않는 경우, 또는 곡선 상의 SDSF 포인트들 사이에 제2 미리 선택된 거리를 초과하는 갭들이 존재하는 경우, 및 SDSF 라인이 안정적으로 유지되지 않는 경우, 및 단계들 (f)-(h)가 제2 미리 선택된 수의 시도보다 많이 시도되지 않은 경우, 단계들 (f)-(h)를 반복하는 것을 포함할 수 있다.Detecting the at least one candidate SDSF from the SDSF information comprises (a) drawing a closed polygon comprising the location of the AV and the location of the target point, (b) drawing a path line between the target point and the location of the AV; (c) selecting two SDSF points from the SDSF information, wherein the SDSF points are located within a polygon, and (d) drawing an SDSF line between the two points. Detecting the at least one candidate SDSF may include (e) selecting the SDSF points if there are fewer than a first preselected number of points within a first preselected distance of the SDSF line, and drawing a line between them. and repeat steps (c)-(e) if there are fewer than the second preselected number of trials in having fewer than the first preselected number of points around the SDSF line. may include doing Detecting the at least one candidate SDSF comprises (f) fitting a curve to SDSF points that are within a first preselected distance of the SDSF line if there is a first preselected number of points or more points. ), (g) if the first number of SDSF points within the first preselected distance of the curve exceeds the second number of SDSF points within the first preselected distance of the SDSF line, and at which the curve intersects the path line. and identifying the curve as an SDSF line if there are gaps greater than a second preselected distance between SDSF points on the curve. Detecting the at least one candidate SDSF comprises (h) the number of points within the first preselected distance of the curve does not exceed the number of points within the first preselected distance of the SDSF line, or the curve does not intersect the path line. or if there are gaps exceeding a second preselected distance between SDSF points on the curve, and if the SDSF line does not remain stable, and if steps (f)-(h) are repeating steps (f)-(h) if no more than the selected number of attempts have been attempted.
폐쇄 다각형은 선택적으로 미리 선택된 폭을 포함할 수 있고, 미리 선택된 폭은 선택적으로 AV의 폭 치수를 포함할 수 있다. SDSF 포인트들을 선택하는 것은 선택적으로 랜덤 선택을 포함할 수 있다. 적어도 하나의 선택 기준은 선택적으로 곡선의 제1 미리 선택된 거리 내의 제1 수의 SDSF 포인트들이 SDSF 라인의 제1 미리 선택된 거리 내의 제2 수의 SDSF 포인트들을 초과하는 것을 포함할 수 있고, 곡선은 경로 라인과 교차하고, 곡선 상의 SDSF 포인트들 사이에 제2 미리 선택된 거리를 초과하는 갭들이 존재하지 않는다.The closed polygon may optionally include a preselected width, and the preselected width may optionally include a width dimension of the AV. Selecting SDSF points may optionally include random selection. The at least one selection criterion may optionally include that a first number of SDSF points within a first preselected distance of the curve exceeds a second number of SDSF points within a first preselected distance of the SDSF line, wherein the curve comprises a path There are no gaps that intersect the line and exceed the second preselected distance between SDSF points on the curve.
선택된 SDSF의 적어도 하나의 횡단가능 부분을 결정하는 것은 장애물 정보로부터 복수의 장애물 포인트들을 선택하는 것을 선택적으로 포함할 수 있다. 복수의 장애물 포인트들 각각은 장애물 포인트가 적어도 하나의 장애물과 연관될 확률을 포함할 수 있다. 적어도 하나의 횡단가능 부분을 결정하는 것은 확률이 미리 선택된 퍼센트보다 높고, 복수의 장애물 포인트들 중 임의의 것이 SDSF 라인과 목표 포인트 사이에 놓이는 경우, 및 복수의 장애물 포인트들 중 임의의 것이 SDSF 라인으로부터 제3 미리 선택된 거리보다 작은 경우, 복수의 장애물 포인트들을 SDSF 라인에 투영하여, 적어도 하나의 투영을 형성하는 것을 포함할 수 있다. 적어도 하나의 횡단가능 부분을 결정하는 것은 적어도 하나의 투영 중 적어도 2개를 서로 접속하는 것, 접속된 적어도 2개의 투영들의 종료 포인트들을 SDSF 라인을 따라 위치시키는 것, 접속된 적어도 2개의 투영들을 횡단 불가능 SDSF 섹션으로서 마킹하는 것, 및 횡단 불가능 섹션 외부의 SDSF 라인을 적어도 하나의 횡단가능 섹션으로서 마킹하는 것을 선택적으로 포함할 수 있다.Determining the at least one traversable portion of the selected SDSF may optionally include selecting a plurality of obstacle points from the obstacle information. Each of the plurality of obstacle points may include a probability that the obstacle point is associated with at least one obstacle. Determining the at least one traversable portion has a probability greater than a preselected percentage, if any of the plurality of obstacle points lies between the SDSF line and the target point, and if any of the plurality of obstacle points are from the SDSF line. projecting the plurality of obstacle points onto the SDSF line if less than the third preselected distance, forming at least one projection. Determining the at least one traversable portion comprises connecting at least two of the at least one projections to each other, locating end points of the connected at least two projections along an SDSF line, traversing the connected at least two projections. may optionally include marking as a non-traversable section, and marking an SDSF line outside the non-traversable section as the at least one traversable section.
SDSF의 적어도 하나의 횡단가능 부분을 횡단하는 것은 AV를 헤딩하는 것, 횡단가능 부분을 향해 제1 속도로 동작하는 것, 횡단가능 부분에 수직인 라인을 따라 이동하도록 AV를 회전하는 것, 헤딩과 수직 라인 사이의 관계에 기초하여 AV의 헤딩을 계속해서 정정하는 것, 및 AV와 횡단가능 부분 사이의 거리 및 헤딩에 적어도 기초하여 AV의 제1 속도를 조정함으로써 AV를 제2 속도로 드라이빙하는 것을 선택적으로 포함할 수 있다. SDSF의 적어도 하나의 횡단가능 부분을 횡단하는 것은 SDSF가 이동 루트의 표면에 대해 상승되는 경우, 후미 에지에 대해 선두 에지를 상승시키고 고도 당 제3 증가된 속도로 AV를 드라이빙함으로써 SDSF를 횡단하는 것, 및 AV가 SDSF를 클리어할 때까지 AV를 제4 속도로 드라이빙하는 것을 선택적으로 포함할 수 있다.Traversing the at least one traversable portion of the SDSF includes heading the AV, operating at a first speed towards the traversable portion, rotating the AV to move along a line perpendicular to the traversable portion, heading and continuing to correct the heading of the AV based on the relationship between the vertical lines, and driving the AV at a second speed by adjusting the first speed of the AV based at least on the heading and the distance between the AV and the traversable portion; may optionally be included. traversing the at least one traversable portion of the SDSF includes, when the SDSF is raised relative to the surface of the travel route, traversing the SDSF by raising the leading edge relative to the trailing edge and driving the AV at a third increased speed per altitude. , and optionally driving the AV at the fourth speed until the AV clears the SDSF.
SDSF의 적어도 하나의 횡단가능 부분을 횡단하는 것은 대안적으로, (a) 헤딩 에러가 SDSF 라인에 수직인 라인에 대해 제3 미리 선택된 양보다 적은 경우, SDSF 정보의 업데이트된 것을 무시하고 미리 선택된 속도로 AV를 드라이빙하는 것, (b) AV의 후방 부분에 대한 AV의 전방 부분의 고도가 제6 미리 선택된 양과 제5 미리 선택된 양 사이에 있는 경우, AV를 전방으로 드라이빙하고 고도 당 제8 미리 선택된 속도로 AV의 속도를 증가시키는 것, (c) 전방 부분이 후방 부분에 대해 제6 미리 선택된 양보다 적게 상승되는 경우, 제7 미리 선택된 속도로 AV를 전방으로 드라이빙하는 것, 및 (d) 후방 부분이 SDSF 라인으로부터 제5 미리 선택된 거리 이하인 경우, 단계들 (a)-(d)를 반복하는 것을 선택적으로 포함할 수 있다.Traversing at least one traversable portion of the SDSF may alternatively include: (a) if the heading error is less than a third preselected amount for a line perpendicular to the SDSF line, ignore the updated SDSF information and preselected rate (b) driving the AV forward when the elevation of the front portion of the AV relative to the rear portion of the AV is between the sixth preselected amount and the fifth preselected amount, and increasing the speed of the AV at a speed, (c) driving the AV forward at a seventh preselected speed if the front portion is raised less than a sixth preselected amount for the rear portion, and (d) rearward repeating steps (a)-(d) if the portion is less than or equal to a fifth preselected distance from the SDSF line.
일부 구성들에서, SDSF 및 AV의 휠들은 시스템 불안정성을 회피하기 위해 자동으로 정렬될 수 있다. 자동 정렬은, 예를 들어, 제한적인 것은 아니지만, AV가 SDSF에 접근함에 따라 AV의 헤딩을 계속적으로 테스트하고 정정하는 것에 의해 구현될 수 있다. 본 교시의 SDSF 횡단 피처의 다른 양태는, SDSF 횡단 피처가 횡단을 시도하기 전에 SDSF 주위에 충분한 자유 공간이 존재한다는 것을 자동으로 확인하는 것이다. 본 교시의 SDSF 횡단 피처의 또 다른 양태는 다양한 기하구조들의 SDSF들을 횡단하는 것이 가능하다는 것이다. 기하구조들은, 예를 들어, 제한적인 것은 아니지만, 정사각형의 및 윤곽 있는 SDSF들을 포함할 수 있다. SDSF에 대한 AV의 배향은 AV가 어떤 속도 및 방향으로 진행하는지를 결정할 수 있다. SDSF 횡단 피처는 SDSF들 근처에서 AV의 속도를 조정할 수 있다. AV가 SDSF에 올라갈 때, 속도는 AV가 SDSF를 횡단하는 것을 보조하기 위해 증가될 수 있다.In some configurations, the wheels of SDSF and AV may be automatically aligned to avoid system instability. Auto-alignment may be implemented by, for example, but not limited to, continuously testing and correcting the AV's heading as it approaches the SDSF. Another aspect of the SDSF traversing feature of the present teachings is to automatically verify that there is sufficient free space around the SDSF before the SDSF traversing feature attempts to traverse. Another aspect of the SDSF traversing feature of the present teachings is that it is possible to traverse SDSFs of various geometries. Geometries may include, for example, but not limited to square and outlined SDSFs. The orientation of the AV with respect to the SDSF can determine at what speed and direction the AV travels. The SDSF traversal feature can adjust the speed of the AV near SDSFs. As the AV climbs the SDSF, the speed may be increased to assist the AV traversing the SDSF.
1. 자율 배송 차량(autonomous delivery vehicle)으로서, 2개의 전동 전방 휠들, 2개의 전동 후방 휠들 및 에너지 저장소를 포함하는 파워 베이스―파워 베이스는 적어도 하나의 물체의 수송을 수행하기 위해 명령된 속도로 및 명령된 방향으로 이동하도록 구성됨―; 복수의 단거리 센서들을 포함하는 화물 플랫폼―화물 플랫폼은 파워 베이스에 기계적으로 부착됨―; 적어도 하나의 물체를 수용하기 위한 볼륨을 갖는 화물 컨테이너―화물 컨테이너는 화물 플랫폼의 최상부 상에 장착됨―; LIDAR 및 하나 이상의 카메라를 포함하는 장거리 센서 슈트―장거리 센서 슈트는 화물 컨테이너의 최상부 상에 장착됨―; 및 장거리 센서 슈트 및 복수의 단거리 센서들로부터 데이터를 수신하기 위한 제어기―제어기는 데이터에 적어도 기초하여 명령된 속도 및 명령된 방향을 결정하고, 제어기는 수송을 완료하기 위해 파워 베이스에 명령된 속도 및 명령된 방향을 제공함―를 포함하는, 자율 배송 차량. 2. 제1항의 자율 배송 차량으로서, 복수의 단거리 센서들로부터의 데이터는 파워 베이스가 이동하는 표면의 적어도 하나의 특성을 포함하는, 자율 배송 차량. 3. 제1항의 자율 배송 차량으로서, 복수의 단거리 센서들은 적어도 하나의 스테레오 카메라를 포함하는, 자율 배송 차량. 4. 제1항의 자율 배송 차량으로서, 복수의 단거리 센서들은 적어도 하나의 IR 프로젝터, 적어도 하나의 이미지 센서, 및 적어도 하나의 RGB 센서를 포함하는, 자율 배송 차량. 5. 제1항의 자율 배송 차량으로서, 복수의 단거리 센서들은 적어도 하나의 레이더 센서를 포함하는, 자율 배송 차량. 6. 제1항의 자율 배송 차량으로서, 복수의 단거리 센서들로부터의 데이터는 RGB-D 데이터를 포함하는, 자율 배송 차량. 7. 제1항의 자율 배송 차량으로서, 제어기는 복수의 단거리 센서들로부터 수신된 RGB-D 데이터에 기초하여 노면의 기하구조를 결정하는, 자율 배송 차량. 8. 제1항의 자율 배송 차량으로서, 복수의 단거리 센서들은 AV의 4미터 이내의 물체들을 검출하고, 장거리 센서 슈트는 자율 배송 차량으로부터 4미터보다 더 떨어져 있는 물체들을 검출하는, 자율 배송 차량. 9. 제1항의 자율 배송 차량으로서, 복수의 단거리 센서들은 냉각 회로(cooling circuit)를 포함하는, 자율 배송 차량. 10. 제1항의 자율 배송 차량으로서, 복수의 단거리 센서들은 초음파 센서를 포함하는, 자율 배송 차량. 11. 제2항의 자율 배송 차량으로서, 제어기는 실행가능 코드를 포함하고, 실행가능 코드는, 맵 프로세서에 의해 형성된 맵에 액세스하는 것을 포함하고, 맵 프로세서는 장거리 센서 슈트로부터의 포인트 클라우드 데이터에 액세스하는 제1 프로세서―포인트 클라우드 데이터는 표면을 나타냄―; 포인트 클라우드 데이터를 필터링하는 필터; 필터링된 포인트 클라우드 데이터로부터 처리가능 부분들을 형성하는 제2 프로세서; 처리가능 부분들을 적어도 하나의 다각형에 병합하는 제3 프로세서; 적어도 하나의 다각형에 적어도 하나의 실질적으로 불연속적인 표면 피처(SDSF)를 위치결정 및 라벨링하는 제4 프로세서―존재하는 경우, 위치결정 및 라벨링은 라벨링된 포인트 클라우드 데이터를 형성함―; 라벨링된 포인트 클라우드 데이터로부터 그래핑 다각형들을 생성하는 제5 프로세서; 및 그래핑 다각형들에 적어도 기초하여 시작 포인트로부터 종료 포인트까지의 경로를 선택하는 제6 프로세서―AV는 경로를 따라 적어도 하나의 SDSF를 횡단함―를 포함하는, 자율 배송 차량. 12. 제11항에서와 같은 자율 배송 차량으로서, 필터는, 코드를 실행하는 제7 프로세서를 포함하고, 코드는 포인트 클라우드 데이터로부터 과도 물체들을 나타내는 포인트들 및 이상치들을 나타내는 포인트들을 조건부로 제거하는 것; 및 미리 선택된 높이를 갖는 제거된 포인트들을 대체하는 것을 포함하는, 자율 배송 차량. 13. 제11항에서와 같은 자율 배송 차량으로서, 제2 프로세서는 실행가능 코드를 포함하고, 실행가능 코드는 포인트 클라우드 데이터를 처리가능 부분들로 세그먼트화하는 것; 및 미리 선택된 높이의 포인트들을 처리가능 부분들로부터 제거하는 것을 포함하는, 자율 배송 차량. 14. 제11항에서와 같은 자율 배송 차량으로서, 제3 프로세서는 실행가능 코드를 포함하고, 실행가능 코드는 이상치들, 복셀들, 및 법선들을 분석함으로써 처리가능 부분들의 크기를 감소시키는 것; 감소된 크기의 처리가능 부분들로부터 영역들을 성장시키는 것; 성장된 영역들로부터 초기 드라이빙가능 표면들을 결정하는 것; 초기 드라이빙가능 표면들을 세그먼트화 및 메싱하는 것; 세그먼트화 및 메싱된 초기 드라이빙가능 표면들 내에 다각형들을 위치결정하는 것; 및 다각형들에 적어도 기초하여 적어도 하나의 드라이빙가능 표면을 설정하는 것을 포함하는, 자율 배송 차량. 15. 제14항에서와 같은 자율 배송 차량으로서, 제4 프로세서는 실행가능 코드를 포함하고, 실행가능 코드는 SDSF 필터에 따라 초기 드라이빙가능 표면들의 포인트 클라우드 데이터를 정렬하는 것―SDSF 필터는 포인트들의 적어도 3개의 카테고리들을 포함함―; 및 포인트들의 적어도 3개의 카테고리들이, 조합하여, 적어도 하나의 제1 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 포인트를 위치결정하는 것을 포함하는, 자율 배송 차량. 16. 제15항에서와 같은 자율 배송 차량으로서, 제4 프로세서는 실행가능 코드를 포함하고, 실행가능 코드는 복수의 적어도 하나의 SDSF 포인트가, 조합하여, 적어도 하나의 제2 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 궤적을 생성하는 것을 포함하는, 자율 배송 차량. 17. 제14항에서와 같은 자율 배송 차량으로서, 그래핑 다각형들을 생성하는 것은 실행가능 코드를 포함하는 제8 프로세서를 포함하고, 실행가능 코드는 적어도 하나의 드라이빙가능 표면으로부터 적어도 하나의 다각형을 생성하는 것―적어도 하나의 다각형은 외부 에지들을 포함함―; 외부 에지들을 평활화하는 것; 평활화된 외부 에지들에 기초하여 드라이빙 마진을 형성하는 것; 적어도 하나의 SDSF 궤적을 적어도 하나의 드라이빙가능 표면에 추가하는 것; 및 적어도 하나의 제3 미리 선택된 기준에 따라 적어도 하나의 드라이빙가능 표면으로부터 내부 에지들을 제거하는 것을 포함하는, 자율 배송 차량. 18. 제17항에서와 같은 자율 배송 차량으로서, 외부 에지들을 평활화하는 것은 실행가능 코드를 포함하는 제9 프로세서를 포함하고, 실행가능 코드는 외부 에지들을 바깥쪽으로 트리밍하여 바깥쪽 에지들을 형성하는 것을 포함하는, 자율 배송 차량. 19. 제18항에서와 같은 자율 배송 차량으로서, 평활화된 외부 에지들의 드라이빙 마진을 형성하는 것은 실행가능 코드를 포함하는 제10 프로세서를 포함하고, 실행가능 코드는 바깥쪽 에지들을 안쪽으로 트리밍하는 것을 포함하는, 자율 배송 차량. 20. 제1항에서와 같은 자율 배송 차량으로서, 제어기는, 자율 배송 차량(AV)이 마주치는 적어도 하나의 실질적으로 불연속적인 표면 피처(SDSF)를 내비게이팅하기 위한 서브시스템―AV는 표면 위의 경로를 이동하고, 표면은 적어도 하나의 SDSF를 포함하고, 경로는 시작 포인트 및 종료 포인트를 포함함―을 포함하고, 서브시스템은, 루트 토폴로지에 액세스하는 제1 프로세서-루트 토폴로지는 필터링된 포인트 클라우드 데이터를 포함하는 적어도 하나의 그래핑 다각형을 포함하고, 필터링된 포인트 클라우드 데이터는 라벨링된 피처들을 포함하고, 포인트 클라우드 데이터는 드라이빙가능 마진을 포함함―; 포인트 클라우드 데이터를 전역 좌표계로 변환하는 제2 프로세서; 적어도 하나의 SDSF의 경계들을 결정하는 제3 프로세서―제3 프로세서는 경계들 주위의 미리 선택된 크기의 SDSF 버퍼들을 생성함―; 적어도 하나의 SDSF 횡단 기준에 적어도 기초하여 적어도 하나의 SDSF 중 어느 것이 횡단될 수 있는지를 결정하는 제4 프로세서; 적어도 하나의 SDSF 횡단 기준, 변환된 포인트 클라우드 데이터, 및 루트 토폴로지에 적어도 기초하여 에지/가중치 그래프를 생성하는 제5 프로세서; 및 에지/가중치 그래프에 적어도 기초하여 시작 포인트로부터 종료 포인트까지의 경로를 선택하는 베이스 제어기를 포함하는, 자율 배송 차량. 21. 제20항에서와 같은 자율 배송 차량으로서, 적어도 하나의 SDSF 횡단 기준은, 적어도 하나의 SDSF의 미리 선택된 폭 및 적어도 하나의 SDSF의 미리 선택된 평활도; 드라이빙가능 표면을 포함하는, 적어도 하나의 SDSF와 AV 사이의 최소 진입 거리 및 최소 진출 거리, 및 AV에 의한 적어도 하나의 SDSF로의 대략 90° 접근을 수용하는, 적어도 하나의 SDSF와 AV 사이의 최소 진입 거리를 포함하는, 자율 배송 차량.1. An autonomous delivery vehicle comprising: a power base comprising two motorized front wheels, two motorized rear wheels and an energy store, the power base comprising at a commanded speed and configured to move in a commanded direction—; a cargo platform comprising a plurality of short-range sensors, the cargo platform being mechanically attached to a power base; a cargo container having a volume for accommodating at least one object, the cargo container mounted on top of a cargo platform; a long-range sensor suite comprising a LIDAR and one or more cameras, the long-range sensor suit mounted on top of a cargo container; and a controller for receiving data from the long-range sensor suite and the plurality of short-range sensors, wherein the controller determines a commanded speed and a commanded direction based at least on the data, the controller determining a commanded speed and a commanded direction to the power base to complete the transport; An autonomous delivery vehicle comprising: providing commanded direction. 2. The autonomous delivery vehicle of
22. 자율 디바이스에 대한 전역 점유 그리드를 관리하기 위한 방법으로서, 전역 점유 그리드는 전역 점유 그리드 셀들을 포함하고, 전역 점유 그리드 셀들은 점유 확률과 연관되고, 방법은, 자율 디바이스와 연관된 센서들로부터 센서 데이터를 수신하는 단계; 센서 데이터에 적어도 기초하여 로컬 점유 그리드를 생성하는 단계―로컬 점유 그리드는 로컬 점유 그리드 셀들을 가짐-; 자율 디바이스가 제1 영역으로부터 제2 영역으로 이동한 경우, 제2 영역과 연관된 이력 데이터에 액세스하는 단계; 이력 데이터에 적어도 기초하여 정적 그리드를 생성하는 단계; 자율 디바이스를 전역 점유 그리드의 중심 위치에 유지하기 위해 전역 점유 그리드를 이동시키는 단계; 정적 그리드에 기초하여 이동된 전역 점유 그리드를 업데이트하는 단계; 전역 점유 그리드 셀들 중 적어도 하나가 자율 디바이스의 위치와 일치하면, 전역 점유 그리드 셀들 중 적어도 하나를 비점유된 것으로서 마킹하는 단계; 로컬 점유 그리드 셀들 각각에 대해, 전역 점유 그리드 상의 로컬 점유 그리드 셀의 위치를 계산하는 단계; 위치에서의 전역 점유 그리드 셀로부터의 제1 점유 확률에 액세스하는 단계; 위치에서의 로컬 점유 그리드 셀로부터의 제2 점유 확률에 액세스하는 단계; 및 제1 점유 확률 및 제2 점유 확률에 적어도 기초하여 전역 점유 그리드 상의 위치에서의 새로운 점유 확률을 계산하는 단계를 포함하는, 자율 배송 차량. 23. 제22항에서와 같은 방법으로서, 새로운 점유 확률을 범위-체크하는 단계를 더 포함하는, 방법. 24. 제23항에서와 같은 방법으로서, 범위-체크는, 새로운 점유 확률 < 0 이면 새로운 점유 확률을 0으로 설정하는 단계; 및 새로운 점유 확률 > 1 이면 새로운 점유 확률을 1로 설정하는 단계를 포함하는, 방법. 25. 제22항에서와 같은 방법으로서, 전역 점유 그리드 셀을 새로운 점유 확률로 설정하는 단계를 더 포함하는, 방법. 26. 제23항에서와 같은 방법으로서, 전역 점유 그리드 셀을 범위-체크된 새로운 점유 확률로 설정하는 단계를 더 포함하는, 방법.22. A method for managing a global occupancy grid for an autonomous device, the global occupancy grid comprising globally occupied grid cells, wherein the global occupancy grid cells are associated with an occupancy probability, the method comprising: receiving data; generating a local occupancy grid based at least on the sensor data, the local occupancy grid having locally occupied grid cells; accessing historical data associated with the second area when the autonomous device has moved from the first area to the second area; generating a static grid based at least on the historical data; moving the global occupancy grid to maintain the autonomous device in a central position of the global occupancy grid; updating the moved global occupancy grid based on the static grid; if at least one of the globally occupied grid cells matches the location of the autonomous device, then marking at least one of the globally occupied grid cells as unoccupied; calculating, for each of the locally occupied grid cells, the location of the locally occupied grid cell on the global occupied grid; accessing a first occupancy probability from a global occupancy grid cell at the location; accessing a second occupancy probability from a locally occupied grid cell at the location; and calculating a new occupancy probability at the location on the global occupancy grid based at least on the first occupancy probability and the second occupancy probability. 23. The method as in clause 22, further comprising range-checking the new occupancy probability. 24. The method as in clause 23, wherein the range-checking comprises: if the new occupancy probability < 0, setting the new occupancy probability to zero; and setting the new occupancy probability to 1 if the new occupancy probability>1. 25. The method as in clause 22, further comprising setting the global occupancy grid cell to a new occupancy probability. 26. The method as in clause 23, further comprising setting the global occupancy grid cell to a range-checked new occupancy probability.
27. 점유 그리드들을 생성 및 관리하기 위한 방법으로서, 로컬 점유 그리드 생성 노드에 의해, 센서 측정치들(sensor measurements)을 디바이스와 연관된 기준의 프레임으로 변환하는 단계; 타임-스탬프된(time-stamped) 측정 점유 그리드를 생성하는 단계; 타임-스탬프된 측정 점유 그리드를 로컬 점유 그리드로서 게시(publishing)하는 단계; 복수의 로컬 점유 그리드들을 생성하는 단계; 저장소에서의 표면 특성들에 기초하여 정적 점유 그리드를 생성하는 단계―표면 특성들은 디바이스의 위치와 연관됨―; 디바이스 및 로컬 점유 그리드를 전역 점유 그리드에 대해 대략 중심에 유지하도록 디바이스의 위치와 연관된 전역 점유 그리드를 이동시키는 단계; 정적 점유 그리드로부터의 정보를 전역 점유 그리드에 추가하는 단계; 디바이스에 의해 현재 점유된 전역 점유 그리드에서의 영역을 비점유된 것으로서 마킹하는 단계; 각각의 로컬 점유 그리드에서의 적어도 하나의 셀 각각에 대해, 전역 점유 그리드에서의 적어도 하나의 셀의 위치를 결정하는 단계; 위치에서의 제1 값에 액세스하는 단계; 로컬 점유 그리드에서의 적어도 하나의 셀에서의 셀 값과 제1 값 사이의 관계에 기초하여 위치에서의 제2 값을 결정하는 단계; 제2 값을 미리 선택된 확률 범위와 비교하는 단계; 및 확률 값이 미리 선택된 확률 범위 내에 있다면 전역 점유 그리드를 새로운 값으로 설정하는 단계를 포함하는, 방법. 28. 제27항에서와 같은 방법으로서, 전역 점유 그리드를 게시하는 단계를 더 포함하는, 방법. 29. 제27항에서와 같은 방법으로서, 표면 특성들은 표면 타입 및 표면 불연속성들을 포함하는, 방법. 30. 제27항에서와 같은 방법으로서, 관계는 합산을 포함하는, 방법. 31. 점유 그리드들을 생성 및 관리하기 위한 시스템으로서, 적어도 하나의 로컬 점유 그리드를 생성하는 복수의 로컬 그리드 생성 노드들―적어도 하나의 로컬 점유 그리드는 디바이스의 위치와 연관되고, 적어도 하나의 로컬 점유 그리드는 적어도 하나의 셀을 포함함―; 적어도 하나의 로컬 점유 그리드에 액세스하는 전역 점유 그리드 관리자를 포함하고, 전역 점유 그리드 관리자는 저장소에서의 표면 특성들에 기초하여 정적 점유 그리드를 생성하고―표면 특성들은 디바이스의 위치와 연관됨―; 디바이스 및 적어도 하나의 로컬 점유 그리드를 전역 점유 그리드에 대해 대략 중심에 유지하도록 디바이스의 위치와 연관된 전역 점유 그리드를 이동시키고; 정적 점유 그리드로부터의 정보를 적어도 하나의 전역 점유 그리드에 추가하고; 디바이스에 의해 현재 점유된 전역 점유 그리드에서의 영역을 비점유된 것으로서 마킹하고; 각각의 로컬 점유 그리드에서의 적어도 하나의 셀 각각에 대해, 전역 점유 그리드에서의 적어도 하나의 셀의 위치를 결정하고; 위치에서의 제1 값에 액세스하고; 로컬 점유 그리드에서의 적어도 하나의 셀에서의 셀 값과 제1 값 사이의 관계에 기초하여 위치에서의 제2 값을 결정하고; 제2 값을 미리 선택된 확률 범위와 비교하고; 및 확률 값이 미리 선택된 확률 범위 내에 있다면 전역 점유 그리드를 새로운 값으로 설정하는, 시스템.27. A method for creating and managing occupancy grids, comprising: converting, by a local occupancy grid generating node, sensor measurements into a frame of reference associated with a device; creating a time-stamped measurement occupancy grid; publishing the time-stamped measurement occupancy grid as a local occupancy grid; creating a plurality of local occupancy grids; generating a static occupancy grid based on the surface properties in the repository, the surface properties being associated with a location of the device; moving the global occupancy grid associated with the location of the device to maintain the device and the local occupancy grid approximately centered relative to the global occupancy grid; adding information from the static occupancy grid to the global occupancy grid; marking an area in the global occupancy grid currently occupied by the device as unoccupied; determining, for each of the at least one cell in each local occupancy grid, a location of the at least one cell in the global occupancy grid; accessing a first value at the location; determining a second value at the location based on a relationship between the cell value and the first value in at least one cell in the local occupancy grid; comparing the second value to a preselected range of probability; and setting the global occupancy grid to a new value if the probability value is within the preselected probability range. 28. A method as in clause 27, further comprising posting a global occupancy grid. 29. A method as in clause 27, wherein the surface properties include surface type and surface discontinuities. 30. A method as in clause 27, wherein the relationship comprises a summation. 31. A system for creating and managing occupancy grids, comprising a plurality of local grid generating nodes that create at least one local occupancy grid, wherein at least one local occupancy grid is associated with a location of a device, the at least one local occupancy grid contains at least one cell; a global occupancy grid manager accessing at least one local occupancy grid, the global occupancy grid manager generating a static occupancy grid based on surface properties in the repository, the surface properties associated with a location of the device; move the global occupancy grid associated with the location of the device to maintain the device and the at least one local occupancy grid approximately centered with respect to the global occupancy grid; add information from the static occupancy grid to the at least one global occupancy grid; mark an area in the global occupancy grid currently occupied by the device as unoccupied; determine, for each of the at least one cell in each local occupancy grid, a location of the at least one cell in the global occupancy grid; access a first value at the location; determine a second value at the location based on a relationship between the cell value and the first value in at least one cell in the local occupancy grid; compare the second value to a preselected range of probability; and setting the global occupancy grid to a new value if the probability value is within a preselected probability range.
32. 전역 점유 그리드를 업데이트하기 위한 방법으로서, 자율 디바이스가 새로운 위치로 이동한 경우, 새로운 위치와 연관된 정적 그리드로부터의 정보로 전역 점유 그리드를 업데이트하는 단계; 새로운 위치에서의 표면들을 분석하는 단계; 표면들이 드라이빙가능한 경우, 표면들을 업데이트하고 업데이트된 표면들로 전역 점유 그리드를 업데이트하는 단계; 및 정적 값들의 저장소로부터의 값들로 전역 점유 그리드를 업데이트하는 단계―정적 값들은 새로운 위치와 연관됨―를 포함하는, 방법. 33. 제32항에서와 같은 방법으로서, 표면들을 업데이트하는 단계는, 새로운 위치와 연관된 로컬 점유 그리드에 액세스하는 단계; 로컬 점유 그리드에서의 각각의 셀에 대해, 로컬 점유 그리드 표면 분류 신뢰도 값 및 로컬 점유 그리드 표면 분류에 액세스하는 단계; 로컬 점유 그리드 표면 분류가 셀에서의 전역 점유 그리드에서의 전역 표면 분류와 동일한 경우, 전역 점유 그리드에서의 전역 표면 분류 신뢰도 값을 로컬 점유 그리드 표면 분류 신뢰도 값에 추가하여 합계를 형성하고, 합계로 셀에서의 전역 점유 그리드를 업데이트하는 단계; 로컬 점유 그리드 표면 분류가 셀에서의 전역 점유 그리드에서의 전역 표면 분류와 동일하지 않은 경우, 전역 점유 그리드에서의 전역 표면 분류 신뢰도 값으로부터 로컬 점유 그리드 표면 분류 신뢰도 값을 감산하여 차이를 형성하고, 차이로 전역 점유 그리드를 업데이트하는 단계; 차이가 0보다 작은 경우, 로컬 점유 그리드 표면 분류로 전역 점유 그리드를 업데이트하는 단계를 포함하는, 방법. 34. 제32항에서와 같은 방법으로서, 정적 값들의 저장소로부터의 값들로 전역 점유 그리드를 업데이트하는 단계는, 로컬 점유 그리드에서의 각각의 셀에 대해, 로컬 점유 그리드로부터, 셀이 점유되어 있는 로컬 점유 그리드 확률 값, 로그오즈 값에 액세스하는 단계; 셀에서의 로컬 점유 그리드 로그오즈 값으로 전역 점유 그리드에서의 로그오즈 값을 업데이트하는 단계; 셀이 점유되어 있지 않다는 미리 선택된 확실성이 충족되는 경우, 및 자율 디바이스가 차선 장벽들(lane barriers) 내에서 이동하고 있는 경우, 및 로컬 점유 그리드 표면 분류가 드라이빙가능 표면을 표시하는 경우, 셀이 로컬 점유 그리드에서 점유되어 있는 로그오즈를 감소시키는 단계; 자율 디바이스가 비교적 균일한 표면들을 만날 것으로 예상하는 경우, 및 로컬 점유 그리드 표면 분류가 비교적 불균일한 표면을 표시하는 경우, 로컬 점유 그리드에서의 로그오즈를 증가시키는 단계; 및 자율 디바이스가 비교적 균일한 표면들을 만날 것으로 예상하는 경우, 및 로컬 점유 그리드 표면 분류가 비교적 균일한 표면을 표시하는 경우, 로컬 점유 그리드에서의 로그오즈를 감소시키는 단계를 포함하는, 방법.32. A method for updating a global occupancy grid, comprising: when an autonomous device has moved to a new location, updating the global occupancy grid with information from the static grid associated with the new location; analyzing the surfaces at the new location; if the surfaces are drivable, updating the surfaces and updating the global occupancy grid with the updated surfaces; and updating the global occupancy grid with values from the store of static values, the static values associated with the new location. 33. The method as in clause 32, wherein updating the surfaces comprises: accessing a local occupancy grid associated with the new location; accessing, for each cell in the local occupancy grid, a local occupancy grid surface classification confidence value and a local occupancy grid surface classification; If the local occupancy grid surface classification is the same as the global surface classification in the global occupancy grid in the cell, the global surface classification confidence value in the global occupancy grid is added to the local occupancy grid surface classification confidence value to form a sum, and the cell as the sum updating the global occupancy grid in ; If the local occupancy grid surface classification is not the same as the global surface classification in the global occupancy grid in the cell, subtract the local occupancy grid surface classification confidence value from the global surface classification confidence value in the global occupancy grid to form a difference; updating the global occupancy grid with if the difference is less than zero, updating the global occupancy grid with the local occupancy grid surface classification. 34. The method as in clause 32, wherein updating the global occupancy grid with values from the store of static values comprises, for each cell in the local occupancy grid, from the local occupancy grid, the local occupancy of the cell. accessing the occupancy grid probability value, log odds value; updating the log odds value in the global occupancy grid with the local occupancy grid log odds value in the cell; If the preselected certainty that the cell is not occupied is met, and if the autonomous device is moving within lane barriers, and if the locally occupied grid surface classification indicates a drivable surface, the cell is reducing the log odds occupied in the occupancy grid; increasing the log odds in the local occupancy grid if the autonomous device expects to encounter relatively uniform surfaces, and if the local occupancy grid surface classification indicates a relatively non-uniform surface; and reducing log odds in the local occupancy grid if the autonomous device expects to encounter relatively uniform surfaces, and if the local occupancy grid surface classification indicates a relatively uniform surface.
35. 디바이스의 구성의 실시간 제어를 위한 방법으로서, 디바이스는 섀시, 적어도 4개의 휠들, 적어도 4개의 휠들 중 적어도 하나와 동작가능하게 결합된 섀시의 제1 측, 및 적어도 4개의 휠들 중 적어도 하나와 동작가능하게 결합된 섀시의 대향하는 제2 측을 포함하고, 방법은, 이전의 표면 피처들 및 점유 그리드에 적어도 기초하여 맵을 생성하는 단계―맵은 비실시간으로 생성되고, 맵은 적어도 하나의 위치를 포함하며, 적어도 하나의 위치는 적어도 하나의 표면 피처와 연관되고, 적어도 하나의 표면 피처는 적어도 하나의 표면 분류 및 적어도 하나의 모드와 연관됨―; 디바이스가 이동함에 따라 현재 표면 피처들을 결정하는 단계; 현재 표면 피처들로 점유 그리드를 실시간으로 업데이트하는 단계; 점유 그리드 및 맵으로부터, 디바이스가 적어도 하나의 표면 피처를 횡단하기 위해 이동할 수 있는 경로를 결정하는 단계를 포함하는, 방법.35. A method for real-time control of a configuration of a device, the device comprising: a chassis, at least four wheels, a first side of the chassis operatively coupled with at least one of the at least four wheels, and at least one of the at least four wheels; an opposing second side of the chassis operatively coupled, the method comprising: generating a map based at least on prior surface features and an occupancy grid, wherein the map is generated non-real-time, the map comprising: comprising a location, wherein the at least one location is associated with the at least one surface feature, the at least one surface feature is associated with the at least one surface classification and the at least one mode; determining current surface features as the device moves; updating the occupancy grid with current surface features in real time; determining, from the occupancy grid and map, a path a device can travel to traverse the at least one surface feature.
36. 디바이스의 구성의 실시간 제어를 위한 방법으로서, 디바이스는 섀시, 적어도 4개의 휠들, 적어도 4개의 휠들 중 적어도 하나와 동작가능하게 결합된 섀시의 제1 측, 및 적어도 4개의 휠들 중 적어도 하나와 동작가능하게 결합된 섀시의 대향하는 제2 측을 포함하고, 방법은, 환경 데이터를 수신하는 단계; 환경 데이터에 적어도 기초하여 표면 타입을 결정하는 단계; 표면 타입 및 제1 구성에 적어도 기초하여 모드를 결정하는 단계; 모드 및 표면 타입에 적어도 기초하여 제2 구성을 결정하는 단계; 제2 구성에 적어도 기초하여 이동 명령들을 결정하는 단계; 및 디바이스를 제1 구성으로부터 제2 구성으로 변경하기 위해 이동 명령들을 이용하여 디바이스의 구성을 제어하는 단계를 포함하는, 방법. 37. 제36항에서와 같은 방법으로서, 환경 데이터는 RGB-D 이미지 데이터를 포함하는, 방법. 38. 제36항에서와 같은 방법으로서, 표면 타입 및 모드에 적어도 기초하여 점유 그리드를 채우는 단계; 및 점유 그리드에 적어도 기초하여 이동 명령들을 결정하는 단계를 더 포함하는, 방법. 39. 제38항에서와 같은 방법으로서, 점유 그리드는 적어도 하나의 이미지 센서로부터의 데이터에 적어도 기초한 정보를 포함하는, 방법. 40. 제36항에서와 같은 방법으로서, 환경 데이터는 노면의 토폴로지를 포함하는, 방법. 41. 제36항에서와 같은 방법으로서, 구성은 적어도 4개의 휠들의 클러스터링된 2개의 쌍들을 포함하고, 2개의 쌍들 중 제1 쌍은 제1 측 상에 위치되고, 2개의 쌍들 중 제2 쌍은 제2 측 상에 위치되고, 제1 쌍은 제1 전방 휠 및 제1 후방 휠을 포함하고, 제2 쌍은 제2 전방 휠 및 제2 후방 휠을 포함하는, 방법. 42. 제41항에서와 같은 방법으로서, 구성을 제어하는 단계는, 환경 데이터에 적어도 기초하여 제1 쌍 및 제2 쌍에 조정된 전력을 공급하는 단계를 포함하는, 방법. 43. 제41항에서와 같은 방법으로서, 구성을 제어하는 단계는, 적어도 4개의 휠들 및 수축된 캐스터들의 쌍을 구동하는 것―캐스터들의 쌍은 섀시에 동작가능하게 결합됨―으로부터, 제1 전방 휠 및 제2 전방 휠을 들어올리기 위해 클러스터링된 제1 쌍 및 클러스터링된 제2 쌍이 회전된 2개의 휠들을 구동하는 것으로 전환하는 단계―디바이스는 제1 후방 휠, 제2 후방 휠, 및 캐스터들의 쌍 상에 놓임―를 포함하는, 방법. 44. 제41항에서와 같은 방법으로서, 구성을 제어하는 단계는, 환경 데이터에 적어도 기초하여 제1 측 상의 제1의 2개의 전동 휠들 및 제2 측 상의 제2의 2개의 전동 휠들과 동작가능하게 결합된 클러스터들의 쌍을 회전시키는 단계를 포함하는, 방법. 45. 제36항에서와 같은 방법으로서, 디바이스는 화물 컨테이너를 더 포함하고, 화물 컨테이너는 섀시 상에 장착되고, 섀시는 화물 컨테이너의 높이를 제어하는, 방법. 46. 제45항에서와 같은 방법으로서, 화물 컨테이너의 높이는 환경 데이터에 적어도 기초하는, 방법.36. A method for real-time control of a configuration of a device, the device comprising: a chassis, at least four wheels, a first side of the chassis operatively coupled with at least one of the at least four wheels, and at least one of the at least four wheels; an opposing second side of the chassis operatively coupled, the method comprising: receiving environmental data; determining a surface type based at least on the environmental data; determining a mode based at least on the surface type and the first configuration; determining a second configuration based at least on the mode and the surface type; determining movement instructions based at least on the second configuration; and controlling the configuration of the device using the move commands to change the device from the first configuration to the second configuration. 37. A method as in clause 36, wherein the environmental data comprises RGB-D image data. 38. A method as in clause 36, further comprising: filling the occupancy grid based at least on the surface type and mode; and determining movement instructions based at least on the occupancy grid. 39. A method as in clause 38, wherein the occupancy grid comprises information based at least on data from the at least one image sensor. 40. A method as in clause 36, wherein the environmental data comprises a topology of the road surface. 41. The method as in clause 36, wherein the configuration comprises clustered two pairs of at least four wheels, a first pair of the two pairs positioned on a first side, a second pair of the two pairs is located on the second side, the first pair comprising a first front wheel and a first rear wheel, and the second pair comprising a second front wheel and a second rear wheel. 42. The method as in clause 41, wherein controlling the configuration comprises supplying conditioned power to the first pair and the second pair based at least on the environmental data. 43. The method as in clause 41, wherein controlling the configuration comprises: from driving at least four wheels and a pair of retracted casters, the pair of casters operatively coupled to the chassis, the first front converting the clustered first pair and the clustered second pair to driving the two wheels rotated to lift the wheel and the second front wheel, the device comprising the first rear wheel, the second rear wheel, and the pair of casters placed on the bed. 44. The method as in clause 41, wherein the controlling the configuration is operable with the first two powered wheels on the first side and the second two powered wheels on the second side based at least on the environmental data. rotating a pair of tightly coupled clusters. 45. The method as in clause 36, wherein the device further comprises a cargo container, wherein the cargo container is mounted on the chassis, wherein the chassis controls the height of the cargo container. 46. A method as in clause 45, wherein the height of the cargo container is based at least on environmental data.
47. 디바이스의 구성의 실시간 제어를 위한 시스템으로서, 디바이스는 섀시, 적어도 4개의 휠들, 섀시의 제1 측, 및 섀시의 대향하는 제2 측을 포함하고, 시스템은, 디바이스를 둘러싸는 실시간 환경 데이터를 수신하는 디바이스 프로세서―디바이스 프로세서는 환경 데이터에 적어도 기초하여 표면 타입을 결정하고, 디바이스 프로세서는 표면 타입 및 제1 구성에 적어도 기초하여 모드를 결정하고, 디바이스 프로세서는 모드 및 표면 타입에 적어도 기초하여 제2 구성을 결정함―; 및 제2 구성에 적어도 기초하여 이동 명령들을 결정하는 파워 베이스 프로세서―파워 베이스 프로세서는 디바이스를 제1 구성으로부터 제2 구성으로 변경하기 위해 이동 명령들을 이용함으로써 디바이스의 구성을 제어함―를 포함하는, 시스템. 48. 제47항에서와 같은 시스템으로서, 환경 데이터는 RGB-D 이미지 데이터를 포함하는, 시스템. 49. 제47항에서와 같은 시스템으로서, 디바이스 프로세서는 표면 타입 및 모드에 적어도 기초하여 점유 그리드를 채우는 것을 포함하는, 시스템. 50. 제49항에서와 같은 시스템으로서, 파워 베이스 프로세서는 점유 그리드에 적어도 기초하여 이동 명령들을 결정하는 것을 포함하는, 시스템. 51. 제49항에서와 같은 시스템으로서, 점유 그리드는 적어도 하나의 이미지 센서로부터의 데이터에 적어도 기초한 정보를 포함하는, 시스템. 52. 제47항에서와 같은 시스템으로서, 환경 데이터는 노면의 토폴로지를 포함하는, 시스템. 53. 제47항에서와 같은 시스템으로서, 구성은 적어도 4개의 휠들의 클러스터링된 2개의 쌍들을 포함하고, 2개의 쌍들 중 제1 쌍은 제1 측 상에 위치되고, 2개의 쌍들 중 제2 쌍은 제2 측 상에 위치되고, 제1 쌍은 제1 전방 휠 및 제1 후방 휠을 갖고, 제2 쌍은 제2 전방 휠 및 제2 후방 휠을 갖는, 시스템. 54. 제53항에서와 같은 시스템으로서, 구성의 제어는, 환경 데이터에 적어도 기초하여 제1 쌍 및 제2 쌍에 조정된 전력을 공급하는 것을 포함하는, 시스템. 55. 제53항에서와 같은 시스템으로서, 구성의 제어는, 적어도 4개의 휠들 및 수축된 캐스터들의 쌍을 구동하는 것―캐스터들의 쌍은 섀시에 동작가능하게 결합됨―으로부터, 제1 전방 휠 및 제2 전방 휠을 들어올리기 위해 클러스터링된 제1 쌍 및 클러스터링된 제2 쌍이 회전된 2개의 휠들을 구동하는 것으로 전환하는 것―디바이스는 제1 후방 휠, 제2 후방 휠, 및 캐스터들의 쌍 상에 놓임―을 포함하는, 시스템. 56. 전역 점유 그리드를 유지하기 위한 방법으로서, 자율 디바이스의 제1 위치를 위치결정하는 단계; 자율 디바이스가 전역 점유 그리드 및 로컬 점유 그리드와 연관되는 제2 위치로 이동할 때, 제1 위치와 연관된 적어도 하나의 점유 확률 값으로 전역 점유 그리드를 업데이트하는 단계; 로컬 점유 그리드와 연관된 적어도 하나의 드라이빙가능 표면으로 전역 점유 그리드를 업데이트하는 단계; 적어도 하나의 드라이빙가능 표면과 연관된 표면 신뢰도들로 전역 점유 그리드를 업데이트하는 단계; 제1 베이지안 함수(Bayesian function)를 이용하여 적어도 하나의 점유 확률 값의 로그오즈로 전역 점유 그리드를 업데이트하는 단계; 및 제2 위치와 연관된 특성들에 적어도 기초하여 로그오즈를 조정하는 단계; 및 자율 디바이스가 제1 위치에서 유지되고, 전역 점유 그리드 및 로컬 점유 그리드가 함께 위치될 때, 로컬 점유 그리드와 연관된 적어도 하나의 드라이빙가능 표면으로 전역 점유 그리드를 업데이트하는 단계; 적어도 하나의 드라이빙가능 표면과 연관된 표면 신뢰도들로 전역 점유 그리드를 업데이트하는 단계; 제2 베이지안 함수를 이용하여 적어도 하나의 점유 확률 값의 로그오즈로 전역 점유 그리드를 업데이트하는 단계; 및 제2 위치와 연관된 특성들에 적어도 기초하여 로그오즈를 조정하는 단계를 포함하는, 방법. 57. 제35항에서와 같은 방법으로서, 맵을 생성하는 단계는, 표면을 나타내는 포인트 클라우드 데이터에 액세스하는 단계; 포인트 클라우드 데이터를 필터링하는 단계; 필터링된 포인트 클라우드 데이터를 처리가능 부분들로 형성하는 단계; 처리가능 부분들을 적어도 하나의 오목 다각형으로 병합하는 단계; 적어도 하나의 오목 다각형에서 적어도 하나의 SDSF를 위치결정 및 라벨링하는 단계―위치결정 및 라벨링하는 단계는 라벨링된 포인트 클라우드 데이터를 형성함―; 적어도 하나의 오목 다각형에 적어도 기초하여 그래핑 다각형들을 생성하는 단계; 및 그래핑 다각형들에 적어도 기초하여 시작 포인트로부터 종료 포인트까지의 경로를 선택하는 단계―AV는 경로를 따라 적어도 하나의 SDSF를 횡단함―를 포함하는, 방법. 58. 제57항에서와 같은 방법으로서, 포인트 클라우드 데이터를 필터링하는 단계는, 포인트 클라우드 데이터로부터 과도 물체들을 나타내는 포인트들 및 이상치들을 나타내는 포인트들을 조건부로 제거하는 단계; 및 미리 선택된 높이를 갖는 제거된 포인트들을 대체하는 단계를 포함하는, 방법. 59. 제57항에서와 같은 방법으로서, 처리가능 부분들을 형성하는 단계는, 포인트 클라우드 데이터를 처리가능 부분들로 세그먼트화하는 단계; 및 미리 선택된 높이의 포인트들을 처리가능 부분들로부터 제거하는 단계를 포함하는, 방법. 60. 제57항에서와 같은 방법으로서, 처리가능 부분들을 병합하는 단계는, 이상치들, 복셀들, 및 법선들을 분석함으로써 처리가능 부분들의 크기를 감소시키는 단계; 감소된 크기의 처리가능 부분들로부터 영역들을 성장시키는 단계; 성장된 영역들로부터 초기 드라이빙가능 표면들을 결정하는 단계; 초기 드라이빙가능 표면들을 세그먼트화 및 메싱하는 단계; 세그먼트화 및 메싱된 초기 드라이빙가능 표면들 내에 다각형들을 위치결정하는 단계; 및 다각형들에 적어도 기초하여 적어도 하나의 드라이빙가능 표면을 설정하는 단계를 포함하는, 방법. 61. 제60항에서와 같은 방법으로서, 적어도 하나의 SDSF를 위치결정 및 라벨링하는 단계는, SDSF 필터에 따라 초기 드라이빙가능 표면들의 포인트 클라우드 데이터를 정렬하는 단계―SDSF 필터는 포인트들의 적어도 3개의 카테고리들을 포함함―; 및 포인트들의 적어도 3개의 카테고리들이, 조합하여, 적어도 하나의 제1 미리 선택된 기준을 충족하는지에 적어도 기초하여 적어도 하나의 SDSF 포인트를 위치결정하는 단계를 포함하는, 방법. 62. 제61항에서와 같은 방법으로서, 복수의 적어도 하나의 SDSF 포인트가, 조합하여, 적어도 하나의 제2 미리 선택된 기준을 충족하는지에 적어도 기초하여 적어도 하나의 SDSF 궤적을 생성하는 단계를 더 포함하는, 방법. 63. 제62항에서와 같은 방법으로서, 그래핑 다각형들을 생성하는 단계는, 적어도 하나의 드라이빙가능 표면으로부터 적어도 하나의 다각형을 생성하는 단계―적어도 하나의 다각형은 외부 에지들을 포함함―; 외부 에지들을 평활화하는 단계; 평활화된 외부 에지들에 기초하여 드라이빙 마진을 형성하는 단계; 적어도 하나의 SDSF 궤적을 적어도 하나의 드라이빙가능 표면에 추가하는 단계; 및 적어도 하나의 제3 미리 선택된 기준에 따라 적어도 하나의 드라이빙가능 표면으로부터 내부 에지들을 제거하는 단계를 더 포함하는, 방법. 64. 제63항에서와 같은 방법으로서, 외부 에지들을 평활화하는 단계는, 외부 에지들을 바깥쪽으로 트리밍하여 바깥쪽 에지들을 형성하는 단계를 포함하는, 방법. 65. 제63항에서와 같은 방법으로서, 평활화된 외부 에지들의 드라이빙 마진을 형성하는 단계는, 바깥쪽 에지들을 안쪽으로 트리밍하는 단계를 포함하는, 방법.47. A system for real-time control of a configuration of a device, wherein the device comprises a chassis, at least four wheels, a first side of the chassis, and an opposite second side of the chassis, the system comprising: real-time environmental data surrounding the device a device processor to receive, the device processor to determine a surface type based at least on the environmental data, the device processor to determine a mode based at least on the surface type and the first configuration, and the device processor to determine a mode based at least on the mode and the surface type. determine the second configuration; and a power base processor that determines move instructions based at least on the second configuration, wherein the power base processor controls the configuration of the device by using the move instructions to change the device from the first configuration to the second configuration. system. 48. The system as in clause 47, wherein the environmental data comprises RGB-D image data. 49. The system as in clause 47, wherein the device processor comprises populating the occupancy grid based at least on the surface type and mode. 50. The system as in clause 49, wherein the power base processor comprises determining movement instructions based at least on the occupancy grid. 51. The system as in clause 49, wherein the occupancy grid comprises information based at least on data from at least one image sensor. 52. The system as in clause 47, wherein the environmental data comprises a topology of the road surface. 53. The system as in clause 47, wherein the configuration comprises clustered two pairs of at least four wheels, a first pair of the two pairs positioned on a first side, a second pair of the two pairs is located on the second side, the first pair having a first front wheel and a first rear wheel, and the second pair having a second front wheel and a second rear wheel. 54. The system as in clause 53, wherein controlling the configuration comprises supplying conditioned power to the first pair and the second pair based at least on the environmental data. 55. The system as in clause 53, wherein control of the configuration comprises, from driving at least four wheels and a pair of retracted casters, the pair of casters operatively coupled to the chassis, the first front wheel and converting the first pair of clustered and the second pair of clustered to driving the two wheels rotated to lift the second front wheel, the device being on the first rear wheel, the second rear wheel, and the pair of casters A system comprising—placed. 56. A method for maintaining a global occupancy grid comprising: locating a first location of an autonomous device; updating the global occupancy grid with at least one occupancy probability value associated with the first location when the autonomous device moves to a second location associated with the global occupancy grid and the local occupancy grid; updating the global occupancy grid with at least one drivable surface associated with the local occupancy grid; updating the global occupancy grid with surface confidences associated with the at least one drivable surface; updating the global occupancy grid with the log odds of at least one occupancy probability value using a first Bayesian function; and adjusting the log odds based at least on the characteristics associated with the second location. and updating the global occupancy grid with at least one drivable surface associated with the local occupancy grid when the autonomous device is maintained in the first location and the global occupancy grid and the local occupancy grid are co-located; updating the global occupancy grid with surface confidences associated with the at least one drivable surface; updating the global occupancy grid with log odds of at least one occupancy probability value using a second Bayesian function; and adjusting the log odds based at least on characteristics associated with the second location. 57. A method as in clause 35, wherein generating the map comprises: accessing point cloud data representing the surface; filtering the point cloud data; forming the filtered point cloud data into processable portions; merging the processable portions into at least one concave polygon; locating and labeling the at least one SDSF in the at least one concave polygon, wherein the locating and labeling forms labeled point cloud data; generating graphing polygons based at least on the at least one concave polygon; and selecting a path from a start point to an end point based at least on the graphing polygons, wherein the AV traverses the at least one SDSF along the path. 58. The method as in clause 57, wherein filtering the point cloud data comprises: conditionally removing points representing transient objects and points representing outliers from the point cloud data; and replacing the removed points having a preselected height. 59. A method as in clause 57, wherein forming the processable portions comprises: segmenting the point cloud data into the processable portions; and removing points of the preselected height from the processable portions. 60. The method as in clause 57, wherein merging the processable portions comprises: reducing the size of the processable portions by analyzing outliers, voxels, and normals; growing regions from the reduced size processable portions; determining initial drivable surfaces from the grown regions; segmenting and meshing the initial drivable surfaces; positioning polygons within the segmented and meshed initial drivable surfaces; and setting the at least one drivable surface based at least on the polygons. 61. The method as in clause 60, wherein locating and labeling the at least one SDSF comprises: sorting the point cloud data of the initial drivable surfaces according to an SDSF filter, wherein the SDSF filter comprises at least three categories of points. including -; and locating the at least one SDSF point based at least on whether the at least three categories of points, in combination, satisfy the at least one first preselected criterion. 62. The method as in clause 61, further comprising generating at least one SDSF trajectory based at least on whether the plurality of at least one SDSF points, in combination, satisfy at least one second preselected criterion. How to. 63. The method as in clause 62, wherein generating the graphing polygons comprises: generating at least one polygon from the at least one drivable surface, wherein the at least one polygon includes outer edges; smoothing the outer edges; forming a driving margin based on the smoothed outer edges; adding at least one SDSF trajectory to the at least one drivable surface; and removing the inner edges from the at least one drivable surface according to the at least one third preselected criterion. 64. A method as in clause 63, wherein smoothing the outer edges comprises trimming the outer edges outward to form the outer edges. 65. The method as in clause 63, wherein forming a driving margin of the smoothed outer edges comprises trimming the outer edges inward.
66. 자율 배송 차량으로서, 2개의 전동 전방 휠들, 2개의 전동 후방 휠들 및 에너지 저장소를 포함하는 파워 베이스―파워 베이스는 명령된 속도로 이동하도록 구성됨―; 복수의 단거리 센서들을 포함하는 화물 플랫폼―화물 플랫폼은 파워 베이스에 기계적으로 부착됨―; 배송할 하나 이상의 물체를 수용하기 위한 볼륨을 갖는 화물 컨테이너―화물 컨테이너는 화물 플랫폼의 최상부 상에 장착됨―; LIDAR 및 하나 이상의 카메라를 포함하는 장거리 센서 슈트―장거리 센서 슈트는 화물 컨테이너의 최상부 상에 장착됨―; 및 장거리 센서 슈트 및 복수의 단거리 센서들로부터 데이터를 수신하는 제어기를 포함하는, 자율 배송 차량. 67. 제66항의 자율 배송 차량으로서, 복수의 단거리 센서들은 드라이빙가능 표면의 적어도 하나의 특성을 검출하는, 자율 배송 차량. 68. 제66항의 자율 배송 차량으로서, 복수의 단거리 센서들은 스테레오 카메라들인, 자율 배송 차량. 69. 제66항의 자율 배송 차량으로서, 복수의 단거리 센서들은 IR 프로젝터, 2개의 이미지 센서들 및 RGB 센서를 포함하는, 자율 배송 차량. 70. 제66항의 자율 배송 차량으로서, 복수의 단거리 센서들은 레이더 센서들인, 자율 배송 차량. 71. 제66항의 자율 배송 차량으로서, 단거리 센서들은 RGB-D 데이터를 제어기에 공급하는, 자율 배송 차량. 72. 제66항의 자율 배송 차량으로서, 제어기는 복수의 단거리 센서들로부터 수신된 RGB-D 데이터에 기초하여 노면의 기하구조를 결정하는, 자율 배송 차량. 73. 제66항의 자율 배송 차량으로서, 복수의 단거리 센서들은 자율 배송 차량의 4미터 이내의 물체들을 검출하고, 장거리 센서 슈트는 자율 배송 차량으로부터 4미터보다 더 떨어져 있는 물체들을 검출하는, 자율 배송 차량.66. An autonomous delivery vehicle, comprising: a power base comprising two powered front wheels, two powered rear wheels and an energy store, the power base configured to move at a commanded speed; a cargo platform comprising a plurality of short-range sensors, the cargo platform being mechanically attached to a power base; a cargo container having a volume for receiving one or more objects to be shipped, the cargo container mounted on top of a cargo platform; a long-range sensor suite comprising a LIDAR and one or more cameras, the long-range sensor suit mounted on top of a cargo container; and a controller that receives data from the long-range sensor suite and the plurality of short-range sensors. 67. The autonomous delivery vehicle of clause 66, wherein the plurality of short-range sensors detect at least one characteristic of the drivable surface. 68. The autonomous delivery vehicle of clause 66, wherein the plurality of short-range sensors are stereo cameras. 69. The autonomous delivery vehicle of clause 66, wherein the plurality of short-range sensors comprises an IR projector, two image sensors and an RGB sensor. 70. The autonomous delivery vehicle of clause 66, wherein the plurality of short-range sensors are radar sensors. 71. The autonomous delivery vehicle of clause 66, wherein the short-range sensors supply RGB-D data to the controller. 72. The autonomous delivery vehicle of clause 66, wherein the controller determines the geometry of the road surface based on RGB-D data received from the plurality of short-range sensors. 73. The autonomous delivery vehicle of clause 66, wherein the plurality of short-range sensors detect objects within 4 meters of the autonomous delivery vehicle and the long-range sensor suite detects objects that are more than 4 meters away from the autonomous delivery vehicle. .
74. 자율 배송 차량으로서, 적어도 2개의 전동 후방 휠들, 캐스터 전방 휠들 및 에너지 저장소를 포함하는 파워 베이스―파워 베이스는 명령된 속도로 이동하도록 구성됨―; 복수의 단거리 센서들을 포함하는 화물 플랫폼―화물 플랫폼은 파워 베이스에 기계적으로 부착됨―; 배송할 하나 이상의 물체를 수용하기 위한 볼륨을 갖는 화물 컨테이너―화물 컨테이너는 화물 플랫폼의 최상부 상에 장착됨―; LIDAR 및 하나 이상의 카메라를 포함하는 장거리 센서 슈트―장거리 센서 슈트는 화물 컨테이너의 최상부 상에 장착됨―; 및 장거리 센서 슈트 및 복수의 단거리 센서들로부터 데이터를 수신하는 제어기를 포함하는, 자율 배송 차량. 75. 제74항의 자율 배송 차량으로서, 복수의 단거리 센서들은 드라이빙가능 표면의 적어도 하나의 특성을 검출하는, 자율 배송 차량. 76. 제74항의 자율 배송 차량으로서, 복수의 단거리 센서들은 스테레오 카메라들인, 자율 배송 차량. 77. 제74항의 자율 배송 차량으로서, 복수의 단거리 센서들은 IR 프로젝터, 2개의 이미지 센서들 및 RGB 센서를 포함하는, 자율 배송 차량. 78. 제74항의 자율 배송 차량으로서, 복수의 단거리 센서들은 레이더 센서들인, 자율 배송 차량. 79. 제74항의 자율 배송 차량으로서, 단거리 센서들은 RGB-D 데이터를 제어기에 공급하는, 자율 배송 차량. 80. 제74항의 자율 배송 차량으로서, 제어기는 복수의 단거리 센서들로부터 수신된 RGB-D 데이터에 기초하여 노면의 기하구조를 결정하는, 자율 배송 차량. 81. 제74항의 자율 배송 차량으로서, 복수의 단거리 센서들은 자율 배송 차량의 4미터 이내의 물체들을 검출하고, 장거리 센서 슈트는 자율 배송 차량으로부터 4미터보다 더 떨어져 있는 물체들을 검출하는, 자율 배송 차량. 82. 제74항의 자율 배송 차량으로서, 캐스터 휠들이 지면으로부터 들어올려지는 동안, 지면과 맞물릴 수 있는 제2 세트의 전동 휠들을 더 포함하는, 자율 배송 차량.74. An autonomous delivery vehicle, comprising: a power base comprising at least two powered rear wheels, caster front wheels and an energy storage, wherein the power base is configured to move at a commanded speed; a cargo platform comprising a plurality of short-range sensors, the cargo platform being mechanically attached to a power base; a cargo container having a volume for receiving one or more objects to be shipped, the cargo container mounted on top of a cargo platform; a long-range sensor suite comprising a LIDAR and one or more cameras, the long-range sensor suit mounted on top of a cargo container; and a controller that receives data from the long-range sensor suite and the plurality of short-range sensors. 75. The autonomous delivery vehicle of clause 74, wherein the plurality of short-range sensors detect at least one characteristic of the drivable surface. 76. The autonomous delivery vehicle of clause 74, wherein the plurality of short-range sensors are stereo cameras. 77. The autonomous delivery vehicle of clause 74, wherein the plurality of short-range sensors comprises an IR projector, two image sensors and an RGB sensor. 78. The autonomous delivery vehicle of clause 74, wherein the plurality of short-range sensors are radar sensors. 79. The autonomous delivery vehicle of clause 74, wherein the short-range sensors supply RGB-D data to the controller. 80. The autonomous delivery vehicle of clause 74, wherein the controller determines the geometry of the road surface based on RGB-D data received from the plurality of short-range sensors. 81. The autonomous delivery vehicle of clause 74, wherein the plurality of short-range sensors detect objects within 4 meters of the autonomous delivery vehicle, and the long-range sensor suite detects objects that are more than 4 meters away from the autonomous delivery vehicle. . 82. The autonomous delivery vehicle of clause 74, further comprising a second set of powered wheels capable of engaging the ground while the caster wheels are lifted from the ground.
83. 자율 배송 차량으로서, 적어도 2개의 전동 후방 휠들, 캐스터 전방 휠들 및 에너지 저장소를 포함하는 파워 베이스―파워 베이스는 명령된 속도로 이동하도록 구성됨―; 파워 베이스에 기계적으로 부착된 화물 플랫폼; 및 화물 플랫폼에 장착되어 드라이빙가능 표면의 적어도 하나의 특성을 검출하는 단거리 카메라 조립체를 포함하고, 단거리 카메라 조립체는, 카메라; 제1 라이트; 및 제1 액체 냉각 히트 싱크를 포함하고, 제1 액체 냉각 히트 싱크는 제1 라이트 및 카메라를 냉각시키는, 자율 배송 차량. 84. 제83항에 따른 자율 배송 차량으로서, 단거리 카메라 조립체는 카메라와 액체 냉각 히트 싱크 사이에 열 전기 냉각기를 더 포함하는, 자율 배송 차량. 85. 제83항에 따른 자율 배송 차량으로서, 제1 라이트 및 카메라는 제1 라이트로부터의 조명을 카메라로부터 멀리 편향시키는 개구들을 갖는 커버에 리세스되는, 자율 배송 차량. 86. 제83항에 따른 자율 배송 차량으로서, 라이트들은 적어도 15°만큼 하방으로 각을 이루고, 보행자를 산만하게 하는 조명을 최소화하기 위해 커버에서 적어도 4mm 리세스되는, 자율 배송 차량. 87. 제83항에 따른 자율 배송 차량으로서, 카메라는 시야를 갖고, 제1 라이트는 카메라의 시야를 조명하도록 확산되는 2개의 광 빔들을 생성하기 위한 렌즈들을 갖는 2개의 LED들을 포함하는, 자율 배송 차량. 88. 제87항에 따른 자율 배송 차량으로서, 라이트들은 대략 50° 이격하여 각을 이루고, 렌즈들은 60° 빔을 생성하는, 자율 배송 차량. 89. 제83항에 따른 자율 배송 차량으로서, 단거리 카메라 조립체는 카메라 위에 장착된 초음파 센서를 포함하는, 자율 배송 차량. 90. 제83항에 따른 자율 배송 차량으로서, 단거리 카메라 조립체는 화물 플랫폼의 전면 상의 중심 위치에 장착되는, 자율 배송 차량. 91. 제83항에 따른 자율 배송 차량으로서, 화물 플랫폼의 전면의 적어도 하나의 코너 상에 장착된 적어도 하나의 코너 카메라 조립체를 더 포함하고, 적어도 하나의 코너 카메라 조립체는, 초음파 센서; 코너 카메라; 제2 라이트; 및 제2 액체 냉각 히트 싱크를 포함하고, 제2 액체 냉각 히트 싱크는 제2 라이트 및 코너 카메라를 냉각시키는, 자율 배송 차량. 92. 제22항에서와 같은 방법으로서, 이력 데이터는 표면 데이터를 포함하는, 방법. 93. 제22항에서와 같은 방법으로서, 이력 데이터는 불연속성 데이터를 포함하는, 방법.83. An autonomous delivery vehicle, comprising: a power base comprising at least two powered rear wheels, caster front wheels and an energy storage, wherein the power base is configured to move at a commanded speed; a cargo platform mechanically attached to the power base; and a short-range camera assembly mounted to the cargo platform to detect at least one characteristic of the drivable surface, the short-range camera assembly comprising: a camera; first light; and a first liquid cooling heat sink, wherein the first liquid cooling heat sink cools the first light and camera. 84. The autonomous delivery vehicle according to clause 83, wherein the short-range camera assembly further comprises a thermoelectric cooler between the camera and the liquid cooling heat sink. 85. The autonomous delivery vehicle according to clause 83, wherein the first light and camera are recessed in a cover having openings that deflect illumination from the first light away from the camera. 86. The autonomous delivery vehicle according to clause 83, wherein the lights are angled downwards by at least 15° and are recessed at least 4 mm in the cover to minimize lighting that distracts pedestrians. 87. The autonomous delivery vehicle according to clause 83, wherein the camera has a field of view and the first light comprises two LEDs with lenses for generating two beams of light that are diffused to illuminate the field of view of the camera. vehicle. 88. The autonomous delivery vehicle according to clause 87, wherein the lights are angled approximately 50° apart and the lenses produce a 60° beam. 89. The autonomous delivery vehicle according to clause 83, wherein the short-range camera assembly comprises an ultrasonic sensor mounted above the camera. 90. The autonomous delivery vehicle according to clause 83, wherein the short-range camera assembly is mounted in a central location on the front of the cargo platform. 91. The autonomous delivery vehicle according to clause 83, further comprising at least one corner camera assembly mounted on at least one corner of the front of the cargo platform, the at least one corner camera assembly comprising: an ultrasonic sensor; corner camera; a second light; and a second liquid cooled heat sink, wherein the second liquid cooled heat sink cools the second light and corner camera. 92. A method as in clause 22, wherein the historical data comprises surface data. 93. A method as in clause 22, wherein the historical data comprises discontinuous data.
본 교시는 첨부 도면들과 함께 취해지는 다음의 설명을 참조하여 더 쉽게 이해될 것이다.
도 1ia는 본 교시의 시스템의 주요 컴포넌트들의 개략적인 블록도이다.
도 1ib는 본 교시의 맵 프로세서의 주요 컴포넌트들의 개략적인 블록도이다.
도 1ic는 본 교시의 지각 프로세서의 주요 컴포넌트들의 개략적인 블록도이다.
도 1id는 본 교시의 자율 프로세서의 주요 컴포넌트들의 개략적인 블록도이다.
도 1a는 AV를 위한 이동 경로를 준비하기 위한 본 교시의 시스템의 개략적인 블록도이다.
도 1b는 본 교시의 시스템을 통합하는 디바이스의 예시적인 구성의 그림 도면이다.
도 1c는 몇몇 장거리 및 단거리 센서들의 시야들을 도시하는 자동 배송 차량의 측면도이다.
도 1d는 본 교시의 맵 프로세서의 개략적인 블록도이다.
도 1e는 본 교시의 맵 프로세서의 흐름의 제1 부분의 그림 도면이다.
도 1f는 본 교시의 세그먼트화된 포인트 클라우드의 이미지이다.
도 1g는 본 교시의 맵 프로세서의 제2 부분의 그림 도면이다.
도 1h는 본 교시의 드라이빙가능 표면 검출 결과의 이미지이다.
도 1i는 본 교시의 SDSF 파인더의 흐름의 그림 도면이다.
도 1j는 본 교시의 SDSF 카테고리들의 그림 도면이다.
도 1k는 본 교시의 시스템에 의해 식별된 SDSF들의 이미지이다.
도 1l 및 도 1m은 본 교시의 다각형 처리의 그림 도면들이다.
도 1n은 본 교시의 시스템에 의해 식별된 다각형들 및 SDSF들의 이미지이다.
도 2a는 본 교시의 자율 차량의 등각도이다.
도 2b는 장거리 센서들 중 선택된 것의 시야들을 도시하는 화물 컨테이너의 평면도이다.
도 2c 내지 도 2f는 장거리 센서 조립체의 도면들이다.
도 2g는 단거리 센서들 중 선택된 것의 시야들을 도시하는 화물 컨테이너의 평면도이다.
도 2h는 본 교시의 화물 플랫폼의 등각도이다.
도 2i 내지 도 2l은 단거리 센서의 등각도들이다.
도 2m 내지 도 2n은 본 교시의 자율 차량의 등각도들이다.
도 2o 내지 도 2p는 스킨 패널들이 제거된 본 교시의 자율 차량의 등각도들이다.
도 2q는 최상부 패널의 일부가 제거된 본 교시의 자율 차량의 등각도이다.
도 2r 내지 도 2v는 본 교시의 자율 차량 상의 장거리 센서들의 도면들이다.
도 2w 내지 도 2z는 초음파 센서의 도면들이다.
도 2aa 내지 도 2bb는 중앙 단거리 카메라 조립체의 도면들이다.
도 2cc 내지 도 2dd는 코너 단거리 카메라 조립체의 도면들이다.
도 2ee 내지 도 2hh는 중앙 단거리 카메라 조립체의 다양한 도면들이다.
도 3a는 본 교시의 하나의 구성의 시스템의 개략적인 블록도이다.
도 3b는 본 교시의 다른 구성의 시스템의 개략적인 블록도이다.
도 3c는 초기에 전역 점유 그리드를 생성할 수 있는 본 교시의 시스템의 개략적 블록도이다.
도 3d는 본 교시의 정적 그리드의 그림 표현이다.
도 3e 및 도 3f는 본 교시의 점유 그리드의 생성의 그림 표현이다.
도 3g는 본 교시의 이전 점유 그리드의 그림 표현이다.
도 3h는 본 교시의 전역 점유 그리드의 업데이트의 그림 표현이다.
도 3i는 전역 점유 그리드를 게시하기 위한 본 교시의 방법의 흐름도이다.
도 3j는 전역 점유 그리드를 업데이트하기 위한 본 교시의 방법의 흐름도이다.
도 3k 내지 도 3m은 전역 점유 그리드를 업데이트하기 위한 본 교시의 다른 방법의 흐름도들이다.
도 4a는 다양한 모드들에 있는 본 교시의 디바이스의 사시도이다.
도 4b는 본 교시의 시스템의 개략적인 블록도이다.
도 4c는 본 교시의 드라이빙 표면 프로세서 컴포넌트들의 개략적인 블록도이다.
도 4d는 본 교시의 프로세스의 개략적인 블록/그림 흐름도이다.
도 4e 및 도 4f는 각각, 표준 모드에서의 본 교시의 디바이스의 구성의 사시도 및 측면도이다.
도 4g 및 도 4h는 각각, 4-휠 모드에서의 본 교시의 디바이스의 구성의 사시도 및 측면도이다.
도 4i 및 도 4j는 각각, 상승된 4-휠 모드에서의 본 교시의 디바이스의 구성의 사시도 및 측면도이다.
도 4k는 본 교시의 방법의 흐름도이다.
도 5a는 본 교시의 디바이스 제어기의 개략적인 블록도이다.
도 5b는 본 교시의 SDSF 프로세서의 개략적인 블록도이다.
도 5c는 본 교시의 시스템에 의해 식별된 SDSF 접근들의 이미지이다.
도 5d는 본 교시의 시스템에 의해 생성된 루트 토폴로지의 이미지이다.
도 5e는 본 교시의 모드들의 개략적인 블록도이다.
도 5f 내지 5j는 SDSF들을 횡단하기 위한 본 교시의 방법의 흐름도들이다.
도 5k는 SDSF들을 횡단하기 위한 본 교시의 시스템의 개략적인 블록도이다.
도 5l 내지 도 5n은 도 5f 내지 도 5h의 방법의 그림 표현들이다.
도 5o는 이미지를 다각형으로 변환하는 그림 표현이다.The present teachings will be more readily understood with reference to the following description taken in conjunction with the accompanying drawings.
1IA is a schematic block diagram of the main components of the system of the present teachings.
1IB is a schematic block diagram of the major components of a map processor of the present teachings.
1IC is a schematic block diagram of the major components of a perceptual processor of the present teachings.
1ID is a schematic block diagram of the major components of an autonomous processor of the present teachings.
1A is a schematic block diagram of a system of the present teachings for preparing a travel path for AV.
1B is a pictorial diagram of an exemplary configuration of a device incorporating the system of the present teachings.
1C is a side view of an automated delivery vehicle showing the fields of view of some long-range and short-range sensors.
1D is a schematic block diagram of a map processor of the present teachings.
1E is a pictorial diagram of a first portion of the flow of a map processor of the present teachings.
1F is an image of a segmented point cloud of the present teachings.
1G is a pictorial diagram of a second portion of a map processor of the present teachings.
1H is an image of a drivable surface detection result of the present teachings.
1I is a pictorial diagram of the flow of the SDSF finder of the present teachings.
1J is a pictorial diagram of SDSF categories of the present teachings.
1K is an image of SDSFs identified by the system of the present teachings.
11 and 1M are pictorial diagrams of polygon processing in the present teachings.
1N is an image of polygons and SDSFs identified by the system of the present teachings.
2A is an isometric view of an autonomous vehicle of the present teachings.
2B is a plan view of a cargo container showing fields of view of a selected one of the long-range sensors;
2C-2F are views of a long range sensor assembly.
2G is a top view of a cargo container showing fields of view of a selected one of the short-range sensors.
2H is an isometric view of a cargo platform of the present teachings.
2I-2L are isometric views of a short-range sensor.
2M-2N are isometric views of an autonomous vehicle of the present teachings.
2O-2P are isometric views of an autonomous vehicle of the present teachings with skin panels removed.
2Q is an isometric view of the autonomous vehicle of the present teachings with a portion of the top panel removed.
2R-2V are diagrams of long-range sensors on an autonomous vehicle of the present teachings.
2W to 2Z are diagrams of an ultrasonic sensor.
2AA-2BB are views of a central short-range camera assembly.
2cc-2dd are views of a corner short range camera assembly.
2EE-2HH are various views of a central short-range camera assembly.
3A is a schematic block diagram of a system of one configuration of the present teachings.
3B is a schematic block diagram of a system of another configuration of the present teachings.
3C is a schematic block diagram of a system of the present teachings capable of initially creating a global occupancy grid.
3D is a pictorial representation of a static grid of the present teachings.
3E and 3F are pictorial representations of the creation of an occupancy grid of the present teachings.
3G is a pictorial representation of a previous occupancy grid of the present teachings.
3H is a pictorial representation of an update of the global occupancy grid of the present teachings.
3I is a flow diagram of a method of the present teachings for publishing a global occupancy grid.
3J is a flow diagram of a method of the present teachings for updating a global occupancy grid.
3K-3M are flow diagrams of another method of the present teachings for updating a global occupancy grid.
4A is a perspective view of a device of the present teachings in various modes.
4B is a schematic block diagram of a system of the present teachings.
4C is a schematic block diagram of driving surface processor components of the present teachings.
4D is a schematic block/figure flow diagram of the process of the present teachings.
4E and 4F are perspective and side views, respectively, of a configuration of a device of the present teachings in a standard mode.
4G and 4H are perspective and side views, respectively, of a configuration of a device of the present teachings in a four-wheel mode.
4I and 4J are perspective and side views, respectively, of a configuration of a device of the present teachings in an elevated four-wheel mode;
4K is a flow diagram of a method of the present teachings.
5A is a schematic block diagram of a device controller of the present teachings.
5B is a schematic block diagram of an SDSF processor of the present teachings.
5C is an image of SDSF accesses identified by the system of the present teachings.
5D is an image of a route topology generated by the system of the present teachings.
5E is a schematic block diagram of modes of the present teachings.
5F-5J are flow diagrams of a method of the present teachings for traversing SDSFs.
5K is a schematic block diagram of a system of the present teachings for traversing SDSFs.
Figures 5L-5N are pictorial representations of the method of Figures 5F-5H.
Fig. 5o is a pictorial representation of converting an image into a polygon.
본 교시의 시스템 및 방법은 점유 그리드를 개발하기 위해 온-보드 센서들 및 이전에 개발된 맵들을 이용할 수 있고, 표면 타입 및 이전에 기초하여 AV를 재구성하는 것을 포함하여, 표면 피처들을 가로질러 AV를 내비게이팅하기 위해 이들 보조물들을 이용할 수 있다.The system and method of the present teachings can use on-board sensors and previously developed maps to develop an occupancy grid, and include reconstructing the AV based on the surface type and the previous AV across surface features. You can use these aids to navigate to.
이제 도 1ia를 참조하면, AV 시스템(100)은 센서들(10701)이 장착될 수 있고, 그 안에서 디바이스 제어기(10111)가 실행할 수 있는 구조체를 포함할 수 있다. 구조체는 구조체의 일부인 휠들의 이동을 지시할 수 있고 AV의 이동을 가능하게 할 수 있는 파워 베이스(10112)를 포함할 수 있다. 디바이스 제어기(10111)는 AV 상에 위치된 적어도 하나의 프로세서 상에서 실행할 수 있고, AV 상에 위치될 수 있지만 이에 제한되지 않는 센서들(10701)로부터 데이터를 수신할 수 있다. 디바이스 제어기(10111)는 파워 베이스(10112)에 이동 명령들을 제공할 수 있는 베이스 제어기(10114)에 속도, 방향, 및 구성 정보를 제공할 수 있다. 디바이스 제어기(10111)는 AV를 둘러싸는 영역의 맵을 준비할 수 있는 맵 프로세서(10104)로부터 맵 정보를 수신할 수 있다. 디바이스 제어기(10111)는 온-AV 센서들을 포함하는 센서들(10701)로부터 입력을 수신하고 처리할 수 있는 센서 프로세서(10703)를 포함할 수 있지만 이에 제한되지 않는다. 일부 구성들에서, 디바이스 제어기(10111)는 지각 프로세서(2143), 자율 프로세서(2145), 및 드라이버 프로세서(2127)를 포함할 수 있다. 지각 프로세서(2143)는, 예를 들어, 제한적인 것은 아니지만, 정적 및 동적 장애물들을 위치결정하고, 교통 신호등 상태를 결정하고, 점유 그리드를 생성하고, 표면들을 분류할 수 있다. 자율 프로세서(2145)는, 예를 들어, 제한적인 것은 아니지만, AV의 최대 속도를 결정하고, AV가, 예를 들어, 도로 상에서, 인도 상에서, 교차로에서, 및/또는 원격 제어 하에서 내비게이팅하고 있는 상황의 타입을 결정할 수 있다. 드라이버 프로세서(2127)는, 예를 들어, 제한적인 것은 아니지만, 자율 프로세서(2145)의 방향에 따라 명령들을 생성하고, 이들을 베이스 제어기(10114)에 전송할 수 있다.Referring now to FIG. 1IA , the
이제 도 1ib를 참조하면, 맵 프로세서(10104)는 표면 피처들의 맵을 생성할 수 있고, 점유 그리드를 업데이트할 수 있는 지각 프로세서(2143)에 디바이스 제어기(10111)를 통해 맵을 제공할 수 있다. 맵 프로세서(10104)는, 많은 다른 양태들 중에서, 피처 추출기(10801), 포인트 클라우드 조직화기(point cloud organizer)(10803), 과도 프로세서(10805), 세그멘터(10807), 다각형 생성기(10809), SDSF 라인 생성기(10811), 및 결합기(10813)를 포함할 수 있다. 피처 추출기(10801)는 표면을 나타내는 포인트 클라우드 데이터에 액세스하는 제1 프로세서를 포함할 수 있다. 포인트 클라우드 조직화기(10803)는 필터링된 포인트 클라우드 데이터로부터 처리가능 부분들을 형성하는 제2 프로세서를 포함할 수 있다. 과도 프로세서(10805)는 포인트 클라우드 데이터를 필터링하는 제1 필터를 포함할 수 있다. 세그멘터(10807)는, 제한적인 것은 아니지만, 포인트 클라우드 데이터를 처리가능 부분들로 세그먼트화하는 것, 및 처리가능 부분들로부터 미리 선택된 높이의 포인트들을 제거하는 것을 포함할 수 있는 실행가능 코드를 포함할 수 있다. 제1 필터는, 제한적인 것은 아니지만, 포인트 클라우드 데이터로부터 과도 물체들을 나타내는 포인트들 및 이상치들을 나타내는 포인트들을 조건부로 제거하는 것, 및 미리 선택된 높이를 갖는 제거된 포인트들을 대체하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 다각형 생성기(10809)는 처리가능 부분들을 적어도 하나의 오목 다각형으로 병합하는 제3 프로세서를 포함할 수 있다. 제3 프로세서는, 제한적인 것은 아니지만, 이상치들, 복셀들, 및 법선을 분석함으로써 처리가능 부분들의 크기를 감소시키는 것, 감소된 크기의 처리가능 부분들로부터 영역들을 성장시키는 것, 성장된 영역들로부터 초기 드다이빙가능 표면들을 결정하는 것, 초기 드라이빙가능 표면들을 세그먼트화 및 메싱하는 것, 세그먼트화 및 메싱된 초기 드라이빙가능 표면들 내에 다각형들을 위치결정하는 것, 및 다각형들에 적어도 기초하여 드라이빙가능 표면들을 설정하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. SDSF 라인 생성기(10811)는 적어도 하나의 오목 다각형에서 적어도 하나의 SDSF를 위치결정 및 라벨링하는 제4 프로세서를 포함할 수 있고, 위치결정 및 라벨링은 라벨링된 포인트 클라우드 데이터를 형성한다. 제4 프로세서는, 제한적인 것은 아니지만, SDSF 필터에 따라 드라이빙가능 표면들의 포인트 클라우드 데이터를 정렬하는 것―SDSF 필터는 포인트들의 적어도 3개의 카테고리들을 포함함―, 및 포인트들의 카테고리들이, 조합하여, 적어도 하나의 제1 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 포인트를 위치결정하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 결합기(10813)는 그래핑 다각형들을 생성하는 제5 프로세서를 포함할 수 있다. 그래핑 다각형들을 생성하는 것은, 제한적인 것은 아니지만, 적어도 하나의 드라이빙가능 표면으로부터 적어도 하나의 다각형을 생성하는 것―적어도 하나의 다각형은 에지들을 포함함―, 에지들을 평활화하는 것, 평활화된 에지들에 기초하여 드라이빙 마진을 형성하는 것, 적어도 하나의 드라이빙가능 표면에 적어도 하나의 SDSF 궤적을 추가하는 것, 및 적어도 하나의 제3 미리 선택된 기준에 따라 적어도 하나의 드라이빙가능 표면으로부터 에지들을 제거하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 에지들을 평활화하는 것은, 제한적인 것은 아니지만, 에지들을 바깥쪽으로 트리밍하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다. 평활화된 에지들의 드라이빙 마진을 형성하는 것은, 제한적인 것은 아니지만, 바깥쪽 에지들을 안쪽으로 트리밍하는 것을 포함할 수 있는 실행가능 코드를 선택적으로 포함할 수 있다.Referring now to FIG. 1IB ,
이제 도 1ic를 참조하면, 다른 것들 중에서, AV가 상품을 배송할 때, 온-보드 센서들, 전동 휠들, 센서 및 맵 데이터를 수신하고 이들 데이터를 이용하여 다양한 종류의 표면들을 횡단하도록 AV를 전력 구성하기 위한 프로세서들을 포함할 수 있는 AV에 맵들이 제공될 수 있다. 온-보드 센서들은 점유 그리드를 채울 수 있고 동적 장애물들을 검출하는데 이용될 수 있는 데이터를 제공할 수 있다. 점유 그리드는 또한 맵에 의해 채워질 수 있다. 디바이스 제어기(10111)는 센서 데이터 및 맵 데이터를 수신 및 처리할 수 있고, 이들 데이터로 점유 그리드를 업데이트할 수 있는 지각 프로세서(2143)를 포함할 수 있다.Referring now to FIG. 1IC , among other things, when the AV delivers goods, it receives on-board sensors, powered wheels, sensor and map data and uses these data to power the AV to traverse various types of surfaces. Maps may be provided to the AV, which may include processors for configuring. On-board sensors can populate the occupancy grid and provide data that can be used to detect dynamic obstacles. Occupancy grids can also be populated by maps. The
이제 도 1id를 참조하면, 디바이스 제어기(10111)는 AV의 모드 및 직면한 표면 피처들에 적어도 기초하여 AV의 구성을 자동으로 결정할 수 있는 구성 프로세서(41023)를 포함할 수 있다. 자율 프로세서(2145)는, 맵(따르게 될 계획된 루트), 구성 프로세서(41023)로부터의 정보, 및 AV의 모드에 적어도 기초하여, 어떤 종류의 표면이 횡단될 필요가 있는지 및 어떤 구성을 AV가 표면을 횡단하기 위해 가정할 필요가 있는지를 결정할 수 있는 제어 프로세서(40325)를 포함할 수 있다. 자율 프로세서(2145)는 명령들을 구현하기 위해 모터 구동 프로세서(40326)에 명령들을 공급할 수 있다.Referring now to FIG. 1ID , the
이제 도 1a를 참조하면, 맵 프로세서(10104)는 디바이스, 예를 들어, 제한적인 것은 아니지만, AV 또는 반-자율(semi-autonomous) 디바이스가 SDSF들과 같은 피처들을 포함할 수 있는 환경들에서 내비게이팅하는 것을 가능하게 할 수 있다. 맵에서의 피처들은, 온-보드 센서들과 함께, AV가 다양한 표면들 상에서 이동하는 것을 가능하게 할 수 있다. 특히, SDSF들은 AV가 SDSF의 진입 및 진출 동안 AV의 성능을 자동으로 유지할 수 있도록 정확하게 식별 및 라벨링될 수 있고, AV 속도, 구성, 및 방향은 안전한 SDSF 횡단을 위해 제어될 수 있다.Referring now to FIG. 1A ,
도 1a를 계속 참조하면, 일부 구성들에서, SDSF들의 횡단을 관리하기 위한 시스템(100)은 AV(10101), 코어 클라우드 인프라스트럭처(10103), AV 서비스들(10105), 디바이스 제어기(10111), 센서(들)(10701), 및 파워 베이스(10112)를 포함할 수 있다. AV(10101)는, 예를 들어, 제한적인 것은 아니지만, 들어오는(incoming) 센서 정보에 의해 수정되는 바와 같이, 동적으로 결정된 경로를 따르는, 발신지로부터 목적지로의 수송 및 에스코트(escort) 서비스들을 제공할 수 있다. AV(10101)는, 제한적인 것은 아니지만, 자율 모드들을 갖는 디바이스들, 완전히 자율적으로 동작할 수 있는 디바이스들, 적어도 부분적으로 원격으로 동작될 수 있는 디바이스들, 및 이러한 특징들의 조합을 포함할 수 있는 디바이스들을 포함할 수 있다. 수송 디바이스 서비스들(10105)은 피처들을 포함하는 드라이빙가능 표면 정보를 디바이스 제어기(10111)에 제공할 수 있다. 디바이스 제어기(10111)는, 적어도, 이에 제한되는 것은 아니지만, 예를 들어, 들어오는 센서 정보 및 피처 횡단 요건들에 따라 드라이빙가능 표면 정보를 수정할 수 있고, 수정된 드라이빙가능 표면 정보에 기초하여 AV(10101)에 대한 경로를 선택할 수 있다. 디바이스 제어기(10111)는, 파워 베이스(10112)에게 휠 모터들 및 클러스터 모터들에 속도, 방향, 및 구성 명령들을 제공하도록 지시할 수 있는 명령들을 파워 베이스(10112)에 제시할 수 있고, 명령들은 AV(10101)로 하여금 선택된 경로를 따르게 하고, 이에 따라 그것의 화물을 상승 및 하강시키게 한다. 수송 디바이스 서비스들(10105)은, 이에 제한되는 것은 아니지만, 저장 및 콘텐츠 분배 설비들을 포함할 수 있는, 코어 클라우드 인프라스트럭처(10103)로부터의 루트 관련 정보에 액세스할 수 있다. 일부 구성들에서, 코어 클라우드 인프라스트럭처(10103)는, 예를 들어, 이에 제한되는 것은 아니지만, AMAZON WEB SERVICES®, GOOGLE CLOUDTM, 및 ORACLE CLOUD®와 같은 상업용 제품들을 포함할 수 있다.With continued reference to FIG. 1A , in some configurations,
이제 도 1b를 참조하면, 본 교시의 맵 프로세서(10104)(도 1a)로부터 정보를 수신할 수 있는 디바이스 제어기(10111)(도 1a)를 포함할 수 있는 예시적인 AV는, 예를 들어, 제한적인 것은 아니지만, 파워 베이스, 예를 들어, 제한적인 것은 아니지만, Mobility Device라는 명칭으로 2018년 7월 13일자로 출원된 미국 특허 출원 제16/035,205호, 또는 Control System and Method라는 명칭으로 2001년 8월 15일자로 출원된 미국 특허 제6,571,892호(이들 모두는 그 전체가 본 명세서에 참고로 포함됨)에 충분히 설명되어 있는 파워 베이스와 같은 파워 베이스 조립체를 포함할 수 있다. 예시적인 파워 베이스 조립체는 본 교시를 제한하지 않고, 대신에 본 교시의 기술을 구현하는데 유용할 수 있는 임의의 파워 베이스 조립체의 특징들을 명확히 하기 위해 본 명세서에 설명된다. 예시적인 파워 베이스 조립체는 선택적으로 파워 베이스(10112), 휠 클러스터 조립체(11100), 및 페이로드 캐리어 높이 조립체(10068)를 포함할 수 있다. 예시적인 파워 베이스 조립체는 휠들(11203) 및 휠들(11203)을 상승 및 하강시킬 수 있는 클러스터들(11100)을 구동하기 위해 전기적 및 기계적 전력을 선택적으로 제공할 수 있다. 파워 베이스(10112)는 본 교시의 실질적으로 불연속적인 표면 횡단을 지원하기 위해 클러스터 조립체(11100)의 회전 및 페이로드 캐리어 높이 조립체(10068)의 리프트를 제어할 수 있다. 다른 그러한 디바이스들은 본 교시의 SDSF 검출 및 횡단을 수용하기 위해 이용될 수 있다.Referring now to FIG. 1B , an exemplary AV that may include a device controller 10111 ( FIG. 1A ) capable of receiving information from a map processor 10104 ( FIG. 1A ) of the present teachings is, for example, limited to Power Base, including but not limited to, U.S. Patent Application Serial No. 16/035,205, filed July 13, 2018, for the name Mobility Device, or 8, 2001 for Control System and Method. It may include a power base assembly, such as the power base fully described in US Pat. No. 6,571,892, filed Jan. 15, all of which are incorporated herein by reference in their entirety. An exemplary power base assembly is not intended to limit the present teachings, but is instead described herein to clarify features of any power base assembly that may be useful in implementing the techniques of the present teachings. An exemplary power base assembly can optionally include a
다시 도 1a를 참조하면, 일부 구성들에서, 예시적인 파워 베이스 내부의 센서들은 AV(10101)의 배향 및 배향의 변화율을 검출할 수 있고, 모터들은 서보 동작을 가능하게 할 수 있고, 제어기들은 내부 센서들 및 모터들로부터의 정보를 동화(assimilate)시킬 수 있다. 적절한 모터 명령들은 수송기 성능을 달성하고 경로 추종 명령들을 구현하기 위해 계산될 수 있다. 좌측 및 우측 휠 모터들은 AV(10101)의 어느 한 측 상의 휠들을 구동할 수 있다. 일부 구성들에서, 전방 및 후방 휠들은 함께 구동하도록 결합될 수 있어서, 2개의 좌측 휠들은 함께 구동할 수 있고 2개의 우측 휠들은 함께 구동할 수 있다. 일부 구성들에서, 회전은 좌측 및 우측 모터들을 상이한 레이트들로 구동함으로써 달성될 수 있고, 클러스터 모터는 휠베이스를 전방/후방 방향으로 회전시킬 수 있다. 이것은 전방 휠들이 후방 휠들보다 더 높거나 더 낮아지는 동안 AV(10101)가 수평을 유지하는 것을 허용할 수 있다. 이 특징은, 예를 들어, 이에 제한되는 것은 아니지만, SDSF들을 클라이밍 업 및 다운할 때 유용할 수 있다. 페이로드 캐리어(10173)는 하부 지형에 적어도 기초하여 자동으로 상승 및 하강될 수 있다.Referring again to FIG. 1A , in some configurations, sensors within the exemplary power base may detect the orientation and rate of change of orientation of
도 1a를 계속 참조하면, 일부 구성들에서, 포인트 클라우드 데이터는 AV(10101)가 이동할 영역에 대한 루트 정보를 포함할 수 있다. 가능하게는 AV(10101)와 유사하거나 동일한 매핑 디바이스에 의해 수집되는 포인트 클라우드 데이터는 시간 태깅될 수 있다. 매핑 디바이스가 이동하는 경로는 매핑된 궤적이라고 지칭될 수 있다. 본 명세서에서 설명되는 포인트 클라우드 데이터 처리는 매핑 디바이스가 매핑된 궤적을 횡단할 때, 또는 포인트 클라우드 데이터 수집이 완료된 후에 발생할 수 있다. 포인트 클라우드 데이터가 수집된 후에, 이들은 본 명세서에서 설명되는 바와 같이 초기 필터링 및 포인트 감소, 포인트 클라우드 세그먼트화, 및 피처 검출을 포함할 수 있는 포인트 클라우드 데이터 처리를 겪을 수 있다. 일부 구성들에서, 코어 클라우드 인프라스트럭처(10103)는 수집된 포인트 클라우드 데이터에 대한 장기 또는 단기 저장을 제공할 수 있고, AV 서비스들(10105)에 데이터를 제공할 수 있다. AV 서비스들(10105)은 AV(10101)에 대한 원하는 시작 포인트 및 AV(10101)에 대한 원하는 목적지를 둘러싸는 지역을 커버하는 데이터세트를 찾기 위해 가능한 포인트 클라우드 데이터세트들 중에서 선택할 수 있다. AV 서비스들(10105)은 포인트 클라우드 데이터의 크기를 감소시키고 포인트 클라우드 데이터에 표현되는 피처들을 결정할 수 있는 맵 프로세서(10104)를 포함할 수 있지만, 이에 제한되는 것은 아니다. 일부 구성들에서, 맵 프로세서(10104)는 포인트 클라우드 데이터로부터 SDSF들의 위치를 결정할 수 있다. 일부 구성들에서, 포인트 클라우드 데이터를 세그먼트화하고 궁극적으로 드라이빙가능 표면을 설정하기 위한 기술로서 포인트 클라우드 데이터로부터 다각형들이 생성될 수 있다. 일부 구성들에서, SDSF 찾기 및 드라이빙가능 표면 결정은 병렬로 진행될 수 있다. 일부 구성들에서, SDSF 찾기 및 드라이빙가능 표면 결정은 순차적으로 진행될 수 있다.With continued reference to FIG. 1A , in some configurations, the point cloud data may include route information for an area to which the
이제 도 1c를 참조하면, 일부 구성들에서, AV는 화물을 배송하고/하거나 원하는 위치로 자율적으로 내비게이팅하는 것을 수반하는 다른 기능들을 수행하도록 구성될 수 있다. 일부 응용들에서, AV는 원격으로 안내될 수 있다. 일부 구성들에서, AV(20100)는 원격으로, 사용자 입력들에 응답하여, 자동으로 또는 수동으로 개방되어 사용자들이 패키지들 및 다른 물품들을 배치 또는 제거하는 것을 허용할 수 있는 화물 컨테이너를 포함한다. 화물 컨테이너(20110)는 화물 플랫폼(20160) 상에 장착되고, 이는 파워 베이스(20170)에 기계적으로 접속된다. 파워 베이스(20170)는 4개의 동력 휠들(20174) 및 2개의 캐스터 휠들(20176)을 포함한다. 파워 베이스는 지면을 따라 그리고 커브들 및 다른 불연속적인 표면 피처들을 포함하는 장애물들 위로 화물 컨테이너(20110)를 이동시키기 위한 속도 및 방향 제어를 제공한다.Referring now to FIG. 1C , in some configurations, the AV may be configured to deliver cargo and/or perform other functions involving autonomously navigating to a desired location. In some applications, the AV may be guided remotely. In some configurations, AV 201000 includes a cargo container that can be opened remotely, in response to user inputs, automatically or manually, to allow users to place or remove packages and other items. The
도 1c를 계속 참조하면, 화물 플랫폼(20160)은 2개의 U-프레임들(20162)을 통해 파워 베이스(20170)에 접속된다. 각각의 U-프레임(20162)은 화물 플랫폼(20160)의 구조체에 견고하게 부착되고, 회전가능 조인트(20164)가 파워 베이스(20170) 상의 각각의 암(arm)(20172)의 단부와 함께 형성되게 하는 2개의 구멍들을 포함한다. 파워 베이스는 암들의 회전 위치를 제어하고, 따라서 화물 컨테이너(20110)의 높이 및 자세를 제어한다.With continued reference to FIG. 1C , the
도 1c를 계속 참조하면, 일부 구성들에서, AV(20100)는 데이터를 수신하고, 경로를 내비게이팅하며, 파워 베이스(20170)의 방향 및 속도를 선택하는 하나 이상의 프로세서를 포함한다.With continued reference to FIG. 1C , in some configurations, AV 201000 includes one or more processors that receive data, navigate a route, and select a direction and speed of
이제 도 1d를 참조하면, 일부 구성들에서, 본 교시의 맵 프로세서(10104)는 맵 상에 SDSF들을 위치시킬 수 있다. 맵 프로세서(10104)는, 제한적인 것은 아니지만, 피처 추출기(10801), 포인트 클라우드 조직화기(10803), 과도 프로세서(10805), 세그멘터(10807), 다각형 생성기(10809), SDSF 라인 생성기(10811), 및 데이터 결합기(10813)를 포함할 수 있다.Referring now to FIG. 1D , in some configurations, a
도 1d를 계속 참조하면, 피처 추출기(10801)(도 1ib)는, 제한적인 것은 아니지만, 포인트 클라우드 데이터(10131)의 시선 필터링(10121) 및 매핑된 궤적(10133)을 포함할 수 있다. 시선 필터링은 센서들의 직접적인 시선으로부터 숨겨져 있는 포인트들을 제거하여 포인트 클라우드 데이터를 수집하고 매핑된 궤적을 형성할 수 있다. 포인트 클라우드 조직화기(10803)(도 1ib)는 특정의 피처와 어쩌면 연관되어 있는 미리 선택된 기준들에 따라 감소된 포인트 클라우드 데이터(10132)를 조직화(10151)할 수 있다. 일부 구성들에서, 과도 프로세서(10805)(도 1ib)는 본 명세서에 기술된 방법을 비롯한 임의의 수의 방법들에 의해 조직화된 포인트 클라우드 데이터 및 매핑된 궤적(10133)으로부터 과도 포인트들을 제거(10153)할 수 있다. 과도 포인트들은, 특히 특정의 피처가 정지되어 있는 경우, 처리를 복잡하게 할 수 있다. 세그먼트터(10807)(도 1ib)은 처리된 포인트 클라우드 데이터(10135)를 처리가능 청크들로 분할할 수 있다. 일부 구성들에서, 처리된 포인트 클라우드 데이터(10135)는 미리 선택된 최소 수의 포인트들, 예를 들어, 제한적인 것은 아니지만, 약 100,000개의 포인트들을 갖는 섹션들로 세그먼트화(10155)될 수 있다. 일부 구성들에서, 추가의 포인트 감소는 추출될 피처들에 관련될 수 있는 미리 선택된 기준들에 기초할 수 있다. 예를 들어, 특정 높이 위의 포인트들이 피처의 위치결정에 중요하지 않은 경우, 그 포인트들이 포인트 클라우드 데이터로부터 삭제될 수 있다. 일부 구성들에서, 포인트 클라우드 데이터를 수집하는 센서들 중 적어도 하나의 센서의 높이는 원점으로 간주될 수 있고, 원점 위의 포인트들은, 예를 들어, 관심 있는 포인트들만이 표면 피처들과 연관되어 있을 때 포인트 클라우드 데이터로부터 제거될 수 있다. 필터링된 포인트 클라우드 데이터(10135)가 세그먼트화되고, 세그먼트들(10137)을 형성한 후에, 나머지 포인트들은 드라이빙가능 표면 섹션들로 분할될 수 있고, 표면 피처들은 위치결정될 수 있다. 일부 구성들에서, 다각형 생성기(10809)(도 1ib)는, 예를 들어, 제한적인 것은 아니지만, 본 명세서에 기술된 바와 같이, 다각형들(10139)을 생성(10161)하는 것에 의해 드라이빙가능 표면들을 위치결정할 수 있다. 일부 구성들에서, SDSF 라인 생성기(10811)(도 1ib)는, 예를 들어, 제한적인 것은 아니지만, 본 명세서에 기술된 바와 같이, SDSF 라인들(10141)을 생성(10163)하는 것에 의해 표면 피처들을 위치결정할 수 있다. 일부 구성들에서, 결합기(10813)(도 1ib)는 AV(10101)(도 1a)가 다각형들(10139)과 SDSF들(10141)을 결합(10165)시키는 것에 의해 이동할 수 있는 실제 경로를 생성하기 위해 추가로 처리될 수 있는 데이터세트를 생성할 수 있다.With continued reference to FIG. 1D , feature extractor 10801 ( FIG. 1IB ) may include, but is not limited to, gaze filtering 10121 and mapped
이제 주로 도 1e를 참조하면, 포인트 클라우드 데이터(10131)(도 1d)로부터, 매핑된 궤적(10133)에 대해 과도적인 물체들, 예컨대, 예시적인 타임-스탬프된 포인트들(10751)을 제거하는 것(10153)(도 1d)은 매핑된 궤적(10133) 상의 타임-스탬프된 포인트들로부터 실질적으로 동일한 타임 스탬프를 갖는 포인트 클라우드 데이터(10131)(도 1d) 내의 각각의 타임-스탬프된 포인트로 광선(10753)을 캐스팅하는 것을 포함할 수 있다. 광선(10753)이 매핑된 궤적(10133) 상의 타임-스탬프된 포인트와 광선(10753)의 종료 포인트 사이의 포인트, 예를 들어, 포인트 D(10755)와 교차하는 경우, 교차 포인트 D(10755)는 카메라의 상이한 스위프 동안 포인트 클라우드 데이터에 들어간 것으로 가정될 수 있다. 교차 포인트, 예를 들어, 교차 포인트 D(10755)는 과도 물체의 일부인 것으로 가정될 수 있고, 감소된 포인트 클라우드 데이터(10132)(도 1d)로부터 SDSF와 같은 고정된 피처를 나타내지 않는 것으로 제거될 수 있다. 결과는, 예를 들어, 제한적인 것은 아니지만, 과도 물체들이 없는 처리된 포인트 클라우드 데이터(10135)(도 1d)이다. 과도 물체들의 부분들로서 제거되었지만, 또한 실질적으로 지면 레벨에 있는 포인트들은 처리된 포인트 클라우드 데이터(10135)(도 1d)로 반환될 수 있다(10754). 과도 물체들은, 예를 들어, 제한적인 것은 아니지만, SDSF들(10141)(도 1d)과 같은 특정 피처들을 포함할 수 없고, 따라서, SDSF들(10141)(도 1d)이 검출되는 피처들일 때 포인트 클라우드 데이터(10131)(도 1d)의 무결성을 방해하지 않고 제거될 수 있다.Referring now primarily to FIG. 1E , from the point cloud data 10131 ( FIG. 1D ), removing objects transient to the mapped
도 1e를 계속하여 참조하면, 세그먼트화(10155)(도 1d) 처리된 포인트 클라우드 데이터(10135)(도 1d)는 미리 선택된 크기 및 형상을 갖는 섹션들(10757), 예를 들어, 제한적인 것은 아니지만, 최소 미리 선택된 측면 길이를 가지며 약 100,000개의 포인트들을 포함하는 직사각형들(10154)(도 1f)을 생성할 수 있다. 각각의 섹션(10757)으로부터, 특정의 작업에 필요하지 않은 포인트들, 예를 들어, 제한적인 것은 아니지만, 미리 선택된 레벨 초과에 있는 포인트들이 데이터세트 크기를 감소시키기 위해 제거될 수 있다(10157)(도 1d). 일부 구성들에서, 미리 선택된 레벨은 AV(10101)의 높이일 수 있다(도 1a). 이 포인트들을 제거하는 것은 데이터세트의 보다 효율적인 처리를 가져올 수 있다.With continued reference to FIG. 1E , the segmentation 10155 ( FIG. 1D ) processed point cloud data 10135 ( FIG. 1D ) is divided into
다시 도 1d를 주로 참조하면, 맵 프로세서(10104)는 AV(10101)(도 1a)를 제어하기 위한 방향, 속도 및 구성 명령들을 생성하는데 이용될 수 있는 적어도 하나의 데이터세트를 디바이스 제어기(10111)에 공급할 수 있다. 적어도 하나의 데이터세트는 데이터세트 내의 다른 포인트들에 접속될 수 있는 포인트들을 포함할 수 있고, 여기서 데이터세트 내의 포인트들을 접속하는 라인들 각각은 드라이빙가능 표면을 횡단한다. 이러한 루트 포인트들을 결정하기 위해, 세그먼트화된 포인트 클라우드 데이터(10137)는 다각형들(10139)로 분할될 수 있고, 다각형들(10139)의 정점들은 가능하게는 루트 포인트들이 될 수 있다. 다각형들(10139)은, 예를 들어, SDSF(10141)와 같은 피처들을 포함할 수 있다.Referring back primarily to FIG. 1D , the
도 1d를 계속하여 참조하면, 일부 구성들에서, 처리된 포인트 클라우드 데이터(10135)를 생성하는 것은 복셀들을 필터링하는 것을 포함할 수 있다. 장래의 처리를 받을 포인트들의 수를 감소시키기 위해, 일부 구성들에서, 데이터세트 내의 각각의 복셀의 중심이 복셀 내의 포인트들을 근사화하는데 이용될 수 있고, 중심을 제외한 모든 포인트들이 포인트 클라우드 데이터로부터 제거될 수 있다. 일부 구성들에서, 복셀의 중심이 복셀 내의 포인트들을 근사화하는데 이용될 수 있다. 필터링된 세그먼트들(10251)(도 1g)의 크기를 감소시키는 다른 방법들, 예를 들어, 제한적인 것은 아니지만, 랜덤 포인트 서브샘플들을 취하는 것 등이 이용될 수 있고, 따라서 필터링된 세그먼트들(10251)(도 1g)로부터 랜덤으로 균일하게 선택된 고정된 수의 포인트들이 제거될 수 있다.With continued reference to FIG. 1D , in some configurations generating the processed point cloud data 10135 may include filtering the voxels. To reduce the number of points subject to future processing, in some configurations, the centroid of each voxel in the dataset may be used to approximate the points within the voxel, and all points except the centroid will be removed from the point cloud data. can In some configurations, the center of the voxel can be used to approximate points within the voxel. Other methods of reducing the size of the filtered segments 10251 ( FIG. 1G ) may be used, such as, but not limited to, taking random point subsamples, and thus the filtered segments 10251 ) (Fig. 1g) a fixed number of points randomly selected uniformly can be removed.
도 1d를 계속하여 추가로 참조하면, 일부 구성들에서, 처리된 포인트 클라우드 데이터(10135)를 생성하는 것은 이상치들이 제거되었고 복셀 필터링을 통해 다운사이징된 데이터세트로부터의 법선들을 계산하는 것을 포함할 수 있다. 필터링된 데이터세트 내의 각각의 포인트에 대한 법선들은 곡선 재구성 알고리즘들을 포함하는 다양한 처리가능성들을 위해 이용될 수 있다. 일부 구성들에서, 데이터세트 내의 법선들을 추정 및 필터링하는 것은 표면 메싱 기법들을 이용하여 데이터세트로부터 아래에 있는 표면을 획득하는 것, 및 표면 메시로부터 법선들을 계산하는 것을 포함할 수 있다. 일부 구성들에서, 법선들을 추정하는 것은, 예를 들어, 제한적인 것은 아니지만, 포인트에 가장 가까운 k개의 이웃들에 총 최소 제곱 방법을 적용함으로써 획득된 피팅 평면에 대한 법선을 결정하는 것과 같이, 데이터세트로부터 표면 법선들을 직접 추론하기 위해 근사치들을 이용하는 것을 포함할 수 있다. 일부 구성들에서, k의 값은 적어도 경험적 데이터에 기초하여 선택될 수 있다. 법선들을 필터링하는 것은 x-y 평면에 수직인 것으로부터 약 45° 초과인 임의의 법선들을 제거하는 것을 포함할 수 있다. 일부 구성들에서, 동일한 방향으로 법선들을 정렬시키기 위해 필터가 이용될 수 있다. 데이터세트의 일부가 평면 표면을 나타내는 경우, 인접한 법선들에 포함된 중복 정보가 랜덤 서브샘플링을 수행하는 것에 의해, 또는 포인트들의 관련 세트 중 하나의 포인트를 필터링하는 것에 의해 필터링 제거될 수 있다. 일부 구성들에서, 포인트를 선택하는 것은 각각의 박스가 최대 k개의 포인트들을 포함할 때까지 데이터세트를 박스들로 재귀적으로 분해하는 것을 포함할 수 있다. 각각의 박스 내의 k개의 포인트들로부터 단일 법선이 계산될 수 있다.With further reference to FIG. 1D , in some configurations generating the processed point cloud data 10135 may include calculating normals from a dataset in which outliers have been removed and downsized via voxel filtering. there is. The normals for each point in the filtered dataset can be used for a variety of processes, including curve reconstruction algorithms. In some configurations, estimating and filtering normals in a dataset may include obtaining an underlying surface from the dataset using surface meshing techniques, and calculating normals from the surface mesh. In some configurations, estimating normals may include, but is not limited to, determining a normal to a fitting plane obtained by applying a total least squares method to the k neighbors closest to a point, such as, but not limited to, a dataset may involve using approximations to directly infer surface normals from In some configurations, the value of k may be selected based at least on empirical data. Filtering the normals may include removing any normals that are greater than about 45° from normal to the x-y plane. In some configurations, a filter may be used to align normals in the same direction. If a portion of the dataset represents a planar surface, redundant information contained in adjacent normals may be filtered out by performing random subsampling, or by filtering a point in one of the related sets of points. In some configurations, selecting the point may include recursively decomposing the dataset into boxes until each box contains at most k points. A single normal can be computed from the k points in each box.
도 1d를 계속하여 참조하면, 일부 구성들에서, 처리된 포인트 클라우드 데이터(10135)를 생성하는 것은 데이터세트로 표현된 표면과 기하학적으로 호환되는 포인트들을 클러스터링하는 것에 의해 데이터세트 내에서 영역들을 성장시키는 것, 및 가장 많은 수의 포인트들의 최상의 근사치를 획득하기 위해 영역이 성장할 때 표면을 미세 조정하는 것을 포함할 수 있다. 영역 성장은 평활도 제약조건의 면에서 포인트들을 병합할 수 있다. 일부 구성들에서, 평활도 제약조건은, 예를 들어, 경험적으로 결정될 수 있거나, 원하는 표면 평활도에 기초할 수 있다. 일부 구성들에서, 평활도 제약조건은 약 10π/180 내지 약 20π/180의 범위를 포함할 수 있다. 영역 성장의 출력은 포인트 클러스터들의 세트이고, 각각의 포인트 클러스터는 포인트들의 세트이고, 포인트들 각각은 동일한 평활 표면의 일부인 것으로 간주된다. 일부 구성들에서, 영역 성장은 법선들 사이의 각도들의 비교에 기초할 수 있다. 영역 성장은, 예를 들어, 제한적인 것은 아니지만, 영역 성장 세그먼트화 및 과 같은 알고리즘들에 의해 달성될 수 있다.With continued reference to FIG. 1D , in some configurations, generating the processed point cloud data 10135 comprises growing regions within the dataset by clustering points that are geometrically compatible with the surface represented by the dataset. and fine-tuning the surface as the region grows to obtain the best approximation of the largest number of points. Region growth can merge points in terms of smoothness constraints. In some configurations, the smoothness constraint may be determined empirically, for example, or may be based on a desired surface smoothness. In some configurations, the smoothness constraint can include a range from about 10π/180 to about 20π/180. The output of region growth is a set of point clusters, each point cluster being a set of points, each of which is considered to be part of the same smooth surface. In some configurations, region growth can be based on comparison of angles between normals. Region growth may include, but is not limited to, region growth segmentation. and This can be achieved by algorithms such as
이제 도 1g를 참조하면, 세그먼트화된 포인트 클라우드 데이터(10137)(도 1d)는 다각형들(10759), 예를 들어, 5m x 5m 다각형들을 생성(10161)(도 1d)하는데 이용될 수 있다. 포인트 서브-클러스터들은, 예를 들어, 메싱을 이용하여 다각형들(10759)로 변환될 수 있다. 메싱은, 예를 들어, 제한적인 것은 아니지만, 마칭 큐브들(marching cubes), 마칭 사면체들(marching tetrahedrons), 표면 그물들(surface nets), 그리디 메싱(greedy meshing), 및 이중 윤곽(dual contouring)과 같은 표준 방법들에 의해 달성될 수 있다. 일부 구성들에서, 다각형들(10759)은 포인트의 로컬 이웃을 포인트의 법선을 따라 투영하고, 접속되지 않은 포인트들을 접속함으로써 생성될 수 있다. 결과적인 다각형들(10759)은, 이웃의 크기, 고려될 포인트에 대한 최대 수용가능한 거리, 다각형에 대한 최대 에지 길이, 다각형들의 최소 및 최대 각도들, 및 법선들이 서로 취할 수 있는 최대 편차에 적어도 기초할 수 있다. 일부 구성들에서, 다각형들(10759)은 다각형들(10759)이 AV(10101)(도 1a)가 통과하기에 너무 작은지의 여부에 따라 필터링될 수 있다. 일부 구성들에서, 원은 AV(10101)(도 1a)의 크기가 알려진 수단에 의해 다각형들(10759) 각각의 주위로 드래그될 수 있다. 원이 실질적으로 다각형(10759) 내에 있다면, 다각형(10759) 및 그에 따른 결과적인 드라이빙가능 표면은 AV(10101)(도 1a)를 수용할 수 있다. 일부 구성들에서, 다각형(10759)의 영역은 AV(10101)(도 1a)의 풋프린트와 비교될 수 있다. 다각형들은 불규칙적인 것으로 가정되어, 다각형들(10759)의 영역을 결정하기 위한 제1 단계가 알려진 방법들에 의해 다각형(10759)을 규칙적인 다각형들(10759A)로 분리할 수 있다. 각각의 규칙적인 다각형(10759A)에 대해, 표준 영역 방정식들이 그 크기를 결정하는데 이용될 수 있다. 각각의 규칙적인 다각형(10759A)의 영역들은 함께 추가되어 다각형(10759)의 영역을 찾을 수 있고, 그 영역은 AV(10101)(도 1a)의 풋프린트와 비교될 수 있다. 필터링된 다각형들은 크기 기준들을 만족하는 다각형들의 서브세트를 포함할 수 있다. 필터링된 다각형들은 최종 드라이빙가능 표면을 설정하는데 이용될 수 있다.Referring now to FIG. 1G , segmented point cloud data 10137 ( FIG. 1D ) may be used to create
도 1g를 계속 참조하면, 일부 구성들에서, 다각형(10759)은, 예를 들어, 제한적인 것은 아니지만, 포인트 클라우드 라이브러리(Point Cloud Library), 에서 이용가능한 것들과 같은 통계적 분석 기술들과 같은 종래의 수단에 의해 이상치를 제거함으로써 처리될 수 있다. 필터링은, 제한적인 것은 아니지만, 포인트 클라우드 라이브러리, 에서 이용가능한 것과 같은 복셀화된 그리드 접근법(voxelized grid approach)을 포함하는 종래의 수단에 의해 세그먼트들(10137)(도 1d)를 다운사이징하는 것을 포함할 수 있다. 오목 다각형들(10263)은, 예를 들어, 제한적인 것은 아니지만, A New Concave Hull Algorithm and Concaveness Measure for n-dimensional Datasets, Park et al., Journal of Information Science and Engineering 28, pp. 587-600, 2012에 제시된 프로세스에 의해 생성될 수 있다.With continued reference to FIG. 1G , in some configurations,
이제 주로 도 1h를 참조하면, 일부 구성들에서, 처리된 포인트 클라우드 데이터(10135)(도 1d)는 초기 드라이빙가능 표면(10265)을 결정하는데 이용될 수 있다. 영역 성장은 드라이빙가능 표면의 일부인 포인트들을 포함할 수 있는 포인트 클러스터들을 생성할 수 있다. 일부 구성들에서, 초기 드라이빙가능 표면을 결정하기 위해, 기준 평면이 포인트 클러스터들 각각에 피팅될 수 있다. 일부 구성들에서, 포인트 클러스터들은 포인트 클러스터들의 배향과 기준 평면 사이의 관계에 따라 필터링될 수 있다. 예를 들어, 포인트 클러스터 평면과 기준 평면 사이의 각도가, 예를 들어, 제한적인 것은 아니지만, 약 30°보다 작은 경우, 포인트 클러스터는, 예비적으로, 초기 드라이빙가능 표면의 일부인 것으로 간주될 수 있다. 일부 구성들에서, 포인트 클러스터들은, 예를 들어, 제한적인 것은 아니지만, 크기 제약에 기초하여 필터링될 수 있다. 일부 구성들에서, 포인트 클라우드 데이터(10131)(도 1d) 내의 전체 포인트들의 약 20%보다 포인트 크기가 더 큰 포인트 클러스터들은 너무 큰 것으로 간주될 수 있고, 포인트 클라우드 데이터(10131)(도 1d) 내의 전체 포인트들의 약 0.1%보다 크기가 더 작은 포인트 클러스터들은 너무 작은 것으로 간주될 수 있다. 초기 드라이빙가능 표면은 포인트 클러스터들의 필터링된 것을 포함할 수 있다. 일부 구성들에서, 포인트 클러스터들은 분할되어 몇몇 알려진 방법들 중 임의의 것에 의한 추가 처리를 계속할 수 있다. 일부 구성들에서, 노이즈를 갖는 애플리케이션들의 밀도 기반 공간 클러스터링(density based spatial clustering of applications with noise)(DBSCAN)이 포인트 클러스터들을 분할하는데 이용될 수 있는 반면, 일부 구성들에서는, k-평균 클러스터링이 포인트 클러스터들을 분할하는데 이용될 수 있다. DBSCAN은 함께 밀접하게 패킹되는 포인트들을 함께 그룹화하고, 실질적으로 격리되거나 저밀도 영역들에 있는 포인트들을 이상치들로서 마킹할 수 있다. 밀접하게 패킹되는 것으로 간주되기 위해, 포인트는 후보 포인트로부터 미리 선택된 거리 내에 있어야 한다. 일부 구성들에서, 미리 선택된 거리에 대한 스케일링 인자는 경험적으로 또는 동적으로 결정될 수 있다. 일부 구성들에서, 스케일링 인자는 약 0.1 내지 1.0의 범위에 있을 수 있다.Referring now primarily to FIG. 1H , in some configurations, processed point cloud data 10135 ( FIG. 1D ) may be used to determine an initial
주로 도 1i를 참조하면, SDSF 라인들을 생성하는 것(10163)(도 1d)은 드라이빙가능 표면(10265)(도 1h) 상의 오목 다각형들(10263)의 추가 필터링에 의해 SDSF들을 위치결정하는 것을 포함할 수 있다. 일부 구성들에서, 다각형들을 구성하는 포인트 클라우드 데이터로부터의 포인트들은 상부 도넛 포인트(10351)(도 1j), 하부 도넛 포인트(10353)(도 1j), 또는 원통형 포인트(10355)(도 1j)로서 카테고리화될 수 있다. 상부 도넛 포인트들(10351)(도 1j)은 지면으로부터 가장 먼 SDSF 모델(10352)의 형상 내에 속할 수 있다. 하부 도넛 포인트들(10353)(도 1j)은 지면에 가장 가까운 또는 지면 레벨에 있는 SDSF 모델(10352)의 형상 내에 속할 수 있다. 원통형 포인트들(10355)(도 1j)은 상부 도넛 포인트들(10351)(도 1j)과 하부 도넛 포인트들(10353)(도 1j) 사이의 형상 내에 속할 수 있다. 카테고리들의 조합은 도넛(10371)을 형성할 수 있다. 도넛들(10371)이 SDSF를 형성하는지를 결정하기 위해, 특정 기준들이 테스트된다. 예를 들어, 각각의 도넛(10371)에서, 상부 도넛 포인트들(10351)(도 1j)인 최소 수의 포인트들 및 하부 도넛 포인트들(10353)(도 1j)인 최소 수의 포인트들이 있어야 한다. 일부 구성들에서, 최소들은 경험적으로 선택될 수 있고, 약 5-20의 범위 내에 속할 수 있다. 각각의 도넛(10371)은 다수의 부분들, 예를 들어, 2개의 반구들로 분할될 수 있다. 도넛(10371) 내의 포인트들이 SDSF를 나타내는지를 결정하기 위한 다른 기준은 포인트들의 대부분이 도넛(10371)의 부분들의 대향하는 반구들 내에 있는지의 여부이다. 원통형 포인트들(10355)(도 1j)은 제1 원통형 영역(10357)(도 1j) 또는 제2 원통형 영역(10359)(도 1j)에서 발생할 수 있다. SDSF 선택을 위한 다른 기준은 원통형 영역들(10357/10359)(도 1j) 둘다에 최소 수의 포인트들이 있어야 한다는 것이다. 일부 구성들에서, 최소 수의 포인트들은 경험적으로 선택될 수 있고, 3-20의 범위 내에 속할 수 있다. SDSF 선택을 위한 다른 기준은 도넛(10371)이 포인트들의 3개의 카테고리들, 즉, 상부 도넛 포인트(10351)(도 1j), 하부 도넛 포인트(10353)(도 1j), 및 원통형 포인트(10355)(도 1j) 중 적어도 2개를 포함해야 한다는 것이다.Referring primarily to FIG. 1I , generating SDSF lines 10163 ( FIG. 1D ) includes locating the SDSFs by further filtering of
주로 도 1i를 계속 참조하면, 일부 구성들에서, 다각형들은 병렬로 처리될 수 있다. 각각의 카테고리 워커(category worker)(10362)는 SDSF 포인트들(10789)(도 1n)에 대해 그의 할당된 다각형을 검색할 수 있고, 카테고리들(10763)(도 1g)에 SDSF 포인트들(10789)(도 1n)을 할당할 수 있다. 다각형들이 처리될 때, 결과적인 포인트 카테고리들(10763)(도 1g)은 결합(10363)되어 결합된 카테고리들(10366)을 형성할 수 있고, 카테고리들은 단축(10365)되어 단축된 결합된 카테고리들(10368)을 형성할 수 있다. SDSF 포인트들(10789)(도 1n)을 단축하는 것은 지면으로부터의 그들의 거리들에 대해 SDSF 포인트들(10789)(도 1n)을 필터링하는 것을 포함할 수 있다. 단축된 결합된 카테고리들(10368)은 각각의 SDSF 포인트(10766)(도 1g) 주위의 영역을 검색하고, 평균 포인트들(10765)(도 1g)을 생성함으로써 평균될 수 있고, 가능하게는 평균 워커들(10373)에 의해 병렬로 처리될 수 있고, 카테고리의 포인트들은 평균화된 도넛들(10375)의 세트를 형성한다. 일부 구성들에서, 각각의 SDSF 포인트(10766)(도 1g) 주위의 반경은 경험적으로 결정될 수 있다. 일부 구성들에서, 각각의 SDSF 포인트(10766)(도 1g) 주위의 반경은 0.1m 내지 1.0m의 범위를 포함할 수 있다. 평균 포인트(10765)(도 1g)에서의 SDSF에 대해 SDSF 궤적(10377)(도 1g) 상의 하나의 포인트와 다른 것 사이의 높이 변화는 계산될 수 있다. 평균화된 도넛들(10375)을 함께 접속하는 것은 SDSF 궤적(10377)(도 1g 및 도 1k)을 생성할 수 있다. SDSF 궤적(10377)(도 1g 및 도 1k)을 생성 시에, 시작 포인트의 검색 반경 내에 2개의 다음 후보 포인트들이 존재하는 경우, 다음 포인트는 이전 라인 세그먼트들, 시작 포인트 및 후보 목적지 포인트 사이에 가능한 직선 라인을 형성하는 것에 적어도 기초하여 선택될 수 있고, 후보 다음 포인트는 이전 포인트들과 후보 다음 포인트 사이의 SDSF 높이의 최소 변화를 나타낸다. 일부 구성들에서, SDSF 높이는 상부 도넛(10351)(도 1j)과 하부 도넛(10353)(도 1j)의 높이 사이의 차이로서 정의될 수 있다.With continued reference primarily to FIG. 1I , in some configurations polygons may be processed in parallel. Each
이제 주로 도 1l을 참조하면, 오목 다각형들 및 SDSF 라인들을 결합하는 것(10165)(도 1d)은 다각형들(10139)(도 1d) 및 SDSF들(10141)(도 1d)을 포함하는 데이터세트를 생성할 수 있고, 데이터세트는 SDSF 데이터를 갖는 그래핑 다각형들을 생성하도록 조작될 수 있다. 오목 다각형들(10263)을 조작하는 것은, 제한적인 것은 아니지만, 오목 다각형들(10263)을 병합하여 병합된 다각형(10771)을 형성하는 것을 포함할 수 있다. 오목 다각형들(10263)을 병합하는 것은, 예를 들어, 제한적인 것은 아니지만, 에서 발견되는 것들과 같은 알려진 방법들을 이용하여 달성될 수 있다. 병합된 다각형(10771)은 에지들을 평활화하고 확장된 다각형(10772)을 형성하도록 확장될 수 있다. 확장된 다각형(10772)은 드라이빙 마진을 제공하도록 수축될 수 있어, SDSF 궤적들(10377)(도 1m)이 추가될 수 있는 수축된 다각형(10774)을 형성한다. 안쪽으로의 트리밍(수축)은 AV(10101)(도 1a)의 크기에 적어도 기초하여 미리 선택된 양만큼 드라이빙가능 표면의 크기를 감소시킴으로써 AV(10101)(도 1a)가 이동할 에지들 근처에 공간이 있는 것을 보장할 수 있다. 다각형 확장 및 수축은, 예를 들어, 제한적인 것은 아니지만, ARCGIS® 클립 명령 (http://desktop.arcgis.com/en/arcmap/10.3/manage-data/editing-existing-features/clipping-a-polygon-feature.htm)과 같은 상업적으로 이용가능한 기술에 의해 달성될 수 있다.Referring now primarily to FIG. 1L , combining concave polygons and SDSF lines 10165 ( FIG. 1D ) is a dataset comprising polygons 10139 ( FIG. 1D ) and SDSFs 10141 ( FIG. 1D ). , and the dataset can be manipulated to create graphing polygons with SDSF data. Manipulating the
이제 주로 도 1m을 참조하면, 수축된 다각형(10774)은 다각형들(10778)으로 분할될 수 있고, 이들 각각은 비-드라이빙가능 표면을 만나지 않고 횡단될 수 있다. 수축된 다각형(10774)은, 예를 들어, 제한적인 것은 아니지만, z차(z-order) 곡선 해싱에 의해 최적화되고, 구멍, 트위스트된 다각형들, 축퇴들, 및 자기-교차부들을 처리하도록 확장된 이어 슬라이싱(ear slicing)과 같은 종래의 수단들에 의해 분할될 수 있다. 상업적으로 이용가능한 이어 슬라이싱 구현들은, 제한적인 것은 아니지만, 에서 발견되는 것들을 포함할 수 있다. SDSF 궤적(10377)은 다각형 정점들(10781)에 접속될 수 있는 SDSF 포인트들(10789)(도 1n)를 포함할 수 있다. 정점들(10781)은 AV(10101)(도 1a)에 대한 가능한 이동 경로들을 형성하기 위해 서로 접속될 수 있는 가능한 경로 포인트들인 것으로 간주될 수 있다. 데이터세트에서, SDSF 포인트들(10789)(도 1n)은 그와 같이 라벨링될 수 있다. 분할이 진행됨에 따라, 예를 들어, 제한적인 것은 아니지만, 에지들(10777 및 10779)과 같은 중복 에지들이 도입되는 것이 가능하다. 에지들(10777 또는 10779) 중 하나를 제거하는 것은 추가 분석의 복잡성을 감소시킬 수 있고 다각형 메시를 유지할 수 있다. 일부 구성들에서, Hertel-Mehlhorn 다각형 분할 알고리즘은 에지를 제거하고, 피처들로서 라벨링된 에지들을 스킵하는데 이용될 수 있다. 라벨링된 피처들을 포함한 다각형들(10778)의 세트는 가능한 경로 포인트들의 수를 감소시키기 위해 추가의 단순화를 겪을 수 있고, 가능한 경로 포인트들은 점유 그리드를 채우는데 이용될 수 있는 주석달린 포인트 데이터(10379)(도 5b)의 형태로 디바이스 제어기(10111)(도 1a)에 제공될 수 있다.Referring now primarily to FIG. 1M , the
이제 도 2a 및 도 2b를 참조하면, AV에 의해 수집된 센서 데이터는 또한 점유 그리드를 채우는데 이용될 수 있다. AV에서의 프로세서들은 화물 컨테이너(20110)의 최상부 상에 장착된 장거리 센서 조립체(20400)에서의 센서들로부터 그리고 화물 플랫폼(20160)에 위치된 단거리 센서들(20510, 20520, 20530, 20540) 및 다른 센서들로부터 데이터를 수신할 수 있다. 또한, 프로세서들은 화물 컨테이너(20110)의 전방의 최상부 근처에 장착된 선택적 단거리 센서(20505)로부터 데이터를 수신할 수 있다. 프로세서들은 또한 셀룰러, WiFi 및/또는 GPS를 포함하는 하나 이상의 안테나(20122A, 20122B)(도 1c)로부터 데이터를 수신할 수 있다. 일 예에서, AV(20100)는 장거리 센서 조립체(20400)의 최상부 상에 위치된 GPS 안테나(20122A)(도 1c) 및/또는 화물 컨테이너(20110)의 최상부에 위치된 안테나(20122B)(도 1c)를 갖는다. 프로세서들은 AV(20100) 내의 어디에나 위치될 수 있다. 일부 예들에서, 하나 이상의 프로세서는 장거리 센서 조립체(20400)에 위치될 수 있다. 추가적인 프로세서들이 화물 플랫폼(20160)에 위치될 수 있다. 다른 예들에서, 프로세서들은 화물 컨테이너(20110)에 및/또는 파워 베이스(20170)의 일부로서 위치될 수 있다.Referring now to FIGS. 2A and 2B , the sensor data collected by the AV may also be used to populate the occupancy grid. The processors in the AV are from sensors in the long-
도 2a 및 도 2b를 계속 참조하면, 장거리 센서 조립체(20400)는 AV를 둘러싸는 환경의 개선된 뷰를 제공하기 위해 화물 컨테이너의 최상부 상에 장착된다. 일 예에서, 장거리 센서 조립체(20400)는 이동 표면 또는 지면 위로 1.2m 피트 초과이다. 화물 컨테이너가 더 높거나 파워 베이스 구성이 화물 플랫폼(20160)을 상승시키는 다른 예들에서, 장거리 센서 조립체(20400)는 AV가 위로 이동하고 있는 지면 위로 1.8m일 수 있다. 장거리 센서 조립체(20400)는 최소 거리로부터 최대 범위까지 AV 주위의 환경에 관한 정보를 제공한다. 최소 거리는 장거리 센서들(20400)과 화물 컨테이너(20110)의 상대 위치에 의해 정의될 수 있다. 최소 거리는 센서들의 시야(FOV)에 의해 추가로 정의될 수 있다. 최대 거리는 장거리 센서 조립체(20400) 내의 장거리 센서들의 범위에 의해 및/또는 프로세서들에 의해 정의될 수 있다. 일 예에서, 장거리 센서들의 범위는 20 미터로 제한된다. 일 예에서, 벨로다인 퍽(Velodyne Puck) LIDAR는 100m까지의 범위를 갖는다. 장거리 센서 조립체(20400)는 모든 방향들에서 물체들에 관한 데이터를 제공할 수 있다. 센서 조립체는 AV(20100) 주위에서 360° 각도에 걸쳐 구조들, 표면들, 및 장애물들에 관한 정보를 제공할 수 있다.With continued reference to FIGS. 2A and 2B , the long
도 2a를 계속 참조하면, 윈도우들(20434, 20436 및 20438)을 통해 관찰하는 3개의 장거리 카메라는 360° FOV를 함께 제공하는 수평 FOV들(20410, 20412, 20414)을 제공할 수 있다. 수평 FOV는 선택된 카메라 및 장거리 카메라 조립체(20400) 내의 카메라들의 위치에 의해 정의될 수 있다. 시야들을 설명함에 있어서, 제로 각도는 AV(20100)의 중심을 통하고 AV의 전방에 수직인 수직 평면에 위치된 광선이다. 제로 각도 광선은 AV의 전방을 통과한다. 윈도우(20434)를 통해 보는 전방 장거리 카메라는 311° 내지 47°의 96° FOV(20410)를 갖는다. 윈도우(20436)를 통해 보는 좌측 장거리 카메라는 47° 내지 180°의 FOV(20412)를 갖는다. 윈도우(20438)를 통해 보는 우측 장거리 카메라는 180° 내지 311°의 FOV(20414)를 갖는다. 장거리 센서 조립체(20400)는 장거리 카메라들보다 AV(20100)의 전방에 있는 물체들 및 표면들에 관한 더 상세한 정보를 제공하는 윈도우(20432)를 통해 관찰하도록 위치된 산업용 카메라를 포함할 수 있다. 윈도우(20432) 후방에 위치된 산업용 카메라는 선택된 카메라 및 장거리 카메라 조립체(20400) 내의 카메라들의 위치에 의해 정의된 FOV(20416)를 가질 수 있다. 일 예에서, 윈도우(20432) 후방의 산업용 카메라는 23° 내지 337°의 FOV를 갖는다.With continued reference to FIG. 2A , three long range cameras viewing through
이제 도 2b를 참조하면, LIDAR(20420)는 AV(20100) 주위에 360° 수평 FOV를 제공한다. 수직 FOV는 LIDAR 기기에 의해 제한될 수 있다. 일 예에서, 지면 위의 1.2m 내지 1.8m에 장착된 40°의 수직 FOV(20418)는 AV(20100)로부터 3.3m 내지 5m에 센서의 최소 거리를 설정한다.Referring now to FIG. 2B ,
이제 도 2c 및 도 2d를 참조하면, 장거리 센서 조립체(20400)는 커버(20430)와 함께 도시되어 있다. 커버(20430)는 윈도우들(20434, 20432, 20436)을 포함하고, 이를 통해 장거리 카메라들 및 산업용 카메라가 AV(20100) 주변의 환경을 관찰한다. 장거리 센서 조립체(20400)를 위한 커버(20430)는 커버(20430)와 화물 컨테이너(20110)의 최상부 사이의 O-링(ring)에 의해 날씨로부터 밀봉된다.Referring now to FIGS. 2C and 2D , a long
이제 도 2e 및 도 2f를 참조하면, 카메라들 및 프로세서들의 예들을 보여주기 위해 커버(20430)가 제거되었다. LIDAR 센서(20420)는 AV 주위의 표면들까지의 거리 또는 범위에 관한 데이터를 제공한다. 이들 데이터는 장거리 센서 조립체(20400)에 위치된 프로세서(20470)에 제공될 수 있다. LIDAR는 장거리 카메라들(20440A 내지 20440C) 및 커버(20430) 위의 구조체(20405) 상에 장착된다. LIDAR 센서(20420)는 반사된 레이저 펄스 광에 기초한 레인징(ranging) 센서의 일 예이다. 반사된 라디오 파들을 이용하는 레이더와 같은 다른 레인징 센서들이 또한 이용될 수 있다. 일 예에서, LIDAR 센서(20420)는 캘리포니아주 산호세의 VELODYNE LIDAR®에 의한 퍽(Puck) 센서이다. 3개의 장거리 카메라(20440A, 20440B, 20440C)는 AV(20100) 주위의 물체들, 표면들 및 구조들의 디지털 이미지들을 제공한다. 3개의 장거리 카메라들(20440A, 20440B, 20440C)은 AV 주위의 전체 360°를 커버하는 3개의 수평 FOV를 제공하기 위해 커버(20430)에 대해 구조체(20405) 주위에 배열된다. 장거리 카메라들(20440A, 20440B, 20440C)은 화물 컨테이너(20110)에 장착되는 상승된 링 구조체(20405) 상에 있다. 장거리 카메라들(20440A, 20440B, 20440C)은 커버(20430)에 장착되는 윈도우들(20434, 20436, 20438)을 통해 이미지들을 수신한다. 장거리 카메라들은 인쇄 회로 보드(PCB) 상의 카메라 및 렌즈를 포함할 수 있다.Referring now to FIGS. 2E and 2F ,
이제 도 2f를 참조하면, 장거리 카메라(20440A)의 일 예는 디지털 카메라(20444)의 전방에 장착된 어안(fisheye) 렌즈(20442)를 갖는 디지털 카메라(20444)를 포함할 수 있다. 어안 렌즈(20442)는 카메라의 FOV를 훨씬 더 넓은 각도로 확장할 수 있다. 일 예에서, 어안 렌즈는 시야를 180°로 확장한다. 일 예에서, 디지털 카메라(20444)는 캘리포니아주 산호세의 E-con Systems에 의한 e-cam52A_56540_MOD와 유사하다. 일 예에서, 어안 렌즈(20442)는 캘리포니아주 칼스배드의 Sunex에 의한 모델 DSL227과 유사하다.Referring now to FIG. 2F , one example of a
도 2f를 계속 참조하면, 장거리 센서 조립체(20400)는 또한, 커버(20430)에서의 윈도우(20432)를 통해 시각적 데이터를 수신하는 산업용 카메라(20450)를 포함할 수 있다. 산업용 카메라(20450)는 AV 전방의 물체들, 표면들 및 구조들에 관한 추가 데이터를 프로세서(20470)에 제공한다. 카메라는 Kowa 산업용 카메라 부품 번호 LM6HC와 유사할 수 있다. 산업용 카메라(20450) 및 장거리 카메라들(20440A 내지 20440C)은 AV(20100)가 이동하고 있는 표면 위 1.2m 내지 1.8m에 위치한다.With continued reference to FIG. 2F , the long
도 2f를 계속 참조하면, 화물 컨테이너의 최상부 상에 장거리 센서 조립체(20400)를 장착하는 것은 적어도 2개의 이점을 제공한다. 장거리 카메라들(20440A 내지 20440C), 산업용 카메라(20450) 및 LIDAR(20420)를 포함하는 장거리 센서들에 대한 시야들은, 센서가 지면 위에 더 장착될 때, 사람, 자동차들, 낮은 벽들 등과 같은 인근 물체들에 의해 덜 자주 차단된다. 추가적으로, 보행자 길들은 사람이 지각하기 위한 신호(signage), 펜스 높이 등을 포함하는 시각적 큐들(visual cues)을 제공하도록 구성되고, 전형적인 눈 레벨은 1.2m 내지 1.8m의 범위에 있다. 화물 컨테이너의 최상부에 장거리 센서 조립체(20400)를 장착하는 것은 장거리 카메라(20440A 내지 20440C, 20450)를 신호와 동일한 레벨에 그리고 보행자에 지향된 시각적 큐들 위에 둔다. 장거리 센서들은 AV(20100)의 이동에 의해 야기된 편향들에 저항하는 실질적이고 강성인 장착부(mount)를 제공하는 구조체(20405) 상에 장착된다.With continued reference to FIG. 2F , mounting the long
도 2e 및 도 2f를 다시 참조하면, 장거리 센서 조립체는 관성 측정 유닛(IMU) 및 장거리 센서들로부터 데이터를 수신하고 처리된 데이터를 내비게이션을 위해 다른 프로세서들로 출력하는 하나 이상의 프로세서들을 포함할 수 있다. 수직 기준(VRU)을 갖는 IMU(20460)는 구조체(20405)에 장착된다. IMU/VRU(20460)는 LIDAR(20420) 상에 위치 데이터를 제공하기 위해 LIDAR(20420) 바로 아래에 위치될 수 있다. IMU/VRU(20460)로부터의 위치 및 배향은 다른 장거리 센서들로부터의 데이터와 결합될 수 있다. 일 예에서, IMU/VRU(20460)는 네덜란드의 Xsens Technologies에 의해 공급되는 모델 MTi 20이다. 하나 이상의 프로세서는 적어도 산업용 카메라(20450)로부터 데이터를 수신하는 프로세서(20465)를 포함할 수 있다. 또한, 프로세서(20470)는 다음의 것, 즉, LIDAR(20420), 장거리 카메라들(20440A 내지 20440C), 산업용 카메라(20450), 및 IMU/VRU(20460) 중 적어도 하나로부터 데이터를 수신할 수 있다. 프로세서(20470)는 순환 냉각제 시스템에 접속되는 액체 냉각 열 교환기(20475)에 의해 냉각될 수 있다.Referring back to FIGS. 2E and 2F , the long range sensor assembly may include an inertial measurement unit (IMU) and one or more processors that receive data from the long range sensors and output the processed data to other processors for navigation. . An
이제 도 2g를 참조하면, AV(20100)는 AV로부터 미리 결정된 거리 내에 드라이빙가능 표면들 및 장애물들을 검출하는 다수의 단거리 센서들을 포함할 수 있다. 단거리 센서들(20510, 20520, 20530, 20540, 20550, 및 20560)은 컨테이너 플랫폼(20160)의 주변부 상에 위치된다. 이들 센서들은 화물 컨테이너(20110)(도 2b) 아래에 위치되고 장거리 센서 조립체(20400)(도 2c)보다 지면에 더 가깝다. 단거리 센서들(20510, 20520, 20530, 20540, 20550, 및 20560)은 장거리 센서 조립체(20400)(도 2c)에서의 센서들에 의해 보여질 수 없는 표면들 및 물체들을 캡처하는 FOV들을 제공하기 위해 하향으로 각을 이룬다. 지면에 더 가깝게 위치되고 하향으로 각을 이루는 센서의 시야는 지면으로부터 더 멀리 장착된 센서들보다 인근 물체들 및 보행자들에 의해 방해될 가능성이 더 적다. 일 예에서, 단거리 센서들은 AV(20100)로부터 4m까지 지면 표면들 및 물체들에 관한 정보를 제공한다.Referring now to FIG. 2G , AV 201000 may include multiple short-range sensors that detect drivable surfaces and obstacles within a predetermined distance from the AV. Short-
도 2b를 다시 참조하면, 단거리 센서들 중 2개에 대한 수직 FOV들은 AV(20100)의 측면도에 도시되어 있다. 후미 대향 센서(20540)의 수직 FOV(20542)는 중심 라인(20544)을 중심으로 센터링되어 있다. 중심 라인(20544)은 화물 플랫폼(20160)의 최상부 표면 아래로 각을 이루고 있다. 일 예에서, 센서(20540)는 수직 FOV 42° 및 화물 플랫폼(20160)의 상부 플레이트에 의해 정의된 평면(20547) 아래로 22° 내지 28°(20546) 각을 이루는 중심 라인을 갖는다. 일 예에서, 단거리 센서들(20510 및 20540)은 지면으로부터 대략 0.55m 내지 0.71m 위에 있다. 결과적인 수직 FOV들(20512, 20542)은 AV로부터 0.4m 내지 4.2m에서 지면을 커버한다. 화물 베이스(20160) 상에 장착된 단거리 센서들(20510, 20520, 20530, 20550)(도 2g), 20560(도 2g))은 화물 플랫폼의 최상부에 대해 유사한 수직 시야들 및 중심 라인 각도를 갖는다. 화물 플랫폼(20160) 상에 장착된 단거리 센서들은 AV(20100)의 외부 에지로부터 0.4 내지 4.7 미터에서 지면을 볼 수 있다.Referring again to FIG. 2B , vertical FOVs for two of the short range sensors are shown in a side view of AV 201000 . The
도 2b를 계속 참조하면, 단거리 센서(20505)는 화물 컨테이너(20110)의 최상부 근처의 전방 표면 상에 장착될 수 있다. 일 예에서, 센서(20505)는 단거리 센서(20510)에 의해 제공된 뷰에 AV의 전방에 있는 지면의 추가 뷰들을 제공할 수 있다. 다른 예에서, 센서(20505)는 단거리 센서(20510)에 의해 제공된 뷰 대신에 AV의 전방에 있는 지면의 뷰를 제공할 수 있다. 일 예에서, 단거리 센서(20505)는 42°의 수직 FOV(20507)를 가질 수 있고 화물 플랫폼(20160)의 최상부에 대한 중심 라인의 각도는 39°이다. 지면의 결과적인 뷰는 AV로부터 0.7m로부터 3.75m까지 확장된다.With continued reference to FIG. 2B , the
도 2g를 다시 참조하면, 단거리 센서(20510, 20520, 20530, 20540, 20550, 20560)의 수평 FOV들은 AV(20100) 주위의 모든 방향들을 커버한다. 20520 및 20530과 같은 인접 센서들의 수평 FOV들(20522 및 20532)은 AV(20100)로부터 떨어진 거리에서 중첩한다. 일 예에서, 인접 센서들(20520, 20530 및 20560, 20550)의 수평 FOV들(20522, 20532 및 20562, 20552)은 AV로부터 0.5 내지 2 미터에서 중첩한다. 단거리 센서들은 화물 베이스(20160)의 주변부 주위에 분포되고, 수평 시야들을 갖고, AV를 둘러싸는 지면의 거의 완전한 시각적 커버리지를 제공하기 위해 특정 각도들로 배치된다. 일 예에서, 단거리 센서들은 69°의 수평 FOV를 갖는다. 전방 센서(20510)는 AV에 대해 제로 각도로 전방을 향하고 FOV(20512)를 갖는다. 일 예에서, 2개의 전방 코너 센서들(20520, 20560)은 중심 라인들이 65°의 각도(20564)로 있도록 각을 이룬다. 일 예에서, 후방 측면 센서들(20530, 20550)은 20530 및 20560의 중심 라인들이 110°의 각도(20534)로 있도록 각을 이룬다. 일부 구성들에서, AV(20100) 주위의 지면의 거의 완전한 뷰를 제공하기 위해 화물 베이스(20160)의 주변부 주위에 장착되는 다른 수평 FOV를 갖는 다른 수의 센서들이 가능하다.Referring back to FIG. 2G , the horizontal FOVs of
이제 도 2h를 참조하면, 단거리 센서들(20510, 20520, 20530, 20540, 20550, 20560)은 화물 베이스(20160)의 주변에 위치한다. 단거리 카메라들은 단거리 센서들의 각도 및 위치를 설정하는 돌기들(protuberances)에 장착된다. 다른 구성에서, 센서들은 화물 베이스의 내부에 장착되어 위치하고 화물 베이스(20160)의 외부 스킨과 정렬된 윈도우들을 통해 시각적 데이터를 수신한다.Referring now to FIG. 2H , the short-
이제 도 2i 및 도 2j를 참조하면, 단거리 센서들(20600)은 화물 베이스(20160)의 스킨 요소(20516)에 장착되고 액체 냉각 시스템을 포함할 수 있다. 스킨 요소(20516)는 단거리 센서 조립체(20600)를 화물 베이스(20160)의 최상부에 대해 미리 결정된 위치 및 수직 각도로 그리고 화물 베이스(20160)의 전방에 대해 소정 각도로 유지하는 형성된 돌출부(20514)를 포함한다. 일부 구성들에서, 단거리 센서(20510)는 화물 플랫폼(20160)에 대해 하향으로 28°만큼 각을 이루고, 단거리 센서들(20520 및 20560)은 하향으로 18° 및 전방으로 25°만큼 각을 이루고, 단거리 센서들(20530 및 20550)은 하향으로 34° 및 후방으로 20°만큼 각을 이루고, 단거리 센서(20540)는 화물 플랫폼(20160)에 대해 하향으로 28°만큼 각을 이룬다. 스킨 요소(20516)는 카메라 조립체(20600)를 수용하기 위한 공동(cavity)(20517)을 포함한다. 스킨 요소(20516)는 또한, 제한적인 것은 아니지만, 리벳들(rivets), 나사들 및 버튼들을 포함하는 기계적 파스너들(fasteners)을 수용하기 위한 복수의 요소들(20518)을 포함할 수 있다. 대안적으로, 카메라 조립체는 접착제로 장착되거나 스킨 요소(20516)에 체결하는 클립으로 제자리에 유지될 수 있다. 개스킷(gasket)(20519)은 카메라(20610)의 전방에 대해 밀봉을 제공할 수 있다.Referring now to FIGS. 2I and 2J ,
이제 도 2k 및 도 2l을 참조하면, 단거리 센서 조립체(20600)는 수냉식 플레이트(20626)에 부착된 브래킷(20622) 상에 장착된 단거리 센서(20610)를 포함한다. 단거리 센서(20610)의 열 소산 요소 센서 블록(20616) 및 전자 블록(20620)을 더 잘 시각화하기 위해, 도 2k 및 도 2l에서 외부 케이스(20612), 투명 커버(20614) 및 히트 싱크(20618)가 부분적으로 제거되었다. 단거리 센서 조립체(20600)는 브래킷(20622)과 액체 냉각 플레이트(20626) 사이에 하나 이상의 열 전기 냉각기(TEC)(20630)를 포함할 수 있다. 액체 냉각 플레이트(20626)는 플레이트(20626)에 열적으로 접속된 냉각제 펌프 스루(coolant pumped through)(20628)에 의해 냉각된다. TEC들은 제1 및 제2 측을 갖는 전기 전력 공급 요소들이다. 전기 전력 공급 TEC는 제1 측을 냉각시키는 한편, 제1 측으로부터 제거된 열 에너지 플러스 제2 측에서의 전력을 거부한다. 단거리 센서 조립체(20600)에서, TEC들(20630)은 브래킷(20622)을 냉각시키고 열 냉각 에너지 플러스 전기 에너지를 수냉식 플레이트(20626)에 전달한다. 대안적으로, TEC(20630)는 TEC(20630)에 공급되는 전압의 크기 및 극성을 변화시킴으로써 카메라(20600)의 온도를 능동적으로 제어하는데 이용될 수 있다.Referring now to FIGS. 2K and 2L , a short-
냉각 모드에서 TEC(20630)를 동작시키는 것은 단거리 센서(20610)가 냉각제 온도 미만의 온도에서 동작하게 한다. 브래킷(20622)은 센서 블록(20616) 및 전자 블록(20620)의 냉각을 최대화하기 위해 2개의 장소에서 단거리 센서(20610)에 열적으로 접속된다. 브래킷(20622)은 나사(20625)를 통해 히트 싱크(20618)에 열적으로 부착되는 탭(20624)을 포함한다. 히트 싱크(20618)는 센서 블록(20616)에 열적으로 접속된다. 브래킷은 따라서 히트 싱크(20618), 나사(20625) 및 탭(20624)을 통해 센서 블록(20616)에 열적으로 접속된다. 브래킷(20622)은 또한 전자 블록(20620)에 기계적으로 부착되어 전자 블록(20620)의 직접 냉각을 제공한다. 브래킷(20622)은 도 2j의 요소들(20518)과 맞물리는 나사들 및 리벳들을 포함하지만 이에 제한되지 않는 복수의 기계적 부착물을 포함할 수 있다. 단거리 센서(20610)는 카메라, 스테레오 카메라, 초음파 센서, 단거리 레이더, 및 적외선 프로젝터 및 CMOS 센서를 포함하지만 이에 제한되지 않는 하나 이상의 센서를 포함할 수 있다. 하나의 예시적인 단거리 센서는 IR 프로젝터, 2개의 이미저 칩 및 RGB 카메라를 포함하는, 캘리포니아주 산타 클라라의 Intel에 의한 실감지 심도 카메라(real-sense depth camera) D435와 유사하다.Operating the
이제 도 2m 내지 도 2o를 참조하면, AV(20100)의 다른 실시예가 도시되어 있다. AV(20100A)는 화물 플랫폼(20160) 상에 장착된 화물 컨테이너(20110) 및 파워 베이스(20170)를 포함한다. AV(20100A)는 복수의 장거리 및 단거리 센서들을 포함한다. 주 장거리 센서들은 화물 컨테이너(20110)의 최상부 상의 센서 파일론(sensor pylon)(20400A)에 장착된다. 센서 파일론은 넓은 시야를 제공하기 위해 발산 방향들을 목표로 하는 LIDAR(20420) 및 복수의 장거리 카메라들(도시되지 않음)을 포함할 수 있다. 일부 구성들에서, LIDAR(20420)는 본 명세서의 다른 곳에 설명된 바와 같이, 예를 들어, 제한적인 것은 아니지만, 점유 그리드의 채움을 가능하게 할 수 있는 포인트 클라우드 데이터를 제공하는 것, 및 랜드마크들을 식별하고, AV(20100)를 그 환경 내에 위치시키고 및/또는 내비게이팅가능한 공간을 결정하기 위한 정보를 제공하는데 이용될 수 있다. 일부 구성들에서, Leopard Imaging Inc.로부터의 장거리 카메라는 랜드마크들을 식별하고, AV(20100)를 그 환경 내에 위치시키고 및/또는 내비게이팅가능 공간을 결정하는데 이용될 수 있다.Referring now to FIGS. 2M-2O , another embodiment of an AV 201000 is shown. The
도 2m 내지 도 2o를 계속 참조하면, 단거리 센서들은 주로 화물 플랫폼(20160)에 장착되고, AV(20100A) 근처의 장애물들에 관한 정보를 제공한다. 일부 실시예들에서, 단거리 센서들은 AV(20100A)의 4m 내의 장애물들 및 표면들에 대한 데이터를 공급한다. 일부 구성들에서, 단거리 센서들은 AV(20100A)로부터 10m까지의 정보를 제공한다. 적어도 부분적으로 전방을 향하는 복수의 카메라들이 화물 플랫폼(20160)에 장착된다. 일부 구성들에서, 복수의 카메라들은 3개의 카메라들을 포함할 수 있다.With continued reference to FIGS. 2M-2O , short-range sensors are primarily mounted on
이제 도 2o를 참조하면, 최상부 커버(20830)는 서브-루프(20810)를 드러내기 위해 부분적으로 절결되어 있다. 서브-루프(20810)는 복수의 안테나(20820)가 장착될 수 있는 단일 피스(single piece)를 제공한다. 예에서, 10개의 안테나들(20820)이 서브-루프(20810)에 장착된다. 또한, 예를 들어, 4개의 셀룰러 통신 채널은 2개의 안테나를 각각 갖고, 2개의 WiFi 안테나가 존재한다. 안테나는 셀룰러 송신 및 수신을 위한 주 안테나 및 보조 안테나로서 배선된다. 보조 안테나는, 제한적인 것은 아니지만, 간섭을 감소시키고 4G LTE 접속을 달성하는 것을 포함하는 몇몇 방법들에 의해 셀룰러 기능성을 향상시킬 수 있다. 서브-루프(20810) 뿐만 아니라 최상부 커버(20830)는 비금속성이다. 서브-루프(20810)는 최상부 커버(20830)의 10mm 내지 20mm 내의 플라스틱 표면이고, 이는 구조적이 아니고 최상부 커버(20830)가 부착되기 전에 안테나들이 프로세서들에 접속되게 한다. 안테나 접속들은 종종 고임피던스이고, 먼지, 그리스(grease) 및 오처리에 민감하다. 안테나를 서브-루프(20810)에 장착하고 접속하는 것은 최상부 커버가 안테나 접속들을 터치하지 않고 설치 및 제거되게 한다. 유지보수 및 수리 동작들은 서브-루프를 제거하거나 안테나를 접속해제하지 않고 최상부 커버를 제거하는 것을 포함할 수 있다. 최상부 커버(20830)를 설치하는 것으로부터 이격된 안테나들의 조립은 테스트/수리를 용이하게 한다. 최상부 커버(20830)는 내후성(weatherproof)이고, 물과 그릿(grit)이 화물 컨테이너(20110)에 들어가는 것을 방지한다. 서브-루프 상에 안테나들을 장착하는 것은 최상부 커버(20830) 상의 개구들의 수를 최소화한다.Referring now to FIG. 2O , the
이제 도 2p, 도 2q 및 도 2r을 참조하면, 화물 컨테이너(도시 생략)의 최상부 상에 장착된 장거리 센서 조립체(LRSA)(20400A)의 다른 예가 도시되어 있다. LRSA는 LRSA 구조체(20950) 상의 상이한 위치들에 장착되어 AV(20100A)의 환경의 파노라마 뷰를 제공하는 복수의 장거리 카메라들 및 LIDAR를 포함할 수 있다. LIDAR(20420)는 LRSA 구조체(20950) 상의 최상부에 장착되어 중단없는 뷰를 제공할 수 있다. LIDAR는 VELODYNE LIDAR를 포함할 수 있다. 복수의 장거리 카메라들(20910A 내지 20910D)은 LIDAR(20420) 아래의 다음 레벨 상에서 LRSA 구조체(20950) 상에 장착된다. 예에서, 4개의 카메라가 구조체 주위에 90°마다 하나씩 장착되어, AV(20100) 주위의 환경에 4개의 뷰를 제공한다. 일부 예들에서, 4개의 뷰들은 중첩할 것이다. 일부 예들에서, 각각의 카메라는 움직임의 방향과 정렬되거나 이동의 방향에 직교한다. 예에서, 하나의 카메라는 AV(20100A)의 원리 면들, 즉 전방, 후방, 좌측 및 우측 각각과 정렬된다. 예에서, 장거리 카메라들은 Leopard Imaging Inc.의 모델 LI-AR01 44-MIPI-M12이다. 장거리 카메라들은 프로세서로의 고속 데이터 전송을 제공하는 MIPI CSI-2 인터페이스를 가질 수 있다. 장거리 카메라들은 50°와 70° 사이의 수평 시야 및 30°와 40° 사이의 수직 시야를 가질 수 있다.Referring now to FIGS. 2P, 2Q, and 2R, another example of a long range sensor assembly (LRSA) 20400A mounted on top of a freight container (not shown) is shown. The LRSA may include a LIDAR and a plurality of long-range cameras mounted at different locations on the
이제 도 2s 및 도 2t를 참조하면, 장거리 프로세서(20940)는 장거리 카메라들(20910A 내지 20910D) 및 LIDAR(20420) 아래의 LRSA 구조체(20950) 상에 위치된다. 장거리 프로세서(20940)는 장거리 카메라들 및 LIDAR로부터 데이터를 수신한다. 장거리 프로세서는 AV(20100A)에서의 다른 곳의 하나 이상의 프로세서와 통신한다. 장거리 프로세서(20940)는 장거리 카메라들 및 LIDAR로부터 도출된 데이터를 본 명세서의 다른 곳에 설명된 AV(20100A) 상의 다른 곳에 위치된 하나 이상의 프로세서에 제공한다. 장거리 프로세서(20940)는 냉각기(20930)에 의해 액체 냉각될 수 있다. 냉각기(20930)는 장거리 카메라들 및 LIDAR 아래의 구조체에 장착될 수 있다. 냉각기(20930)는 장거리 프로세서(20940)에 대한 장착 위치를 제공할 수 있다. 냉각기(20930)는 2020년 5월 26일자로 출원된, 발명의 명칭이 Apparatus for Electronic Cooling on an Autonomous Device인 미국 특허 출원 제16/883,668호(대리인 문서 번호 AA280)에 설명되어 있고, 이 출원은 전체가 본 명세서에 참고로 포함된다. 냉각기는 냉각기(20930)에 냉각 액체를 제공하는 액체 공급 도관 및 복귀 도관을 구비한다.Referring now to FIGS. 2S and 2T , a
도 2m 및 도 2n을 다시 참조하면, 단거리 카메라 조립체들(20740A 내지 20740C)은 컨테이너 플랫폼(20160)의 전방에 장착되고, 이동 표면 및 장애물들, 계단들, 커브들 및 다른 실질적으로 불연속적인 표면 피처들(SDSF)에 관한 정보를 수집하도록 각을 이룬다. 카메라 조립체들(20740A 내지 20740C)은 이동 표면들, 지면 상의 물체들 및 SDSF들을 조명하기 위한 하나 이상의 LED 라이트를 포함한다.Referring again to FIGS. 2M and 2N , short-
이제 도 2u 내지 도 2x를 참조하면, 카메라 조립체들(20740A 및 20740B)은 카메라들(20732)로부터 개선된 이미지 데이터를 제공하기 위해 지면 및 물체들을 조명하는 라이트들(20732)을 포함한다. 카메라 조립체(20740A)는 20740C의 미러이고, 20740A의 설명들은 20740C에 암시적으로 적용된다. 카메라(20732)는 단일 비전 카메라, 스테레오 카메라, 및/또는 적외선 프로젝터 및 CMOS 센서를 포함할 수 있다. 카메라의 일 예는, IR 프로젝터, 렌즈를 갖는 2개의 이미저 칩 및 RGB 카메라를 포함하는, 캘리포니아주 산타 클라라의 Intel에 의한 Real-Sense Depth D435 카메라이다. LED 라이트들(20734)은 야간에 또는 저조명 조건들에서 이용되거나 항상 이미지 데이터를 개선하는데 이용될 수 있다. 동작의 한 이론은, 라이트들이 투영 표면들을 조명하고 함몰부들에 그림자들을 생성함으로써 콘트라스트를 생성한다는 것이다. LED 라이트들은, 예에서 백색 LED들일 수 있다. 예에서, LED 라이트들(20734)은 Cree Inc.로부터의 Xlamp XHP50이다. 다른 예에서, LED 라이트들은 인근의 보행자들 또는 운전자들을 산만하게 하거나 괴롭히지 않고 카메라(20372)에 조명을 제공하기 위해 적외선에서 방출할 수 있다.Referring now to FIGS. 2U-2X ,
도 2u 내지 도 2x를 계속 참조하면, 라이트들(20374)의 배치 및 각도 및 커버들(20736A, 20736B)의 형상은 카메라(20732)가 라이트들(20374)을 보지 못하게 한다. 라이트들(20374)의 각도 및 배치, 및 커버들(20736A, 20736B)은 라이트들이 운전자들을 간섭하거나 또는 보행자들을 괴롭히는 것을 방지한다. 카메라(20732) 내의 센서가 라이트(20734)에 의해 가려지고 따라서 AV(20100A)의 전방 및 측면의 지면 및 물체들로부터 더 낮은 광 신호들을 검출하는 것이 방지되도록 카메라(20732)가 라이트(20734)에 노출되지 않는 것이 유리하다. 카메라(20732) 및/또는 라이트들(20734)은 포트들(20736)를 통해 카메라 조립체들 내외로 유동하는 액체로 냉각될 수 있다.With continued reference to FIGS. 2U-2X , the placement and angle of lights 20374 and the shape of
이제 도 2w 및 도 2x를 참조하면, 단거리 카메라 조립체(20740A)는 초음파 또는 소나(sonar) 단거리 센서(20730A)를 포함한다. 제2 단거리 카메라 조립체(20740C)는 또한 초음파 단거리 센서(20730B)(도 2n)를 포함한다.Referring now to FIGS. 2W and 2X , short-
이제 도 2y를 참조하면, 초음파 센서(20730A)는 카메라(20732) 위에 장착된다. 예에서, 초음파 센서(20730A)의 중심 라인은 화물 컨테이너(20110)의 베이스와 평행하고, 이는 종종 센서(20730A)가 수평이라는 것을 의미한다. 센서(20730A)는 전방을 향하지 않고 45° 각을 이룬다. 커버(20376A)는 초음파 센서(20730A)로부터 나오고 초음파 센서(20730A)에 의해 수신되는 초음파들을 지향시키기 위한 혼(horn)(20746)을 제공한다.Referring now to FIG. 2Y , the
도 2y를 계속 참조하면, 카메라(20732), 카메라 조립체(20740A) 내의 라이트(20734)의 단면은 커버(20736)에서의 각도들 및 개구들을 도시한다. 단거리 카메라 조립체들에서의 카메라들은 AV의 전방 및 측면에서 지면을 더 양호하게 이미징하기 위해 하향으로 각을 이룬다. 중앙 카메라 조립체(20740B)는 수평 평면에서 직선으로 전방으로 배향된다. 코너 카메라 조립체들(20740A, 20740C)은 수평 평면에서 직선으로 전방에 대해 이들의 각각의 측면들에 대해 25° 각을 이룬다. 카메라(20732)는 수직 평면에서 화물 플랫폼의 최상부에 대해 20° 하향으로 각을 이룬다. AV가 일반적으로 화물 플랫폼을 수평으로 유지함에 따라, 카메라는 따라서 수평 아래로 20° 각을 이룬다. 유사하게, 중앙 카메라 조립체(20740B)(도 2m)는 수평 아래로 28°만큼 각을 이룬다. 예에서, 카메라 조립체들에서의 카메라들은 25° 내지 35°만큼 하향으로 각을 이룰 수 있다. 다른 예에서, 카메라 조립체들에서의 카메라들은 15° 내지 45°만큼 하향으로 각을 이룰 수 있다. LED 라이트들(20734)은 카메라(20732)에 의해 이미징되는 지면을 조명하고 보행자들에 대한 방해(distraction)를 최소화하기 위해 유사하게 하향으로 각을 이룬다. 일 예에서, LED 라이트 중심 라인(20742)은 카메라 중심 라인(20738)의 5° 내에서 평행하다. 커버(20736A)는 모두 카메라 조립체들(20740A 내지 20740C)에서의 LED들(20734)의 밝은 광으로부터 카메라(20732) 및 보행자들을 보호한다. LED에 의해 방출된 광을 격리하는 커버는 또한 카메라(20732)의 시야를 최대화하기 위해 나팔형 개구(flared opening)(20737)를 제공한다. 라이트들은 커버의 개구로부터 적어도 4mm 리세스되어 있다. 라이트 개구는 상부 벽(20739) 및 하부 벽(20744)에 의해 정의된다. 상부 벽(20739)은 중심 라인(2074)과 대략 평행(± 5°)하다. 하부 벽(20744)은 지면 및 지면 부근의 물체들의 조명을 최대화하기 위해 중심 라인(20742)으로부터 대략 18° 나팔 모양으로 된다.With continued reference to FIG. 2Y , a cross-section of
이제 도 2z 내지 도 2aa를 참조하면, 일 구성에서, 라이트(20734)는 광의 빔을 생성하기 위해 각각 정사각형 렌즈(20734B) 아래에 있는 2개의 LED들(20734A)을 포함한다. LED들/렌즈들은 카메라(20732)의 FOV 밖의 광의 최소 과잉으로 카메라의 시야를 조명하기 위해 카메라(20372)에 대해 각을 이루며 위치된다. 2개의 LED/렌즈는 2개의 라이트들 사이에 규정된 각도(20762)로 단일 PCB(20752) 상에 함께 장착된다. 다른 구성에서, 2개의 LED/렌즈는 서로에 대해 소정 각도로 개별 PCB들 상의 히트 싱크(20626A) 상에 개별적으로 장착된다. 예에서, 라이트는 Cree, Inc.로부터의 Xlamp XHP50들이고, 렌즈는 LEDil로부터의 60° 렌즈 HB-SQ-W이다. 라이트들은 서로에 대해 대략 50° 각을 이루어, 렌즈의 정면 사이의 각도(20762)는 130°이다. 라이트들은 카메라(20732)의 정면 후방에 대략 18mm(± 5mm)(20764) 그리고 카메라(20732)의 중심 라인 아래에 대략 30mm(20766)에 위치된다.Referring now to FIGS. 2Z-2A , in one configuration, a light 20734 includes two
이제 도 2aa 및 도 2bb를 참조하면, 카메라(20732)는 열 전기 냉각기(TEC)(20630)에 의해 냉각되고, 이는 냉각 블록(20626A)을 통해 유동하는 액체 냉각제에 의해 라이트(20734)와 함께 냉각된다. 카메라는 카메라의 센서 블록 부분 내로 끼워지는 나사(20625)를 거쳐 브래킷(20622)에 부착되고, 브래킷(20622)의 후방은 카메라의 전자 블록에 볼트 결합된다. 브래킷(20622)은 카메라(20732)에서의 IR 이미징 칩들(CMOS 칩들)의 성능을 유지하기 위해 2개의 TEzC들에 의해 냉각된다. TEC들은 브래킷(20622)으로부터의 열 및 이들이 냉각 블록(20626A)으로 끌어당기는 전력을 거절한다.Referring now to FIGS. 2AA and 2BB ,
이제 도 2bb를 참조하면, 냉각제는 중앙 핀(central fin)(20626D)에 의해 생성된 U형 경로를 통해 지향된다. 냉각제는 라이트(20734)의 LED/렌즈/PCB 바로 뒤에서 유동한다. 핀들(20626B, 20626C)은 라이트(20734)로부터 냉각제로의 열 전달을 개선한다. 냉각제는 TEC(20630)의 고온 측을 지나가도록 상향 유동한다. 유체 경로는 냉각 블록(20626A)의 후방에 부착된 플레이트(20737)(도 2x)에 의해 생성된다.Referring now to FIG. 2BB , coolant is directed through a U-shaped path created by a
이제 도 3a를 참조하면, 센서 데이터 및 맵 데이터는 점유 그리드를 업데이트하는데 이용될 수 있다. 본 교시의 시스템 및 방법은 그리드 맵에 관하여 자율적으로 내비게이팅하고 있는 디바이스에 대한 전역 점유 그리드를 관리할 수 있다. 그리드 맵은 디바이스가 시작 포인트로부터 목적지까지 따를 수 있는 루트들 또는 경로들을 포함할 수 있다. 전역 점유 그리드는 디바이스가 내비게이팅하는 것이 안전한 장소를 나타낼 수 있는 자유 공간 표시들을 포함할 수 있다. 가능한 경로들 및 자유 공간 표시들은 전역 점유 그리드 상에서 결합되어, 디바이스가 목적지에 안전하게 도달하기 위해 이동할 수 있는 최적 경로를 확립할 수 있다.Referring now to FIG. 3A , sensor data and map data may be used to update the occupancy grid. Systems and methods of the present teachings can manage a global occupancy grid for devices that are autonomously navigating with respect to a grid map. A grid map may include routes or routes that a device may follow from a starting point to a destination. The global occupancy grid may include free space indicators that may indicate where it is safe for a device to navigate. Possible routes and free space indications can be combined on the global occupancy grid to establish an optimal route the device can travel to safely reach its destination.
도 3a를 계속 참조하면, 디바이스가 이동함에 따라, 방해받지 않는 내비게이션 루트를 결정하기 위해 이용될 전역 점유 그리드는 디바이스의 위치에 기초하여 액세스될 수 있고, 전역 점유 그리드는 디바이스가 이동함에 따라 업데이트될 수 있다. 업데이트들은 디바이스의 위치에서의 전역 점유 그리드와 연관된 현재 값들, 디바이스가 내비게이팅하고 있는 이웃에 대한 이력 정보를 포함할 수 있는 정적 점유 그리드, 및 디바이스가 이동함에 따라 센서들에 의해 수집되는 데이터에 적어도 기초할 수 있다. 센서들은 본 명세서에서 설명되는 바와 같이 디바이스 상에 배치될 수 있고, 이들은 다른 곳에 배치될 수 있다.With continued reference to FIG. 3A , as the device moves, a global occupancy grid that will be used to determine an undisturbed navigation route may be accessed based on the device's location, and the global occupancy grid may be updated as the device moves. can Updates are made at least to current values associated with the global occupancy grid at the device's location, a static occupancy grid, which may include historical information about the neighborhood the device is navigating to, and data collected by sensors as the device moves. can be based The sensors may be placed on the device as described herein, and they may be placed elsewhere.
도 3a를 계속 더 참조하면, 전역 점유 그리드는 셀들을 포함할 수 있고, 셀들은 점유된 확률 값들과 연관될 수 있다. 전역 점유 그리드의 각각의 셀은 셀의 위치에서 장애물들이 식별되었는지 여부, 이전에 수집된 데이터로부터 결정되고 디바이스가 내비게이팅할 때 수집된 데이터에 의해 결정되는 바와 같은 위치에서 및 그 주변의 이동 표면의 특성들 및 불연속성들, 및 그 위치와 연관된 이전 점유 데이터와 같은 정보와 연관될 수 있다. 디바이스가 내비게이팅할 때 캡처된 데이터는 그 중심이 디바이스인 로컬 점유 그리드에 저장될 수 있다. 전역 점유 그리드를 업데이트할 때, 정적인 이전에 수집된 데이터는 로컬 점유 그리드 데이터 및 이전 업데이트에서 결정된 전역 점유 데이터와 결합되어 디바이스에 의해 점유된 공간이 비점유된 것으로 표시된 새로운 전역 점유 그리드를 생성할 수 있다. 일부 구성들에서, 베이지안 방법은 전역 점유 그리드를 업데이트하는데 이용될 수 있다. 방법은 로컬 점유 그리드에서의 각각의 셀에 대해, 전역 점유 그리드 상의 셀의 위치를 계산하는 단계, 현재 전역 점유 그리드로부터의 그 위치에서의 값에 액세스하는 단계, 정적 점유 그리드로부터의 위치에서의 값에 액세스하는 단계, 로컬 점유 그리드로부터의 위치에서의 값에 액세스하는 단계, 및 전역 점유 그리드 상의 위치에서의 새로운 값을 전역 점유 그리드로부터의 현재 값, 정적 점유 그리드로부터의 값, 및 로컬 점유 그리드로부터의 값의 함수로서 계산하는 단계를 포함할 수 있다. 일부 구성들에서, 새로운 값을 계산하는데 이용되는 관계는 정적 값과 로컬 점유 그리드 값으로부터 현재 값을 마이너트한 것의 합을 포함할 수 있다. 일부 구성들에서, 새로운 값은, 예를 들어, 계산 제한에 기초하여 미리 선택된 값들에 의해 한정될 수 있다.With still further reference to FIG. 3A , the global occupancy grid may include cells, and the cells may be associated with occupied probability values. Each cell of the global occupancy grid is located at and around the location of the moving surface as determined by whether obstacles have been identified at the cell's location, as determined from previously collected data and as determined by the data collected when the device is navigating. It may be associated with information such as characteristics and discontinuities, and previous occupancy data associated with its location. Data captured as a device navigates may be stored in a local occupancy grid whose center is the device. When updating the global occupancy grid, the static previously collected data is combined with the local occupancy grid data and the global occupancy data determined from the previous update to create a new global occupancy grid in which the space occupied by the device is marked as unoccupied. can In some configurations, the Bayesian method may be used to update the global occupancy grid. The method includes, for each cell in the local occupancy grid, calculating the position of the cell on the global occupancy grid, accessing a value at that position from the current global occupancy grid, the value at the position from the static occupancy grid. accessing , accessing a value at a location from the local occupancy grid, and adding a new value at a location on the global occupancy grid to the current value from the global occupancy grid, the value from the static occupancy grid, and the local occupancy grid. calculating as a function of the value of In some configurations, the relationship used to compute the new value may include the sum of the static value and the current value minus the locally occupied grid value. In some configurations, the new value may be bounded by preselected values, for example based on a computational constraint.
도 3a를 계속 참조하면, 본 교시의 시스템(30100)은 전역 점유 그리드를 관리할 수 있다. 전역 점유 그리드는 초기 데이터로 시작할 수 있고, 디바이스가 이동함에 따라 업데이트될 수 있다. 초기 전역 점유 그리드를 생성하는 것은 제1 프로세스를 포함할 수 있고, 전역 점유 그리드를 업데이트하는 것은 제2 프로세스를 포함할 수 있다. 시스템(30100)은 다양한 소스들로부터 정보를 수신할 수 있고, 그 정보에 적어도 기초하여 전역 점유 그리드(30505)를 업데이트할 수 있는 전역 점유 서버(30121)를 포함할 수 있지만, 이에 제한되지 않는다. 정보는, 예를 들어, 디바이스 상에 및/또는 다른 곳에 위치된 센서들, 정적 정보, 및 내비게이션 정보에 의해 공급될 수 있지만, 이에 제한되지 않는다. 일부 구성들에서, 센서들은, 예를 들어, 표면 특성들 및 장애물들을 검출할 수 있는 카메라들 및 레이더를 포함할 수 있다. 예를 들어, 센서들은 디바이스에 의한 안전한 이동을 가능하게 하기에 충분한 주변 커버리지를 제공하기 위해 디바이스 상에 유리하게 위치될 수 있다. 일부 구성들에서, LIDAR(30103)는 로컬 점유 그리드를 LIDAR 자유 공간 정보(30213)로 채우는 것을 가능하게 할 수 있는 LIDAR 포인트 클라우드(PC) 데이터(30201)를 제공할 수 있다. 일부 구성들에서, 종래의 지면 검출 역 센서 모델(ISM)(30113)은 LIDAR PC 데이터(30201)를 처리하여 LIDAR 자유 공간 정보(30213)를 생성할 수 있다.With continued reference to FIG. 3A , the
도 3a를 계속 참조하면, 일부 구성들에서, RGB-D 카메라들(30101)은 RGB-D PC 데이터(30202) 및 RGB 카메라 데이터(30203)를 제공할 수 있다. RGB-D PC 데이터(30202)는 로컬 점유 그리드를 심도 자유 공간 정보(30209)로 채울 수 있고, RGB-D 카메라 데이터(30203)는 로컬 점유 그리드를 표면 데이터(30211)로 채울 수 있다. 일부 구성들에서, RGB-D PC 데이터(30202)는, 예를 들어, 종래의 스테레오 자유 공간 ISM(30109)에 의해 처리될 수 있지만, 이에 제한되지 않고, RGB-D 카메라 데이터(30203)는, 예를 들어, 제한적인 것은 아니지만, 종래의 표면 검출 신경망(30111)에 공급될 수 있다. 일부 구성들에서, RGB MIPI 카메라들(30105)은 RGB 데이터(30205)를 제공하여, LIDAR PC 데이터(30201)와 조합하여, LIDAR/MIPI 자유 공간 정보(30215)를 갖는 로컬 점유 그리드를 생성할 수 있다. 일부 구성들에서, RGB 데이터(30205)는 종래의 자유 공간 신경망(30115)에 공급될 수 있고, 그 출력은, LIDAR PC 데이터(30201)와 함께, 종래의 2D-3D 등록(30117)에 공급되기 전에, RGB 데이터(30205)의 어느 부분들이 정확도를 위해 가장 중요한지를 식별할 수 있는 미리 선택된 마스크(30221)를 겪을 수 있다. 2D-3D 등록(30117)은 RGB 데이터(30205)로부터의 이미지를 LIDAR PC 데이터(30201) 상에 투영할 수 있다. 일부 구성들에서, 2D-3D 등록(30117)은 필요하지 않다. 센서 데이터를 처리하기 위한 센서들 및 방법들의 임의의 조합은 전역 점유 그리드를 업데이트하기 위해 데이터를 수집하는데 이용될 수 있다. 전역 점유 그리드 내의 점유된 확률들의 결정 및 검증을 가능하게 하기 위해 임의의 수의 자유 공간 추정 절차들이 이용되고 조합될 수 있다.With continued reference to FIG. 3A , in some configurations, RGB-
도 3a를 계속 참조하면, 일부 구성들에서, 이력 데이터는, 예를 들어, 내비게이션 영역과 연관된 정보를 갖는 이전에 수집되고 처리된 데이터의 저장소(30107)에 의해 제공될 수 있다. 일부 구성들에서, 저장소(30107)는, 예를 들어, 다각형들(30207)과 같은, 예를 들어, 루트 정보를 포함할 수 있지만, 이것으로 제한되지 않는다. 일부 구성들에서, 이들 데이터는, 에지들(30303), 불연속성들(30503), 및 표면들(30241)을 전역 점유 그리드 서버(30121)에 제공할 수 있는 종래의 다각형 파서(30119)에 공급될 수 있다. 전역 점유 그리드 서버(30121)는 센서들에 의해 수집된 로컬 점유 그리드 데이터를 처리된 저장소 데이터와 융합하여 전역 점유 그리드(30505)를 결정할 수 있다. 그리드 맵(30601)(도 3d)은 전역 점유 데이터로부터 생성될 수 있다.With continued reference to FIG. 3A , in some configurations, historical data may be provided, for example, by a
이제 도 3b를 참조하면, 일부 구성들에서, 센서들은 소나 자유 공간(30225)을 갖는 로컬 점유 그리드를 전역 점유 그리드 서버(30121)에 제공할 수 있는 소나(30141)를 포함할 수 있다. 심도 데이터(30209)는 종래의 자유 공간 ISM(30143)에 의해 처리될 수 있다. 소나 자유 공간(30225)을 갖는 로컬 점유 그리드는 표면들 및 불연속성들(30223)을 갖는 로컬 점유 그리드, LIDAR 자유 공간(30213)을 갖는 로컬 점유 그리드, LIDAR/MIPI 자유 공간(30215)을 갖는 로컬 점유 그리드, 스테레오 자유 공간(30209)을 갖는 로컬 점유 그리드, 및 에지들(30303)(도 3f), 불연속성들(30503)(도 3f), 내비게이션 포인트들(30501)(도 3f), 표면 신뢰도들(30513)(도 3f), 및 표면들(30241)(도 3f)과 융합되어 전역 점유 그리드(30505)를 형성할 수 있다.Referring now to FIG. 3B , in some configurations, the sensors can include a
이제 도 3c 내지 도 3f를 참조하면, 전역 점유 그리드를 초기화하기 위해, 전역 점유 그리드 초기화(30200)는 전역 점유 그리드 서버(30121), 전역 점유 그리드(30505) 및 정적 그리드(30249)에 의해 생성하는 것을 포함할 수 있다. 전역 점유 그리드(30505)는 로컬 점유 그리드들(30118)로부터의 데이터를 관심 영역에 위치된 에지들(30303), 불연속성들(30503) 및 표면들(30241)과 융합함으로써 생성될 수 있다. 정적 그리드(30249)(도 3d)는, 예를 들어, 표면 데이터(30241), 불연속성 데이터(30503), 에지들(30303) 및 다각형들(30207)과 같은, 그러나 이에 한정되지 않는 데이터를 포함하도록 생성될 수 있다. 초기 전역 점유 그리드(30505)는 정적 그리드(30249)(도 3e)로부터의 점유 확률 데이터를 센서들(30107A)로부터의 수집된 데이터로부터 도출된 점유 데이터에 추가하고, 전역 점유 그리드(30505)의 이전(30505A)(도 3f)으로부터 점유 데이터를 감산함으로써 계산될 수 있다. 로컬 점유 그리드들(30118)은, 제한적인 것은 아니지만, ISM을 통한 스테레오 자유 공간 추정(30209)(도 3b)으로부터 생기는 로컬 점유 그리드 데이터, 표면/불연속성 검출 결과들(30223)(도 3b)을 포함하는 로컬 점유 그리드 데이터, ISM을 통한 LIDAR 자유 공간 추정(30213)(도 3b)으로부터 생기는 로컬 점유 그리드 데이터, 및 일부 구성들에서 이어지는 LIDAR/MIPI 자유 공간 추정(30215)(도 3b)으로부터 생기는 로컬 점유 그리드 데이터, 2D-3D 등록(30117)(도 3b)을 포함할 수 있지만, 이에 한정되지 않는다. 일부 구성들에서, 로컬 점유 그리드들(30118)은 ISM을 통한 소나 자유 공간 추정(30225)으로부터 생기는 로컬 점유 그리드 데이터를 포함할 수 있다. 일부 구성들에서, 자유 공간 추정을 갖는 다양한 로컬 점유 그리드들은 미리 선택된 알려진 프로세스들에 따라 로컬 점유 그리드들(30118)로 융합될 수 있다. 전역 점유 그리드(30505)는 디바이스의 부근에 점유 및 표면 데이터를 포함할 수 있는 그리드 맵(30601)(도 3e)을 생성할 수 있다. 일부 구성들에서, 그리드 맵(30601)(도 3e) 및 정적 그리드(30249)(도 3d)는, 예를 들어, 로봇 운영 체제(ROS) 가입/게시 특징들을 이용하여 게시될 수 있지만, 이에 한정되지 않는다.3C-3F, to initialize the global occupancy grid, the global
이제 도 3g 및 도 3h를 참조하면, 디바이스가 이동할 때 점유 그리드를 업데이트하기 위해, 점유 그리드 업데이트(30300)는 디바이스가 이동할 때 측정된 데이터에 관하여 로컬 점유 그리드를 업데이트하고, 이들 데이터를 정적 그리드(30249)와 결합하는 것을 포함할 수 있다. 정적 그리드(30249)는 디바이스가 작동 점유 그리드 범위 밖으로 이동할 때 액세스된다. 디바이스는 제1 시간에 제1 위치(30513A)에 있는 점유 그리드(30245A)에 위치할 수 있다. 디바이스가 제2 위치(30513B)로 이동할 때, 디바이스는 그 새로운 위치로부터 및 가능하게는 점유 그리드(30245A)에서의 값들로부터 도출된 값들의 세트를 포함하는 점유 그리드(30245B)에 위치한다. 정적 그리드(30249)로부터의 데이터 및 제2 시간에 점유 그리드(30245B) 내의 셀들과 위치적으로 일치하는 초기 전역 점유 그리드(30505)(도 3c)로부터의 표면 데이터는, 측정된 표면 데이터 및 점유된 확률과 함께, 미리 선택된 관계에 따라 각각의 그리드 셀을 업데이트하는데 이용될 수 있다. 일부 구성들에서, 관계는 정적 데이터를 측정된 데이터와 합산하는 것을 포함할 수 있다. 제3 시간 및 제3 위치(30513C)에서의 결과적인 점유 그리드(30245C)는 디바이스의 내비게이션을 통보하기 위해 이동 관리자(30123)에게 이용가능하게 될 수 있다.Referring now to FIGS. 3G and 3H , to update the occupancy grid as the device moves,
이제 도 3i를 참조하면, 점유 그리드를 생성 및 관리하기 위한 방법(30450)은, 제한적인 것은 아니지만, 로컬 점유 그리드 생성 노드(30122)에 의해 센서 측정치를 디바이스와 연관된 기준의 프레임으로 변환하는 단계(30451), 타임-스탬프된 측정 점유 그리드를 생성하는 단계(30453), 및 타임-스탬프된 측정 점유 그리드를 로컬 점유 그리드(30234)(도 3g)로서 게시하는 단계(30455)를 포함할 수 있다. 방법(30450)과 연관된 시스템은, 다수의 로컬 그리드 생성 노드들(30122), 예를 들어, 각각의 센서에 대해 하나씩을 포함할 수 있어서, 다수의 로컬 점유 그리드(30234)(도 3g)가 발생할 수 있게 한다. 센서는, 제한적인 것은 아니지만, RGB-D 카메라들(30325)(도 3g), LIDAR/MIPI(30231)(도 3g), 및 LIDAR(30233)(도 3g)를 포함할 수 있다. 방법(30450)과 연관된 시스템은, 로컬 점유 그리드(들)를 수신하고 이들을 방법(30450)에 따라 처리할 수 있는 전역 점유 그리드 서버(30121)를 포함할 수 있다. 특히, 방법(30450)은, 표면들을 로딩하는 단계(30242), 예를 들어, 제한적인 것은 아니지만, 커브들과 같은 표면 불연속성들에 액세스하는 단계(30504), 및 예를 들어, 제한적인 것은 아니지만, 표면 및 표면 불연속성들을 포함할 수 있는 저장소(30107)에서 이용가능한 임의의 특성들로부터 정적 점유 그리드(30249)를 생성하는 단계(30248)를 포함할 수 있다. 방법(30450)은, 게시된 로컬 점유 그리드를 수신하는 단계(30456) 및 맵의 중앙에 디바이스를 유지하기 위해 전역 점유 그리드를 이동시키는 단계(30457)를 포함할 수 있다. 방법(30450)은, 정적 이전 점유 그리드(30249)로부터의 이전 정보로 맵 상의 새로운 영역들을 설정하는 단계(30459), 및 디바이스에 의해 현재 점유된 영역을 비점유된 것으로 마킹하는 단계(30461)를 포함할 수 있다. 방법(30450)은, 각각의 로컬 점유 그리드 내의 각각의 셀에 대해, 루프(30463)를 실행할 수 있다. 루프(30463)는, 전역 점유 그리드 상의 셀의 위치를 계산하는 단계, 전역 점유 그리드 상의 위치에서의 이전 값에 액세스하는 단계, 및 이전 값과 로컬 점유 그리드 내의 셀에서의 값 사이의 관계에 기초하여 셀 위치에서의 새로운 값을 계산하는 단계를 포함할 수 있지만, 이것으로 제한되는 것은 아니다. 이 관계는, 제한적인 것은 아니지만, 값들을 합산하는 단계를 포함할 수 있다. 루프(30463)는, 미리 선택된 수용가능한 확률 범위와 새로운 값을 비교하는 것, 및 전역 점유 그리드를 새로운 값으로 설정하는 것을 포함할 수 있다. 비교는, 확률이 최소 또는 최대 수용가능한 확률보다 낮거나 높으면, 확률을 최소 또는 최대 수용가능한 확률로 설정하는 것을 포함할 수 있다. 방법(30450)은 전역 점유 그리드를 게시하는 단계(30467)를 포함할 수 있다.Referring now to FIG. 3I , a
이제 도 3j를 참조하면, 전역 점유 그리드를 생성하기 위한 대안적 방법(30150)은, 제한적인 것은 아니지만, 디바이스가 이동했다면(30151), (디바이스가 이동되기 전에 있었던) 오래된 맵 영역과 연관된 점유된 확률 값들에 액세스하고(30153), (디바이스가 이동된 후에 있었던) 새로운 맵 영역 상의 전역 점유 그리드를 오래된 맵 영역으로부터의 값들로 업데이트하는 단계, 새로운 맵 영역 내의 전역 점유 그리드의 셀과 연관된 드라이빙가능 표면에 액세스하고(30155), 업데이트된 전역 점유 그리드 내의 셀들을 드라이빙가능 표면들로 업데이트하는 단계, 및 단계 30159로 진행하는 단계를 포함할 수 있다. 30151에서 디바이스가 이동하지 않았다면, 그리고 전역 점유 그리드가 로컬 점유 그리드와 함께 위치해 있다면, 방법(30150)은, 적어도 하나의 로컬 점유 그리드로부터의 드라이빙가능 표면들과 연관된 표면 신뢰도들로 아마도 업데이트된 전역 점유 그리드를 업데이트하는 단계(30159), 예를 들어, 제한적인 것은 아니지만, 베이지안 함수를 이용하여 적어도 하나의 로컬 점유 그리드로부터의 점유된 확률 값의 로그오즈로 업데이트된 전역 점유 그리드를 업데이트하는 단계(30161), 및 위치와 연관된 특성들에 적어도 기초하여 로그오즈를 조정하는 단계(30163)를 포함할 수 있다. 30157에서 전역 점유 그리드가 로컬 점유 그리드와 함께 위치해 있지 않다면, 방법(30150)은 단계(30151)로 복귀하는 단계를 포함할 수 있다. 특성들은, 제한적인 것은 아니지만, 디바이스의 위치를 비점유된 것으로 설정하는 것을 포함할 수 있다.Referring now to FIG. 3J , an
이제 도 3k를 참조하면, 다른 구성에서, 전역 점유 그리드를 생성하기 위한 방법(30250)은, 제한적인 것은 아니지만, 30251에서 디바이스가 이동했다면, 디바이스의 새로운 위치와 연관된 정적 그리드로부터의 정보로 전역 점유 그리드를 업데이트하는 단계(30253)를 포함할 수 있다. 방법(30250)은 새로운 위치에서의 표면들을 분석하는 단계(30257)를 포함할 수 있다. 30259에서 표면들이 드라이빙가능하다면, 방법(30250)은 전역 점유 그리드 상의 표면들을 업데이트하는 단계(30261), 및 맵 상의 새로운 위치와 연관된 정적 값들의 저장소로부터의 값들로 전역 점유 그리드를 업데이트하는 단계(30263)를 포함할 수 있다.Referring now to FIG. 3K , in another configuration, a
이제 도 3l을 참조하면, 표면들을 업데이트하는 단계(30261)는, 제한적인 것은 아니지만, 특정한 센서에 대한 로컬 점유 그리드(LOG)에 액세스하는 단계(30351)를 포함할 수 있다. 30353에서 처리할 로컬 점유 그리드에 더 많은 셀이 있다면, 방법(30261)은, 로컬 점유 그리드로부터의 표면 분류 신뢰도 값 및 표면 분류에 액세스하는 단계(30355)를 포함할 수 있다. 30357에서 로컬 점유 그리드에서의 셀에서의 표면 분류가 셀의 위치에서의 전역 점유 그리드에서의 표면 분류와 동일하다면, 방법(30261)은, 새로운 전역 점유 그리드(GOG) 표면 신뢰도를 오래된 전역 점유 그리드 표면 신뢰도와 로컬 점유 그리드 표면 신뢰도의 합으로 설정하는 단계(30461)를 포함할 수 있다. 30357에서 로컬 점유 그리드에서의 셀에서의 표면 분류가 셀의 위치에서의 전역 점유 그리드에서의 표면 분류와 동일하지 않다면, 방법(30261)은, 새로운 전역 점유 그리드 표면 신뢰도를 오래된 전역 점유 그리드 표면 신뢰도와 로컬 점유 그리드 표면 신뢰도 사이의 차이로 설정하는 단계(30359)를 포함할 수 있다. 30463에서 새로운 전역 점유 그리드 표면 신뢰도가 0보다 작다면, 방법(30261)은, 새로운 전역 점유 그리드 표면 분류를 로컬 점유 그리드 표면 분류의 값으로 설정하는 단계(30469)를 포함할 수 있다.Referring now to FIG. 3L , updating
이제 도 3m을 참조하면, 정적 값의 저장소로부터의 값으로 전역 점유 그리드를 업데이트하는 단계(30263)는, 이것으로 제한되는 것은 아니지만, 30361에서 처리할 로컬 점유 그리드에 더 많은 셀이 있다면, 방법(30263)은 로컬 점유 그리드로부터의 로그오즈에 액세스하는 단계(30363) 및 그 위치에서의 로컬 점유 그리드로부터의 값으로 전역 점유 그리드에서의 로그오즈를 업데이트하는 단계(30365)를 포함할 수 있다. 30367에서 셀이 비어 있다는 최대 확실성이 충족되는 경우, 및 30369에서 디바이스가 미리 결정된 차선 장벽들 내에서 이동하고 있는 경우, 및 30371에서 표면이 드라이빙가능한 경우, 방법(30263)은 셀이 점유되어 있을 확률을 업데이트하는 단계(30373) 및 더 많은 셀을 계속 처리하기 위해 복귀하는 단계를 포함할 수 있다. 30367에서 셀이 비어 있다는 최대 확실성이 도달되지 않는 경우, 또는 30369에서 디바이스가 미리 결정된 차선에서 이동하고 있지 않은 경우, 또는 30371에서 디바이스가 현재 이동하고 있는 모드에서 표면이 드라이빙가능하지 않은 경우, 방법(30263)은 로그오즈를 업데이트하지 않고 더 많은 셀을 고려하기 위해 복귀하는 단계를 포함할 수 있다. 디바이스가 표준 모드, 즉, 디바이스가 비교적 균일한 표면들을 내비게이팅할 수 있는 모드에 있고, 표면 분류가 표면이 비교적 균일하지 않다는 것을 나타낸다면, 방법(30263)은 로그오즈를 업데이트(30373)함으로써 셀이 점유되어 있을 확률을 증가시킴으로써 디바이스의 경로를 조정할 수 있다. 디바이스가 표준 모드에 있고, 표면 분류가 표면이 비교적 균일하다는 것을 나타낸다면, 방법(30263)은 로그오즈를 업데이트(30373)하는 것에 의해 셀이 점유되어 있을 확률을 감소시킴으로써 디바이스의 경로를 조정할 수 있다. 디바이스가 4-휠 모드에서 이동하고 있다면, 즉, 디바이스가 불균일한 지형을 내비게이팅할 수 있는 모드라면, 셀이 점유되어 있을 확률에 대한 조정들은 필요하지 않을 수 있다.Referring now to FIG. 3M , the
이제 도 4a를 참조하면, AV는 디바이스 구성, 예를 들어, 디바이스(42114A)에 도시된 구성 및 디바이스(42114B)에 도시된 구성과 연관될 수 있는 특정 모드에서 이동할 수 있다. 적어도 하나의 환경 인자 및 디바이스의 상황에 기초한, 디바이스의 구성의 실시간 제어를 위한 본 교시의 시스템은, 제한적인 것은 아니지만, 센서들, 이동 수단, 센서들 및 이동 수단과 동작가능하게 결합된 섀시―이동 수단은 모터들 및 전원에 의해 구동됨―, 센서들로부터 데이터를 수신하는 디바이스 프로세서, 및 이동 수단을 제어하는 파워 베이스 프로세서를 포함할 수 있다. 일부 구성들에서, 디바이스 프로세서는 환경 데이터를 수신하고, 환경 인자들을 결정하고, 환경 인자들 및 디바이스의 상황에 따라 구성 변경들을 결정하고, 구성 변경들을 파워 베이스 프로세서에 제공할 수 있다. 파워 베이스 프로세서는 이동 수단에 명령들을 발행하여 디바이스를 이리저리 이동시키고, 도로 표면 타입에 의해 요구될 때 디바이스를 물리적으로 재구성할 수 있다.Referring now to FIG. 4A , the AV may move in a particular mode that may be associated with a device configuration, eg, the configuration shown in
도 4a를 계속 참조하면, 환경 데이터를 수집하는 센서들은, 예를 들어, 카메라들, LIDAR, 레이더, 온도계들, 압력 센서들, 및 날씨 상태 센서들(이들 중 몇몇은 본 명세서에 기술됨)을 포함할 수 있지만, 이에 제한되지 않는다. 이러한 데이터 분류로부터, 디바이스 프로세서는 디바이스 구성이 변경될 수 있는 환경 인자들을 결정할 수 있다. 일부 구성들에서, 환경 인자들은, 예를 들어, 제한적인 것은 아니지만, 표면 타입, 표면 피처들, 및 표면 상태들과 같은 표면 인자들을 포함할 수 있다. 디바이스 프로세서는, 환경 인자들 및 디바이스의 현재 상황에 기초하여, 검출된 표면 타입의 횡단을 수용하기 위해 구성을 어떻게 변경할지를 실시간으로 결정할 수 있다.With continued reference to FIG. 4A , sensors collecting environmental data include, for example, cameras, LIDAR, radar, thermometers, pressure sensors, and weather condition sensors, some of which are described herein. may include, but are not limited to. From this data classification, the device processor can determine environmental factors in which the device configuration may change. In some configurations, environmental factors may include, for example, but not limited to surface factors such as surface type, surface features, and surface conditions. The device processor may determine in real time how to change the configuration to accommodate the traversal of the detected surface type, based on environmental factors and the current situation of the device.
도 4a를 계속 참조하면, 일부 구성들에서, 디바이스(42114A/B/C)(집합적으로 디바이스(42114)로 지칭됨)의 구성 변경은, 예를 들어, 이동 수단의 구성의 변경을 포함할 수 있다. 현재 모드 및 표면 타입에 의존할 수 있는 사용자 정보 디스플레이들 및 센서 제어들과 같은 다른 구성 변경들이 고려될 수 있다. 일부 구성들에서, 본 명세서에 설명된 바와 같이, 이동 수단은 섀시(42112)의 각 측에 2개씩인 적어도 4개의 구동 휠들(442101), 및 섀시(42112)와 동작가능하게 결합된 적어도 2개의 캐스터 휠들(42103)을 포함할 수 있다. 일부 구성들에서, 구동 휠들(442101)은 쌍들(42105)로 동작가능하게 결합될 수 있고, 여기서 각 쌍(42105)은 4개의 구동 휠들(442101)의 제1 구동 휠(42101A) 및 제2 구동 휠(42101B)을 포함할 수 있고, 쌍들(42105)은 섀시(42112)의 대향 측들에 각각 위치된다. 동작가능한 결합은 휠 클러스터 조립체(42110)를 포함할 수 있다. 일부 구성들에서, 파워 베이스 프로세서(41016)(도 4b)는 클러스터 조립체(42110)의 회전을 제어할 수 있다. 좌측 및 우측 휠 모터들(41017)(도 4b)은 섀시(42112)의 양 측 상의 휠들(442101)을 구동할 수 있다. 회전은 좌측 및 우측 휠 모터들(41017)(도 4b)을 상이한 레이트들로 구동함으로써 달성될 수 있다. 클러스터 모터들(41019)(도 4b)은 휠베이스를 전방/후방 방향으로 회전시킬 수 있다. 휠베이스의 회전은 화물이 구동 휠들(442101)로부터 독립적으로 회전하는 것을 허용할 수 있고, 반면에 예를 들어, 불연속적인 표면 피처들을 만날 때, 전방 구동 휠들(442101A)이 후방 구동 휠들(442101B)보다 높거나 낮아지는 것을 허용할 수 있다. 클러스터 조립체(42110)는 2개의 휠들의 각 쌍(42105)을 독립적으로 동작시킬 수 있고, 이에 의해 명령 시에 디바이스(42114)의 전방, 후방 및 회전 움직임을 제공할 수 있다. 클러스터 조립체(42110)는 쌍들(42105)을 위한 구조적 지지를 제공할 수 있다. 클러스터 조립체(42110)는 휠 구동 조립체들을 함께 회전시키기 위한 기계적 전력을 제공할 수 있어, 클러스터 조립체 회전, 예를 들어, 이에 한정되는 것은 아니지만, 불연속적인 표면 피처 클라이밍, 다양한 표면 타입들 및 불균일한 지형에 의존하는 기능들을 허용한다. 클러스터링된 휠들의 동작에 대한 추가의 상세는 본 명세서에 그 전체가 참조로 포함되는, 2018년 7월 13일자로 출원된, Mobility Device라는 명칭의 미국 특허 출원 제16,035,205호, 대리인 문서 번호 X80에서 발견될 수 있다.With continued reference to FIG. 4A , in some configurations, a configuration change of
도 4a를 계속 참조하면, 디바이스(42114)의 구성은 디바이스(42114)의 모드(41033)(도 4b)와 연관될 수 있지만, 그와 연관되지 않을 수 있다. 디바이스(42114)는 몇몇 모드들(41033)(도 4b)에서 동작할 수 있다. 표준 모드(10100-1)(도 5e)에서, 디바이스(42114B)는 구동 휠들(442101B)들 중 2개 및 캐스터 휠들(42103)들 중 2개 상에서 동작할 수 있다. 표준 모드(10100-1)(도 5e)는, 예를 들어, 실내 환경들, 보도들, 및 포장에 한정되지 않지만, 비교적 견고한 레벨 표면들 상에서 회전 성능 및 이동성을 제공할 수 있다. 향상된 모드(10100-2)(도 5e), 또는 4-휠 모드에서, 디바이스(42114A/C)는 구동 휠들(442101A/B)들 중 4개에 명령할 수 있고, 온보드 센서들을 통해 능동적으로 안정화될 수 있고, 섀시(42112), 캐스터들(42103), 및 화물을 상승 및/또는 재배향할 수 있다. 4-휠 모드(10100-2)(도 5e)는 다양한 환경에서 이동성을 제공할 수 있어, 디바이스(42114A/C)가 가파른 경사로 위로 그리고 부드럽고 불균일한 지형 위로 이동할 수 있게 한다. 4-휠 모드(10100-2)(도 5e)에서, 구동 휠(442101A/B)들 중 4개 모두가 전개될 수 있고 캐스터 휠(42103)이 후퇴될 수 있다. 클러스터(42110)의 회전은 불균일한 지형 상에서의 동작을 허용할 수 있고, 구동 휠들(442101A/B)은 불연속적인 표면 피처들 위로 그리고 그 위에서 구동할 수 있다. 이 기능은 매우 다양한 실외 환경에서 이동성을 디바이스(42114A/C)에 제공할 수 있다. 디바이스(42114B)는 견고하고 안정되지만 젖은 실외 표면들 상에서 동작할 수 있다. 서리 융기(frost heaves) 및 다른 자연 현상들은 실외 표면들을 열화시켜, 균열 및 느슨한 재료를 생성할 수 있다. 4-휠 모드(10100-2)(도 5e)에서, 디바이스(42114A/C)는 이들 열화된 표면들 상에서 동작할 수 있다. 모드들(41033)(도 4b)은 그 전체가 본 명세서에 참조로 포함되는, 2003년 6월 3일자로 발행된 Control System and Method라는 명칭의 미국 특허 제6,571,892호('892)에 상세히 설명되어 있다.With continued reference to FIG. 4A , the configuration of
이제 도 4b를 참조하면, 시스템(41000)은 센서들(41031)로부터의 입력들을 처리하고, 휠 모터들(41017)에 대한 명령들을 생성하여 휠들(442101)(도 4a)을 구동하고, 클러스터들(42110)(도 4a)을 구동하기 위해 클러스터 모터들(41019)에 대한 명령들을 생성함으로써, 디바이스(42114)(도 4a)를 구동할 수 있다. 시스템(41000)은 디바이스 프로세서(41014) 및 파워 베이스 프로세서(41016)를 포함할 수 있지만, 이에 제한되지 않는다. 디바이스 프로세서(41014)는 센서들(41031)로부터 환경 데이터(41022)를 수신 및 처리하고, 구성 정보(40125)를 파워 베이스 프로세서(41016)에 제공할 수 있다. 일부 구성들에서, 디바이스 프로세서(41014)는 센서들(41031)로부터 환경 데이터(41022)를 수신 및 처리할 수 있는 센서 프로세서(41021)를 포함할 수 있다. 센서들(41031)은, 본 명세서에 설명된 바와 같이, 카메라들을 포함할 수 있지만, 이에 제한되지 않는다. 이러한 데이터로부터, 예를 들어, 디바이스(42114)(도 4a)에 의해 횡단되고 있는 드라이빙 표면에 관한 정보가 누적 및 처리될 수 있다. 일부 구성들에서, 드라이빙 표면 정보는 실시간으로 처리될 수 있다. 디바이스 프로세서(41014)는, 예를 들어, 디바이스(42114)(도 4a)에 의해 횡단되고 있는 환경 데이터(41022)로부터 표면 타입(40121)을 결정할 수 있는 구성 프로세서(41023)를 포함할 수 있다. 구성 프로세서(41023)는, 예를 들어, 드라이빙 표면 분류 계층, 드라이빙 표면 신뢰 계층, 및 환경 데이터(41022)로부터 점유 계층을 생성할 수 있는 예를 들어, 드라이빙 표면 프로세서(41029)(도 4c)를 포함할 수 있다. 이러한 데이터는 파워 베이스 프로세서(41016)에 의해 이동 명령들(40127) 및 모터 명령들(40128)을 생성하기 위해 이용될 수 있고, 전역 점유 그리드 프로세서(41025)에 의해 본 명세서에 설명된 바와 같이, 경로 계획에 이용될 수 있는 점유 그리드를 업데이트하기 위해 이용될 수 있다. 구성(40125)은 표면 타입(40121)에 적어도 부분적으로 기초할 수 있다. 표면 타입(40121) 및 모드(41033)는 점유 그리드 정보(41022)를 적어도 부분적으로 결정하는데 이용될 수 있고, 점유 그리드 정보(41022)는 점유 그리드 내의 셀이 점유될 확률을 포함할 수 있다. 점유 그리드는, 적어도 부분적으로, 디바이스(42114)(도 4a)가 취할 수 있는 경로의 결정을 가능하게 할 수 있다.Referring now to FIG. 4B ,
도 4b를 계속 참조하면, 파워 베이스 프로세서(41016)는 디바이스 프로세서(41014)로부터 구성 정보(40125)를 수신하고, 다른 정보, 예를 들어, 경로 정보와 함께 구성 정보(40125)를 처리할 수 있다. 파워 베이스 프로세서(41016)는 구성 정보(40125)에 적어도 기초하여 이동 명령들(40127)을 생성하고, 이동 명령들(40127)을 모터 구동 프로세서(40326)에 제공할 수 있는 제어 프로세서(40325)를 포함할 수 있다. 모터 구동 프로세서(40326)는 디바이스(42114)(도 4a)를 유도하고 이동시킬 수 있는 모터 명령들(40128)을 생성할 수 있다. 구체적으로, 모터 구동 프로세서(40326)는 휠 모터들(41017)을 구동할 수 있는 모터 명령들(40128)을 생성할 수 있고, 클러스터 모터들(41019)를 구동할 수 있는 모터 명령들(40128)을 생성할 수 있다.With continued reference to FIG. 4B , the power base processor 41016 may receive the configuration information 40125 from the device processor 41014 and process the configuration information 40125 along with other information, for example, path information. . The power base processor 41016 includes a
이제 도 4c를 참조하면, 본 교시의 실시간 표면 검출은 드라이빙 표면 프로세서(41029)를 포함할 수 있는 구성 프로세서(41023)를 포함할 수 있지만, 이에 제한되는 것은 아니다. 드라이빙 표면 프로세서(41029)는 디바이스(42114)(도 4a)가 내비게이팅하고 있는 드라이빙 표면의 특성들을 결정할 수 있다. 특성들은 디바이스(42114)(도 4a)의 미래 구성을 결정하는데 이용될 수 있다. 드라이빙 표면 프로세서(41029)는 신경망 프로세서(40207), 데이터 변환들(40215, 40219, 40239), 계층 프로세서(40241) 및 점유 그리드 프로세서(40242)를 포함할 수 있지만, 이에 제한되는 것은 아니다. 이들 구성요소는 함께 디바이스(42114)(도 4a)의 구성의 변경을 지시할 수 있는 정보를 생성할 수 있고 디바이스(42114)(도 4a)의 이동을 위한 경로 계획을 알릴 수 있는 점유 그리드(40244)(도 4c)의 수정을 가능하게 할 수 있다.Referring now to FIG. 4C , real-time surface detection of the present teachings may include, but is not limited to, a
이제 도 4c 및 도 4d를 참조하면, 신경망 프로세서(40207)는 센서들(41031)(도 4b)에 의해 수집된 데이터의 각각의 포인트에 대해, 포인트가 표현할 가능성이 있는 표면의 타입을 나타낼 수 있는 훈련된 신경망에 환경 데이터(41022)(도 4b)를 적용할 수 있다. 환경 데이터(41022)(도 4b)는 카메라 이미지들(40202)로서 수신될 수 있지만, 이에 제한되는 것은 아니며, 카메라들은 카메라 특성들(40204)과 연관될 수 있다. 카메라 이미지들(40202)은 X-해상도(40205)(도 4d) 및 Y-해상도(40204)(도 4d)를 갖는 포인트들(40201)의 2D 그리드들을 포함할 수 있다. 일부 구성들에서, 카메라 이미지들(40202)은 RGB-D 이미지들을 포함할 수 있고, X-해상도(40205)(도 4d)는 40,640 픽셀을 포함할 수 있고, Y-해상도(40204)(도 4d)는 40,480 픽셀을 포함할 수 있다. 일부 구성들에서, 카메라 이미지들(40202)은 선택된 신경망의 요건들에 따라 포맷된 이미지들로 변환될 수 있다. 일부 구성들에서, 데이터는 정규화되고, 스케일링되고, 2D로부터 1D로 변환될 수 있고, 이는 신경망의 처리 효율을 향상시킬 수 있다. 신경망은 RGB-D 카메라 이미지들로 훈련하는 것을 포함하지만 이에 제한되는 것은 아닌 다수의 방식으로 훈련될 수 있다. 일부 구성들에서, 신경망 파일(40209)(도 4d)로 표현된 훈련된 신경망은 훈련된 신경망을 실행하는 프로세서에 대한 직접 접속을 통해 또는 예를 들어 통신 채널을 통해 신경망 프로세서(40207)에 이용가능하게 될 수 있다. 일부 구성들에서, 신경망 프로세서(40207)는 환경 데이터(41022)(도 4b) 내의 표면 타입들(40121)(도 4c)을 식별하기 위해 훈련된 신경망 파일(40209)(도 4d)을 이용할 수 있다. 일부 구성들에서, 표면 타입들(40121)(도 4c)은 드라이빙 불가능, 하드 드라이빙 가능, 소프트 드라이빙 가능, 및 커브를 포함할 수 있지만, 이들에 제한되는 것은 아니다. 일부 구성들에서, 표면 타입들(40121)(도 4c)은 드라이빙 불가능/배경, 아스팔트, 콘크리트, 브릭, 패킹된 먼지, 목재 플랭크, 자갈/작은 돌, 풀, 멀치(mulch), 모래, 커브, 고체 금속, 금속 그레이트, 촉각 포장재, 눈/얼음, 및 열차 트랙들을 포함할 수 있지만, 이에 제한되는 것은 아닐 수 있다. 신경망 처리의 결과는 X-해상도(40205) 및 Y-해상도(40203)를 갖는 포인트들(40213)의 표면 분류 그리드(40303), 및 센터(40211)를 포함할 수 있다. 표면 분류 그리드(40303)에서의 각각의 포인트(40213)는 표면 타입들(40121)(도 4c) 중 특정한 것일 가능성과 연관될 수 있다.Referring now to FIGS. 4C and 4D , the
도 4c 및 도 4d를 계속 참조하면, 드라이빙 표면 프로세서(41029)(도 4c)는 2D 카메라 프레임에서의 2D 표면 분류 그리드(40303)(도 4d)로부터 카메라에 의해 보여지는 바와 같은 3D 실세계 좌표들에서의 3D 이미지 큐브(40307)(도 4d)로 디프로젝트할 수 있는 2D 대 3D 변환(40215)을 포함할 수 있다. 디프로젝션은 2D 데이터의 3D 특성들을 복구할 수 있고, RGB-D 카메라로부터 3D 카메라 프레임(40305)(도 4c)으로 2D 이미지를 변환할 수 있다. 큐브(40307)(도 4d) 내의 포인트들(40233)(도 4d)은 각각 표면 타입들(40121)(도 4c) 중 특정한 하나, 및 심도 좌표는 물론 X/Y 좌표들일 가능성과 연관될 수 있다. 포인트 큐브(40307)(도 4d)의 치수는, 예를 들어, 초점 길이 x, 초점 길이 y, 및 투영 중심(40225)과 같은, 예를 들어, 카메라 특성들(40204)(도 4c)에 따라 한정될 수 있지만, 이에 제한되는 것은 아니다. 예를 들어, 카메라 특성들(40204)은 카메라가 신뢰성 있게 투영할 수 있는 최대 범위를 포함할 수 있다. 또한, 이미지(40202)와 간섭할 수 있는 디바이스(42114)(도 4a)의 특징들이 있을 수 있다. 예를 들어, 캐스터들(42103)(도 4a)은 카메라(들)(40227)(도 4d)의 뷰와 간섭할 수 있다. 이들 인자들은 포인트 큐브(40307)(도 4d)에서의 포인트들의 수를 제한할 수 있다. 일부 구성들에서, 카메라(들)(40227)(도 4d)는 약 6 미터를 벗어나서 신뢰성 있게 투영할 수 없고, 이는 카메라(40227)(도 4d)의 범위의 상한을 나타낼 수 있고, 포인트 큐브들(40307)(도 4d)에서의 포인트들의 수를 제한할 수 있다. 일부 구성들에서, 디바이스(42114)(도 4a)의 특징들은 카메라(40227)(도 4d)의 범위의 최소 한계서 작용할 수 있다. 예를 들어, 캐스터들(42103)(도 4a)의 존재는 일부 구성들에서, 대략 1 미터로 설정될 수 있는 최소 한계를 암시할 수 있다. 일부 구성들에서, 포인트 큐브들(40307)(도 4d)에서의 포인트들은 카메라(40227)(도 4d)로부터 1 미터 이상 그리고 카메라(40227)(도 4d)로부터 6 미터 이하인 포인트들로 제한될 수 있다.With continued reference to FIGS. 4C and 4D , the driving surface processor 41029 ( FIG. 4C ) in 3D real-world coordinates as seen by the camera from the 2D surface classification grid 40303 ( FIG. 4D ) in the 2D camera frame. 2D to 3D transform 40215 that can be deprojected into 3D image cube 40307 (FIG. 4D) of De-projection may recover 3D properties of 2D data, and may convert a 2D image from an RGB-D camera to a 3D camera frame 40305 (FIG. 4C). Points 40233 ( FIG. 4D ) in cube 40307 ( FIG. 4D ) may each be associated with a specific one of surface types 40121 ( FIG. 4C ), and depth coordinates as well as possibly X/Y coordinates. . The dimensions of the point cube 40307 ( FIG. 4D ) depend, for example, on camera characteristics 40204 ( FIG. 4C ), such as, for example, focal length x, focal length y, and
도 4c 및 도 4d를 계속 참조하면, 드라이빙 표면 프로세서(41029)(도 4c)는 포인트들의 3D 큐브를 디바이스(42114)(도 4a)와 연관된 좌표들, 즉, 베이스링크 프레임(40309)(도 4c)으로 변환할 수 있는 베이스링크 변환(40219)을 포함할 수 있다. 베이스링크 변환(40219)은 큐브(40307)(도 4d)에서의 3D 데이터 포인트들(40223)(도 4d)을 디바이스(42114)(도 4a)의 베이스에 Z 차원이 설정되는 큐브(40308)(도 4d)에서의 포인트들(40233)(도 4d)로 변환할 수 있다. 드라이빙 표면 프로세서(41029)(도 4c)는 큐브(40308)(도 4d)에서의 포인트들(40233)(도 4d)을 큐브(40311)(도 4d)에서의 포인트들(40237)(도 4d)로서 점유 그리드(40244)(도 4d) 상에 투영할 수 있는 OG 프렙(prep)(40239)을 포함할 수 있다. 계층 프로세서(40241)는 포인트들(40237)(도 4d)을, 포인트들(40237)(도 4d)에 의해 표현되는 데이터에 따라, 다양한 계층들(40312)(도 4c)로 평탄화할 수 있다. 일부 구성들에서, 계층 프로세서(40241)는 스칼라 값을 계층들(40312)(도 4c)에 적용할 수 있다. 일부 구성들에서, 계층들(40312)(도 4c)은 점유 계층(40243)의 확률, 신경망 프로세서(40207)에 의해 결정되는 바와 같은 표면 분류 계층(40245)(도 4d), 및 표면 타입 신뢰 계층(40247)(도 4d)을 포함할 수 있다. 일부 구성들에서, 표면 타입 신뢰 계층(40247)(도 4d)은 신경망 프로세서(40207)로부터의 클래스 스코어들을, 클래스 스코어들을 log(클래스 스코어)/Σ log(각각의 클래스)로서 출력 클래스들에 대한 확률 분포로 정규화함으로써 결정될 수 있는 스코어들로 변환함으로써 결정될 수 있다. 일부 구성들에서, 하나 이상의 계층은 드라이빙 불가능한 표면의 확률을 제공하는 계층에 의해 대체되거나 증대될 수 있다.With continued reference to FIGS. 4C and 4D , the driving surface processor 41029 ( FIG. 4C ) generates a 3D cube of points with coordinates associated with the device 42114 ( FIG. 4A ), ie, the baselink frame 40309 ( FIG. 4C ). ) may include a
도 4c 및 도 4d를 계속 참조하면, 일부 구성들에서, 점유 계층(40243)에서의 확률 값은 로그오즈(로그 오즈 -> ln(p/(1-p)) 값으로서 표현될 수 있다. 일부 구성들에서, 점유 계층(40243)에서의 확률 값은 모드(41033)(도 4b)와 표면 타입(40121)(도 4b)의 조합에 적어도 기초할 수 있다. 일부 구성들에서, 점유 계층(40243)에서의 미리 선택된 확률 값들은, 예를 들어, 제한적인 것은 아니지만, (1) 표면 타입(40121)(도 4a)이 하드하고 드라이빙가능할 때, 및 디바이스(42114)(도 4a)가 미리 선택된 세트의 모드들(41033)(도 4b)에 있을 때, 또는 (2) 표면 타입(40121)(도 4a)이 소프트하고 드라이빙가능할 때, 및 디바이스(42114)(도 4a)가, 예를 들어, 표준 모드와 같은 특정한 미리 선택된 모드에 있을 때, 또는 (3) 표면 타입(40121)(도 4a)이 소프트하고 드라이빙가능할 때, 및 디바이스(42114)(도 4a)가, 예를 들어, 4-휠 모드와 같은 특정한 미리 선택된 모드에 있을 때, 또는 (4) 표면 타입(40121)(도 4a)이 불연속적일 때, 및 디바이스(42114)(도 4a)가, 예를 들어, 표준 모드와 같은 특정한 미리 선택된 모드에 있을 때, 또는 (5) 표면 타입(40121)(도 4a)이 불연속적일 때, 및 디바이스(42114)(도 4a)가 4-휠 모드와 같은 특정한 미리 선택된 모드에 있을 때, 또는 (6) 표면 타입(40121)(도 4a)이 드라이빙 불가능할 때, 및 디바이스(42114)(도 4a)가 미리 선택된 세트의 모드들(41033)(도 4b)에 있을 때와 같은 상황들을 커버하도록 선택될 수 있다. 일부 구성들에서, 확률 값들은 표 I에 제시된 것들을 포함할 수 있지만, 이것으로 제한되지 않는다. 일부 구성들에서, 신경망-예측 확률은, 필요하다면, 튜닝될 수 있고, 표 I에 열거된 확률들을 대체할 수 있다.With continued reference to FIGS. 4C and 4D , in some configurations, the probability value in the occupying
표 I.Table I.
도 4c를 다시 참조하면, 점유 그리드 프로세서(40242)는, 예를 들어, 제한적인 것은 아니지만, 표면 타입(40121) 및 점유 그리드 정보(41022)와 같은 점유 그리드(40244)의 확률 값들에 영향을 미칠 수 있는 파라미터들을 전역 점유 그리드 프로세서(41025)에 실시간으로 제공할 수 있다. 예를 들어, 제한적인 것은 아니지만, 모드(41033) 및 표면 타입(40121)과 같은 구성 정보(40125)(도 4b)는 파워 베이스 프로세서(41016)(도 4b)에 제공될 수 있다. 파워 베이스 프로세서(41016)(도 4b)는, 구성 정보(40125)(도 4b)에 적어도 기초하여, 디바이스(42114)(도 4a)의 구성을 설정할 수 있는 모터 명령들(40128)(도 4b)을 결정할 수 있다.Referring back to FIG. 4C , the
이제 도 4e 및 도 4f를 참조하면, 디바이스(42100A)는 표준 모드에서 동작하도록 본 교시에 따라 구성될 수 있다. 표준 모드에서, 캐스터들(42103) 및 제2 구동 휠(42101B)은 디바이스(42100A)가 그 경로를 내비게이팅할 때 지면 상에 놓일 수 있다. 제1 구동 휠(42101A)은 미리 선택된 양(42102)(도 4f)만큼 상승될 수 있고 드라이빙 표면을 클리어할 수 있다. 디바이스(42100A)는 비교적 견고한 레벨 표면들 상에서 성공적으로 내비게이팅할 수 있다. 표준 모드에서 드라이빙할 때, 점유 그리드(40244)(도 4c)는 표면 타입 제한을 반영할 수 있고(표 I 참조), 따라서 호환가능한 모드의 선택을 가능하게 할 수 있거나, 표면 타입 및 현재 모드에 기초한 구성 변경을 가능하게 할 수 있다.Referring now to FIGS. 4E and 4F ,
이제 도 4g 내지 도 4j를 참조하면, 디바이스(42100B/C)는 본 교시에 따라 4-휠 모드에서 동작하도록 구성될 수 있다. 4-휠 모드에서의 하나의 구성에서, 제1 구동 휠(42101A) 및 제2 구동 휠(42101B)은 디바이스(42100A)가 그 경로를 내비게이팅할 때 지면 상에 놓일 수 있다. 캐스터들(42103)은 후퇴될 수 있고 미리 선택된 양(42104)(도 4h)만큼 드라이빙 표면을 클리어할 수 있다. 4-휠 모드에서의 다른 구성에서, 제1 구동 휠(42101A) 및 제2 구동 휠(42101B)은 디바이스(42100A)가 그 경로를 내비게이팅할 때 지면 상에 실질적으로 놓일 수 있다. 캐스터들(42103)은 후퇴될 수 있고 섀시(42111)는, 예를 들어, 불연속적인 표면을 수용하기 위해 회전될 수 있다(따라서, 캐스터들(42103)을 지면으로부터 더 멀리 이동시킨다). 이 구성에서, 캐스터들(42103)은 미리 선택된 양(42108)(도 1j)만큼 드라이빙 표면을 클리어할 수 있다. 디바이스들(42100A/C)은 소프트 표면들 및 불연속적인 표면들을 포함하는 다양한 표면들 상에서 성공적으로 내비게이팅할 수 있다. 4-휠 모드에서의 다른 구성에서, 제2 구동 휠(42101B)은 디바이스(42100C)(도 1j)가 그 경로를 내비게이팅할 때 제1 구동 휠(42101A)이 상승될 수 있는 동안 디바이스(42100A)로서 지면 상에 놓일 수 있다. 캐스터(42103)는 후퇴될 수 있고 섀시(42111)는, 예를 들어, 불연속적인 표면을 수용하기 위해 회전될 수 있다(따라서, 캐스터들(42103)을 지면으로부터 더 멀리 이동시킨다). 4-휠 모드에서 드라이빙할 때, 점유 그리드(40244)(도 4c)는 표면 타입(표 I 참조)을 반영할 수 있고, 따라서 호환가능한 모드의 선택을 가능하게 할 수 있거나, 표면 타입 및 현재 모드에 기초한 구성 변경을 가능하게 할 수 있다.Referring now to FIGS. 4G-4J ,
이제 도 4k를 참조하면, 예를 들어, 제한적인 것은 아니지만, 적어도 하나의 환경 인자 및 디바이스 구성에 기초하여 경로를 이동하는, AV와 같은 디바이스의 디바이스 구성의 실시간 제어를 위한 방법(40150)은, 이에 제한되는 것은 아니지만, 센서 데이터를 수신하는 단계(40151), 센서 데이터에 적어도 기초하여 표면 타입을 결정하는 단계(40153), 및 표면 타입 및 현재 디바이스 구성에 적어도 기초하여 현재 모드를 결정하는 단계(40155)를 포함할 수 있다. 방법(40150)은 현재 모드 및 표면 타입에 적어도 기초하여 다음 디바이스 구성을 결정하는 단계(40157), 다음 디바이스 구성에 적어도 기초하여 이동 명령들을 결정하는 단계(40159), 및 이동 명령들에 적어도 기초하여 현재 디바이스 구성을 다음 디바이스 구성으로 변경하는 단계(40161)를 포함할 수 있다.Referring now to FIG. 4K , a
이제 주로 도 5a를 참조하면, AV의 경로에 나타나는 물체에 응답하기 위해, 주석달린 포인트 데이터(10379)(도 5b)가 디바이스 제어기(10111)에 제공될 수 있다. AV(10101)(도 1a)에게 경로를 이동하라고 지시하는데 이용될 수 있는 루트 정보에 대한 기초일 수 있는 주석달린 포인트 데이터(10379)(도 5b)는, 제한적인 것은 아니지만, 내비게이팅가능 에지들, 예를 들어, 제한적인 것은 아니지만, 매핑된 궤적(10413/10415)(도 5d)과 같은 매핑된 궤적, 및 예를 들어, 제한적인 것은 아니지만, SDSF들(10377)(도 5c)과 같은 라벨링된 피처들을 포함할 수 있다. 매핑된 궤적(10413/10415)(도 5c)은 루트 공간의 에지들 및 루트 공간의 부분들에 할당된 초기 가중치의 그래프를 포함할 수 있다. 에지들의 그래프는, 예를 들어, 제한적인 것은 아니지만, 방향성 및 용량과 같은 특성들을 포함할 수 있고, 에지들은 이러한 특성들에 따라 카테고리화될 수 있다. 매핑된 궤적(10413/10415)(도 5c)은 루트 공간의 표면들과 연관된 비용 수정자 및 에지들과 연관된 드라이빙 모드를 포함할 수 있다. 드라이빙 모드는, 제한적인 것은 아니지만, 경로 추종 및 SDSF 클라이밍을 포함할 수 있다. 다른 모드들은, 예를 들어, 제한적인 것은 아니지만, 자율, 매핑 및 개입 대기와 같은 동작 모드들을 포함할 수 있다. 궁극적으로, 경로는 보다 낮은 비용 수정자들에 적어도 기초하여 선택될 수 있다. 매핑된 궤적(10413/10415)(도 5c)으로부터 비교적 먼 토폴로지는 보다 높은 비용 수정자들을 가질 수 있고, 경로를 형성할 때 관심이 덜할 수 있다. AV(10101)(도 1a)가 동작하면서, 초기 가중치들은 조정될 수 있고, 가능하게는 경로의 수정을 야기한다. 조정된 가중치들은 에지/가중치 그래프(10381)(도 5b)를 조정하는데 이용될 수 있고, 현재 드라이빙 모드, 현재 표면 및 에지 카테고리에 적어도 기초할 수 있다.Referring now primarily to FIG. 5A , annotated point data 10379 ( FIG. 5B ) may be provided to the
도 5a를 계속 참조하면, 디바이스 제어기(10111)는 임의의 피처들의 편심들(eccentricities)을 경로 내로 통합하는 것과 관련된 특정 작업들을 수행할 수 있는 피처 프로세서를 포함할 수 있다. 일부 구성들에서, 피처 프로세서는, 제한적인 것은 아니지만, SDSF 프로세서(10118)를 포함할 수 있다. 일부 구성들에서, 디바이스 제어기(10111)는, 제한적인 것은 아니지만, 본 명세서에서 각각 설명되는 SDSF 프로세서(10118), 센서 프로세서(10703), 모드 제어기(10122) 및 베이스 제어기(10114)를 포함할 수 있다. SDSF 프로세서(10118), 센서 프로세서(10703) 및 모드 제어기(10122)는 베이스 제어기(10114)에 입력을 제공할 수 있다.With continued reference to FIG. 5A , the
도 5a를 계속 참조하면, 베이스 제어기(10114)는, 모드 제어기(10122), SDSF 프로세서(10118), 및 센서 프로세서(10703)에 의해 제공된 입력에 적어도 기초하여, 파워 베이스(10112)가 에지/가중치 그래프(10381)(도 5b)에 적어도 기초하여 베이스 제어기(10114)에 의해 결정된 경로 상에서 AV(10101)(도 1a)를 드라이빙하는데 이용할 수 있는 정보를 결정할 수 있다. 일부 구성들에서, 베이스 제어기(10114)는 AV(10101)(도 1a)가 시작 포인트로부터 목적지까지의 미리 결정된 경로를 따를 수 있는 것을 보장할 수 있고, 외부 및/또는 내부 조건들에 적어도 기초하여 미리 결정된 경로를 수정할 수 있다. 일부 구성들에서, 외부 조건들은 AV(10101)(도 1a)에 의해 드라이빙되는 경로에서의 또는 그 근처의 정지등들, SDSF들, 및 장애물들을 포함할 수 있지만, 이에 제한되는 것은 아니다. 일부 구성들에서, 내부 조건들은 AV(10101)(도 1a)가 외부 조건들에 행하는 응답을 반영하는 모드 전이들을 포함할 수 있지만, 이에 제한되는 것은 아니다. 디바이스 제어기(10111)는 외부 및 내부 조건들에 적어도 기초하여 파워 베이스(10112)에 전송할 명령들을 결정할 수 있다. 명령들은 AV(10101)(도 1a)에게 명령된 방향으로 명령된 속도에서 이동하도록 지시할 수 있는 속도 및 방향 명령들을 포함할 수 있지만, 이에 제한되는 것은 아니다. 다른 명령들은, 예를 들어, SDSF 클라이밍과 같은 피처 응답을 가능하게 하는 예를 들어, 명령들의 그룹들을 포함할 수 있다. 베이스 제어기(10114)는, 예를 들어, IPOPT(Interior Point Optimizer) 대규모 비선형 최적화(https://projects.coin-or.org/Ipopt)를 포함하지만, 이에 제한되는 것은 아닌 종래들의 방법에 의해 경로의 웨이포인트들 사이의 원하는 속도를 결정할 수 있다. 베이스 제어기(10114)는, 예를 들어, Dykstra의 알고리즘, A* 검색 알고리즘, 또는 Breadth-first 검색 알고리즘에 기초한 기술과 같은, 그러나 이에 제한되는 것은 아닌 종래의 기술에 적어도 기초하여 원하는 경로를 결정할 수 있다. 베이스 제어기(10114)는 장애물 검출이 수행될 수 있는 영역을 설정하기 위해 매핑된 궤적(10413/10415)(도 5c) 주위에 박스를 형성할 수 있다. 페이로드 캐리어의 높이는, 조정가능할 때, 지향된 속도에 적어도 부분적으로 기초하여 조정될 수 있다.With continued reference to FIG. 5A , the
도 5a를 계속 참조하면, 베이스 제어기(10114)는 속도 및 방향 결정들을 모터 명령들로 변환할 수 있다. 예를 들어, 이에 제한되는 것은 아니지만, 커브 또는 슬로프(slope)와 같은 SDSF에 직면할 때, 베이스 제어기(10114)는, SDSF 클라이밍 모드에서, 페이로드 캐리어(10173)(도 1a)를 상승시키고, AV(10101)(도 1a)를 SDSF와 대략 90° 각도로 정렬하고, 속도를 비교적 낮은 레벨로 감소시키도록 파워 베이스(10112)에 지시할 수 있다. AV(10101)(도 1a)가 실질적으로 불연속적인 표면을 클라이밍할 때, 베이스 제어기(10114)는 증가된 토크가 AV(10101)(도 1a)를 경사 위로 이동시키기 위해 요구되기 때문에 속도가 증가되는 클라이밍 위상으로 파워 베이스(10112)가 전이하도록 지시할 수 있다. AV(10101)(도 1a)가 비교적 레벨 표면과 직면할 때, 베이스 제어기(10114)는 SDSF의 임의의 평평한 부분의 최상부에 남아 있도록 속도를 감소시킬 수 있다. 평평한 부분과 연관된 감소 램프의 경우에, AV(10101)(도 1a)가 실질적으로 불연속적인 표면을 하강하기 시작하고, 두 휠들이 감소 램프 상에 있을 때, 베이스 제어기(10114)는 속도가 증가하도록 허용할 수 있다. 예를 들어, 이에 제한되는 것은 아니지만, 슬로프와 같은 SDSF에 직면할 때, 슬로프는 구조로서 식별 및 처리될 수 있다. 예를 들어, 구조의 피처들은 램프의 미리 선택된 크기를 포함할 수 있다. 램프는 대략 30°의 경사를 포함할 수 있고, 선택적으로 이에 제한되는 것은 아니지만 안정기(plateau)의 양 측에 있을 수 있다. 디바이스 제어기(10111)(도 5a)는 인지된 피처의 각도를 예상된 슬로프 램프 각도와 비교함으로써 장애물과 슬로프 사이를 서로 구별할 수 있고, 여기서 각도는 센서 프로세서(10703)(도 5a)로부터 수신될 수 있다.With continued reference to FIG. 5A , the
이제 주로 도 5b를 참조하면, SDSF 프로세서(10118)는 주석달린 포인트 데이터(10379)에 표현된 다각형들의 메시에 의해 형성된 드라이빙가능 표면들의 블록들로부터, AV(10101)(도 1a)에 의한 횡단을 위한 경로를 생성하기 위해 이용될 수 있는 내비게이팅가능 에지들을 위치결정할 수 있다. SDSF 라인(10377)(도 5c) 주위에 미리 선택된 크기의 영역을 형성할 수 있는 SDSF 버퍼(10407)(도 5c) 내에서, 내비게이팅가능 에지들은 주어진 SDSF 횡단을 위한 특수 처리를 위한 준비에서 지워질 수 있다(도 5d 참조). 세그먼트(10409)(도 5c)와 같은 폐쇄형 라인 세그먼트들은 이전에 결정된 SDSF 포인트들(10789)(도 1n)의 쌍들 사이에서 SDSF 버퍼(10407)(도 5c)를 이등분하도록 그려질 수 있다. 일부 구성들에서, 폐쇄형 라인 세그먼트가 SDSF 횡단을 위한 후보로서 간주되기 위해, 세그먼트 단부들(10411)(도 5c)은 드라이빙가능 표면의 방해받지 않는 부분에 속할 수 있고, AV(10101)(도 1a)가 라인 세그먼트들을 따라 인접한 SDSF 포인트들(10789)(도 1n) 사이에서 이동하기에 충분한 공간이 있을 수 있고, SDSF 포인트들(10789)(도 1n) 사이의 영역은 드라이빙가능 표면일 수 있다. 세그먼트 단부들(10411)(도 5c)은 하부 토폴로지에 접속되어, 정점들 및 드라이빙가능 에지들을 형성할 수 있다. 예를 들어, 횡단 기준들을 충족하는 라인 세그먼트들(10461, 10463, 10465, 및 10467)(도 5c)은 도 5d에서 토폴로지의 일부로서 도시된다. 대조적으로, 라인 세그먼트(10409)(도 5c)는 적어도 기준들을 충족시키지 않는데, 그 이유는 세그먼트 단부(10411)(도 5c)가 드라이빙가능 표면 상에 속하지 않기 때문이다. 중첩하는 SDSF 버퍼들(10506)(도 5c)은 중첩된 SDSF 버퍼들(10506)(도 5c) 내의 SDSF들의 SDSF 횡단에 대해 가중할 수 있는 SDSF 불연속성을 표시할 수 있다. SDSF 라인(10377)(도 5c)은 평활화될 수 있고, SDSF 포인트들(10789)(도 1n)의 위치들은 이들이 미리 선택된 거리만큼 떨어지도록 조정될 수 있고, 미리 선택된 거리는 AV(10101)(도 1a)의 풋프린트에 적어도 기초한다.Referring now primarily to FIG. 5B ,
도 5b를 계속 참조하면, SDSF 프로세서(10118)는 주석달린 포인트 데이터(10379)를 SDSF 횡단을 위한 토폴로지 수정들을 포함하는 에지/가중치 그래프(10381)로 변환할 수 있다. SDSF 프로세서(10118)는 제7 프로세서(10601), 제8 프로세서(10702), 제9 프로세서(10603), 및 제10 프로세서(10605)를 포함할 수 있다. 제7 프로세서(10601)는 주석달린 포인트 데이터(10379)에서의 포인트들의 좌표들을 전역 좌표계로 변환하여, GPS 좌표들과의 호환성을 달성하고, GPS-호환가능 데이터세트(10602)를 생성할 수 있다. 제7 프로세서(10601)는, 예를 들어, 아핀 행렬 변환 및 PostGIS 변환과 같은, 그러나 이에 제한되지 않는 종래의 프로세스들을 이용하여, GPS-호환가능 데이터세트(10602)를 생성할 수 있다. WGS(World Geodetic System)는 지구의 곡률을 고려하므로 표준 좌표계로서 이용될 수 있다. 맵은 UTM(Universal Transverse Mercator) 좌표계에 저장될 수 있고, 특정 어드레스들이 위치되는 곳을 찾을 필요가 있을 때 WGS로 스위칭될 수 있다.With continued reference to FIG. 5B , the
이제 주로 도 5c를 참조하면, 제8 프로세서(10702)(도 5b)는 SDSF들을 평활화하고 SDSF(10377)의 경계를 결정하고, SDSF 경계 주위에 버퍼들(10407)을 생성하고, 표면의 비용 수정자를 SDSF 경계로부터 더 멀리 증가시킬 수 있다. 매핑된 궤적(10413/10415)은 최저 비용 수정자를 갖는 특수 경우 차선일 수 있다. 보다 낮은 비용 수정자들(10406)은 일반적으로 SDSF 경계 근처에 위치될 수 있는 반면, 보다 높은 비용 수정자들(10408)은 일반적으로 SDSF 경계로부터 비교적 더 멀리 위치될 수 있다. 제8 프로세서(10702)는 비용들(10704)(도 5b)을 갖는 포인트 클라우드 데이터를 제9 프로세서(10603)(도 5b)에 제공할 수 있다.Referring now primarily to FIG. 5C , an eighth processor 10702 ( FIG. 5B ) smoothes the SDSFs and determines the boundary of the
도 5c를 주로 계속 참조하면, 제9 프로세서(10603)(도 5b)는 AV(10101)(도 1a)에 대한 대략 90° 접근들(10604)(도 5b)을 계산하여, 이들을 횡단가능한 것으로 라벨링하기 위한 기준들을 충족시킨 SDSF들(10377)을 횡단할 수 있다. 기준들은 SDSF 폭 및 SDSF 평활도를 포함할 수 있다. 라인 세그먼트(10409)와 같은 라인 세그먼트들은 그들의 길이가 AV(10101)(도 1a)가 SDSF(10377)에 접근하기 위해 요구할 수 있는 최소 진입 거리, 및 SDSF(10377)를 빠져나가기 위해 요구될 수 있는 최소 진출 거리를 나타내도록 생성될 수 있다. 엔드포인트(10411)와 같은 세그먼트 엔드포인트들은 기본 라우팅 토폴로지와 통합될 수 있다. SDSF 접근이 가능한지를 결정하기 위해 이용되는 기준들은 일부 접근 가능성들을 제거할 수 있다. SDSF 버퍼(10407)와 같은 SDSF 버퍼들은 유효한 접근들을 계산하고 루트 토폴로지 에지 생성을 계산하기 위해 이용될 수 있다.With continued reference primarily to FIG. 5C , the ninth processor 10603 ( FIG. 5B ) calculates approximately 90° approaches 10604 ( FIG. 5B ) to the AV 10101 ( FIG. 1A ), labeling them as traversable.
다시 도 5b를 주로 참조하면, 제10 프로세서(10605)는 맵을 통한 경로들을 계산하는데 이용될 수 있는, 본 명세서에서 개발된, 토폴로지, 에지들 및 가중치들의 그래프로부터 에지/가중치 그래프(10381)를 생성할 수 있다. 토폴로지는 비용 수정자들 및 드라이빙 모드들을 포함할 수 있고, 에지들은 방향성 및 용량을 포함할 수 있다. 가중치들은 임의의 수의 소스들로부터의 정보에 기초하여 런타임에서 조정될 수 있다. 제10 프로세서(10605)는 경로 생성을 가능하게 하기 위해, 특정 포인트들에서 추천된 드라이빙 모드와 함께, 베이스 제어기(10114)에 순서화된 포인트들의 적어도 하나의 시퀀스를 제공할 수 있다. 포인트들의 각각의 시퀀스 내의 각각의 포인트는 처리된 드라이빙가능 표면 상의 가능한 경로 포인트의 위치 및 라벨링을 나타낸다. 일부 구성들에서, 라벨링은 포인트가, 예를 들어, 이에 제한되는 것은 아니지만, SDSF와 같은 경로를 따라 마주칠 수 있는 피처의 일부를 나타낸다는 것을 나타낼 수 있다. 일부 구성들에서, 피처는 피처의 타입에 기초하여 제안된 처리로 추가로 라벨링될 수 있다. 예를 들어, 일부 구성들에서, 경로 포인트가 SDSF로서 라벨링되면, 추가의 라벨링은 모드를 포함할 수 있다. 모드는 AV(10101)(도 1a)에 의해, 예를 들어, AV(10101)(도 1a)가 SDSF(10377)(도 5c)를 횡단할 수 있게 하기 위해 AV(10101)(도 1a)를 SDSF 클라이밍 모드(100-31)(도 5e)로 스위칭하는 것과 같은 AV(10101)(도 1a)에 대한 제안된 드라이빙 명령들로서 해석될 수 있다.Referring again primarily to FIG. 5B , a tenth processor 10605 generates an edge/weight graph 10381 from the graph of topology, edges and weights, developed herein, that may be used to calculate paths through the map. can create The topology may include cost modifiers and driving modes, and edges may include directionality and capacity. Weights may be adjusted at runtime based on information from any number of sources. The tenth processor 10605 may provide the
이제 도 5e를 참조하면, 일부 구성들에서, 모드 제어기(10122)는 모드 전이를 실행하기 위한 방향들을 베이스 제어기(10114)(도 5a)에 제공할 수 있다. 모드 제어기(10122)는 AV(10101)(도 1a)가 이동하고 있는 모드를 확립할 수 있다. 예를 들어, 모드 제어기(10122)는 SDSF가 이동 경로를 따라 식별될 때, 예를 들어, 경로 추종 모드(10100-32)와 SDSF 클라이밍 모드(10100-31) 사이에서 변경하는 모드 표시의 변경을 베이스 제어기(10114)에 제공할 수 있다. 일부 구성들에서, 주석달린 포인트 데이터(10379)(도 5b)는, 예를 들어, 모드가 루트를 수용하기 위해 변경될 때, 루트를 따르는 다양한 포인트들에서 모드 식별자들을 포함할 수 있다. 예를 들어, SDSF(10377)(도 5c)가 주석달린 포인트 데이터(10379)(도 5b)에서 라벨링되었다면, 디바이스 제어기(10111)는 루트 포인트(들)와 연관된 모드 식별자(들)를 결정할 수 있고, 가능하게는 원하는 모드에 기초하여 파워 베이스(10112)(도 5a)에 대한 명령들을 조정할 수 있다. SDSF 클라이밍 모드(10100-31) 및 경로 추종 모드(10100-32)에 더하여, 일부 구성들에서, AV(10101)(도 1a)는 본 명세서에 설명된 표준 모드(10100-1) 및 향상된(4-휠) 모드(10100-2)를 포함할 수 있지만, 이에 제한되지 않는 동작 모드들을 지원할 수 있다. 페이로드 캐리어(10173)(도 1a)의 높이는 장애물들을 통해 그리고 슬로프들을 따라 필요한 클리어런스를 제공하도록 조정될 수 있다.Referring now to FIG. 5E , in some configurations, the
이제 도 5f를 참조하면, 적어도 하나의 SDSF를 가로질러 목표 포인트를 향해 AV를 내비게이팅하기 위한 방법(11150)은, 제한적인 것은 아니지만, SDSF에 관련된 SDSF 정보, 목표 포인트의 위치 및 AV의 위치를 수신하는 단계(11151)를 포함할 수 있다. SDSF 정보는, 제한적인 것은 아니지만, SDSF 포인트들로서 각각 분류된 포인트들의 세트, 및 포인트가 SDSF 포인트인 각각의 포인트에 대한 연관된 확률을 포함할 수 있다. 방법(11150)은 AV의 위치, 목표 포인트의 위치를 포함하는 폐쇄 다각형을 그리는 단계(11153), 및 목표 포인트와 AV의 위치 사이의 경로 라인을 그리는 단계를 포함할 수 있다. 폐쇄 다각형은 미리 선택된 폭을 포함할 수 있다. 표 I는 본 명세서에서 논의된 미리 선택된 변수들에 대한 가능한 범위들을 포함한다. 방법(11150)은 다각형 내에 위치된 SDSF 포인트들 중 2개를 선택하는 단계(11155), 및 2개의 포인트들 사이에 SDSF 라인을 그리는 단계(11157)를 포함할 수 있다. 일부 구성들에서, SDSF 포인트들의 선택은 랜덤으로 또는 임의의 다른 방식으로 이루어질 수 있다. 11159에서 SDSF 라인의 제1 미리 선택된 거리 내에 제1 미리 선택된 수의 포인트들보다 더 적은 수의 포인트들이 존재하는 경우, 및 11161에서 SDSF 포인트들을 선택하고, 그들 사이에 라인을 그리고, SDSF 라인 주위의 제1 미리 선택된 수의 포인트들보다 더 적은 수의 포인트들을 갖는데 있어서 제2 미리 선택된 수의 시도들이 존재하는 경우, 방법(11150)은 단계(11155)로 복귀하는 단계를 포함할 수 있다. 11161에서 SDSF 포인트들을 선택하고, 그들 사이에 라인을 그리고, SDSF 라인 주위의 제1 미리 선택된 수의 포인트들보다 더 적은 수의 포인트들을 갖는데 있어서 제2 미리 선택된 수의 시도들이 존재하는 경우, 방법(11150)은 어떠한 SDSF 라인도 검출되지 않았다는 알림(11163)을 포함할 수 있다.Referring now to FIG. 5F , a
이제 주로 도 5g를 참조하면, 11159(도 5f)에서 제1 미리 선택된 수의 포인트들 또는 그 이상이 있는 경우, 방법(11150)은 곡선을 SDSF 라인의 제1 미리 선택된 거리 내에 있는 포인트들에 피팅하는 단계(11165)를 포함할 수 있다. 11167에서 곡선의 제1 미리 선택된 거리 내에 있는 포인트들의 수가 SDSF 라인의 제1 미리 선택된 거리 내에 있는 포인트들의 수를 초과하는 경우, 및 11171에서 곡선이 경로 라인과 교차하는 경우, 및 11173에서 제2 미리 선택된 거리를 초과하는 곡선 상의 포인트들 사이의 갭들이 없는 경우, 방법(11150)은 곡선을 SDSF 라인으로서 식별하는 단계(11175)를 포함할 수 있다. 11167에서 곡선의 제1 미리 선택된 거리 내에 있는 포인트들의 수가 SDSF 라인의 제1 미리 선택된 거리 내에 있는 포인트들의 수를 초과하지 않는 경우, 또는 11171에서 곡선이 경로 라인과 교차하지 않는 경우, 또는 11173에서 제2 미리 선택된 거리를 초과하는 곡선 상의 포인트들 사이의 갭들이 있는 경우, 및 11177이 SDSF 라인이 안정적으로 유지되지 않는 경우, 및 11169에서 곡선 피팅이 제2 미리 선택된 수의 시도들보다 더 많이 시도되지 않은 경우, 방법(11150)은 단계(11165)로 복귀하는 단계를 포함할 수 있다. 안정된 SDSF 라인은 동일하거나 더 적은 포인트들을 산출하는 후속 반복들의 결과이다.Referring now primarily to FIG. 5G , if there is a first preselected number of points or more at 11159 ( FIG. 5F ), the
이제 도 5h를 주로 참조하면, 11169(도 5g)에서 곡선 피팅이 제2 미리 선택된 수의 시도들을 시도한 경우, 또는 11177(도 5g)에서 SDSF 라인이 안정적으로 유지되거나 열화되는 경우, 방법(11150)은 점유 그리드 정보를 수신하는 단계(11179)를 포함할 수 있다. 점유 그리드는 장애물들이 특정 포인트들에서 존재할 확률을 제공할 수 있다. 점유 그리드 정보는 점유 그리드가 다각형을 갖는 공통 지리적 영역에 걸쳐 캡처 및/또는 계산된 데이터를 포함할 때 AV 경로 및 SDSF(들)를 둘러싸는 다각형에서 발견되는 SDSF 및 경로 정보를 증대시킬 수 있다. 방법(11150)은 공통 지리적 영역으로부터 포인트 및 그 연관된 확률을 선택하는 단계(11181)를 포함할 수 있다. 11183에서 장애물이 선택된 포인트에 존재할 확률이 미리 선택된 퍼센트보다 높은 경우, 및 11185에서 장애물이 AV와 목표 포인트 사이에 놓이는 경우, 및 11186에서 장애물이 SDSF 라인과 목표 포인트 사이의 SDSF 라인으로부터 제3 미리 선택된 거리보다 작은 경우, 방법(11150)은 장애물을 SDSF 라인에 투영하는 단계(11187)를 포함할 수 있다. 11183에서 위치가 장애물을 포함하는 미리 선택된 퍼센트 확률보다 작거나 같은 경우, 또는 11185에서 장애물이 AV와 목표 포인트 사이에 놓이지 않는 경우, 또는 11186에서 장애물이 SDSF와 목표 포인트 사이의 SDSF 라인으로부터 제3 미리 선택된 거리 이상의 거리에 놓이는 경우, 및 11189에서 처리할 장애물들이 더 많은 경우, 방법(11150)은 단계(11179)에서 처리를 재개하는 단계를 포함할 수 있다.Referring now primarily to FIG. 5H ,
이제 주로 도 5i를 참조하면, 11189(도 5h)에서 더 이상 처리할 장애물이 없는 경우, 방법(11150)은 투영들을 접속하고, SDSF 라인을 따라 접속된 투영들의 종료 포인트들을 찾는 단계(11191)를 포함할 수 있다. 방법(11150)은 투영 종료 포인트들 사이의 SDSF 라인의 부분을 횡단 불가능한 것으로서 마킹하는 단계(11193)를 포함할 수 있다. 방법(11150)은 횡단 불가능한 섹션의 외부에 있는 SDSF 라인의 부분을 횡단 가능한 것으로서 마킹하는 단계(11195)를 포함할 수 있다. 방법(11150)은 AV를 SDSF 라인의 횡단가능한 섹션에 수직의 제5 미리 선택된 양 내로 전환하는 단계(11197)를 포함할 수 있다. 11199에서 SDSF 라인의 횡단가능한 섹션에 수직인 라인에 대한 헤딩 에러가 제1 미리 선택된 양보다 큰 경우, 방법(11150)은 AV를 제9 미리 선택된 양만큼 늦추는 단계(11251)를 포함할 수 있다. 방법(11150)은 AV를 SDSF 라인을 향해 전방으로 드라이빙하고, AV와 횡단가능한 SDSF 라인 사이의 미터 거리 당 제2 미리 선택된 양만큼 늦추는 단계(11253)를 포함할 수 있다. 11255에서 횡단가능한 SDSF 라인으로부터의 AV의 거리가 제4 미리 선택된 거리보다 작은 경우, 및 11257에서 헤딩 에러가 SDSF 라인에 수직인 라인에 대한 제3 미리 선택된 양 이상인 경우, 방법(11150)은 AV를 제9 미리 선택된 양만큼 늦추는 단계(11252)를 포함할 수 있다.Referring now primarily to FIG. 5I , when there are no more obstacles to process at 11189 ( FIG. 5H ), the
이제 주로 도 5j를 참조하면, 11257(도 5i)에서 헤딩 에러가 SDSF 라인에 수직인 라인에 대한 제3 미리 선택된 양보다 작은 경우, 방법(11150)은 업데이트된 SDSF 정보를 무시하고 미리 선택된 속도로 AV를 드라이빙하는 단계(11260)를 포함할 수 있다. 11259에서 AV의 후방 부분에 대한 AV의 전방 부분의 상승이 제6 미리 선택된 양과 제5 미리 선택된 양 사이에 있는 경우, 방법(11150)은 AV를 전방으로 드라이빙하고 상승의 정도 당 제8 미리 선택된 양으로 AV의 속도를 증가시키는 단계(11261)를 포함할 수 있다. 11263에서 AV의 후방에 대한 전방의 상승이 제6 미리 선택된 양보다 작은 경우, 방법(11150)은 제7 미리 선택된 속도로 AV를 전방으로 드라이빙하는 단계(11265)를 포함할 수 있다. 11267에서 AV의 후방이 SDSF 라인으로부터 제5 미리 선택된 거리보다 큰 경우, 방법(11150)은 AV가 SDSF를 횡단하는 것을 완료했다는 것을 알리는 단계(11269)를 포함할 수 있다. 11267에서 AV의 후방이 SDSF 라인으로부터 제5 미리 선택된 거리보다 작거나 같다면, 방법(11150)은 단계(11260)로 복귀하는 단계를 포함할 수 있다.Referring now primarily to FIG. 5J , if the heading error at 11257 ( FIG. 5I ) is less than a third preselected amount for a line perpendicular to the SDSF line, the
이제 도 5k를 참조하면, 적어도 하나의 SDSF를 가로질러 목표 포인트를 향해 AV를 내비게이팅하기 위한 시스템(51100)은 경로 라인 프로세서(11103), SDSF 검출기(11109) 및 SDSF 제어기(11127)를 포함할 수 있지만 이에 제한되지 않는다. 시스템(51100)은, 예를 들어, AV(10101)(도 5l)의 주변의 이미지들을 포함할 수 있지만 이에 제한되지 않는 센서 정보를 처리할 수 있는 표면 프로세서(11601)와 동작가능하게 결합될 수 있다. 표면 프로세서(11601)는 SDSF들의 표시를 포함하는 실시간 표면 피처 업데이트들을 제공할 수 있다. 일부 구성들에서, 카메라들은 그 포인트들이 표면 타입에 따라 분류될 수 있는 RGB-D 데이터를 제공할 수 있다. 일부 구성들에서, 시스템(51100)은 SDSF들로서 분류된 포인트들 및 그 연관된 확률들을 처리할 수 있다. 시스템(51100)은 AV(10101)(도 5l)의 동작의 양태들을 관리할 수 있는 시스템 제어기(11602)와 동작가능하게 결합될 수 있다. 시스템 제어기(11602)는 AV(10101)(도 5l) 근처의 내비게이팅가능 영역에 관한 이용가능한 소스들로부터의 정보를 포함할 수 있는 점유 그리드(11138)를 유지할 수 있다. 점유 그리드(11138)는 장애물들이 존재할 확률들을 포함할 수 있다. 이 정보는 SDSF 정보와 연계하여 장애물(11681)(도 5m)과 마주치지 않고서 SDSF(10377)(도 5n)가 AV(10101)(도 5l)에 의해 횡단될 수 있는지를 결정하기 위해 이용될 수 있다. 시스템 제어기(11602)는 환경 및 다른 정보에 기초하여 AV(10101)(도 5n)가 초과하지 않아야 하는 속도 제한(11148)을 결정할 수 있다. 속도 제한(11148)은 시스템(51100)에 의해 설정된 속도들을 가이드로서 이용될 수 있거나 오버라이드될 수 있다. 시스템(51100)은 SDSF 제어기(11127)에 의해 생성된 드라이빙 명령들(11144)을 AV(10101)(도 5l)의 드라이빙 컴포넌트들로 전송할 수 있는 베이스 제어기(10114)와 동작가능하게 결합될 수 있다. 베이스 제어기(10114)는 SDSF 횡단 동안 AV(10101)(도 5l)의 배향에 관한 정보를 SDSF 제어기(11127)에 제공할 수 있다.Referring now to FIG. 5K , a
도 5k를 계속 참조하면, 경로 라인 프로세서(11103)는, 제한적인 것은 아니지만, SDSF들로서 분류된 포인트들을 포함할 수 있는 표면 분류 포인트들(10789)을 실시간으로 계속 수신할 수 있다. 경로 라인 프로세서(11103)는, 예를 들어, 제한적인 것은 아니지만, AV(10101)(도 5l)의 중심(11202)(도 5l)에 의해 표시되는 바와 같은 목표 포인트(11139)의 위치 및 AV 위치(11141)를 수신할 수 있다. 시스템(51100)은 AV 위치(11141), 목표 포인트(11139)의 위치 및 목표 포인트(11139)와 AV 위치(11141) 사이의 경로(11214)를 포함하는 다각형(11147)을 그리는 다각형 프로세서(11105)를 포함할 수 있다. 다각형(11147)은 미리 선택된 폭을 포함할 수 있다. 일부 구성들에서, 미리 선택된 폭은 대략 AV(10101)(도 5l)의 폭을 포함할 수 있다. 다각형(11147) 내에 속하는 SDSF 포인트들(10789)이 식별될 수 있다.With continued reference to FIG. 5K , the
도 5k를 계속 참조하면, SDSF 검출기(11109)는 표면 분류 포인트들(10789), 경로(11214), 다각형(11147), 및 목표 포인트(11139)를 수신할 수 있고, 들어오는 데이터 내에서 이용가능한, 본 명세서에 제시된 기준들에 따라, 가장 적합한 SDSF 라인(10377)을 결정할 수 있다. SDSF 검출기(11109)는 포인트 프로세서(11111) 및 SDSF 라인 프로세서(11113)를 포함할 수 있지만, 이에 제한되지 않는다. 포인트 프로세서(11111)는 다각형(11147) 내에 위치된 SDSF 포인트들(10789) 중 2개를 선택하고, 2개의 포인트들 사이에 SDSF(10377) 라인을 그리는 것을 포함할 수 있다. SDSF 라인(10377)의 제1 미리 선택된 거리 내에 제1 미리 선택된 수의 포인트들보다 더 적은 수의 포인트들이 있는 경우, 및 SDSF 포인트들(10789)을 선택하고, 2개의 포인트들 사이에 라인을 그리고, SDSF 라인 주위의 제1 미리 선택된 수의 포인트들보다 더 적은 수의 포인트들을 갖는데 있어서 제2 미리 선택된 수의 시도들보다 더 적은 수의 시도들이 존재하는 경우, 포인트 프로세서(11111)는 본 명세서에 언급된 바와 같이 선택-그림-테스팅 루프를 통해 다시 루핑하는 것을 포함할 수 있다. SDSF 포인트들을 선택하고, 그들 사이에 라인을 그리고, SDSF 라인 주위의 제1 미리 선택된 수의 포인트들보다 더 적은 수의 포인트들을 갖는데 있어서 제2 미리 선택된 수의 시도들이 존재하는 경우, 포인트 프로세서(11111)는 어떠한 SDSF 라인도 검출되지 않았다는 것을 알리는 것을 포함할 수 있다.With continued reference to FIG. 5K ,
도 5k를 계속 참조하면, SDSF 라인 프로세서(11113)는 제1 미리 선택된 수 이상의 포인트(10789)가 존재하는 경우, 곡선(11609-11611)(도 5l)을 SDSF 라인(10377)의 제1 미리 선택된 거리 내에 있는 포인트들(10789)에 피팅하는 것을 포함할 수 있다. 곡선(11609-11611)(도 5l)의 제1 미리 선택된 거리 내에 있는 포인트들(10789)의 수가 SDSF 라인(10377)의 제1 미리 선택된 거리 내에 있는 포인트들(10789)의 수를 초과하는 경우, 및 곡선(11609-11611)(도 5l)이 경로 라인(11214)과 교차하는 경우, 및 제2 미리 선택된 거리를 초과하는 곡선(11609-11611)(도 5l) 상의 포인트들(10789) 사이의 갭들이 없는 경우, SDSF 라인 프로세서(11113)는 (예를 들어) 곡선(11609-11611)(도 5l)을 SDSF 라인(10377)으로서 식별하는 것을 포함할 수 있다. 곡선(11609-11611)(도 5l)의 미리 선택된 거리 내에 있는 포인트들(10789)의 수가 SDSF 라인(10377)의 제1 미리 선택된 거리 내에 있는 포인트들(10789)의 수를 초과하지 않는 경우, 또는 곡선(11609-11611)(도 5l)이 경로 라인(11214)과 교차하지 않는 경우, 또는 제2 미리 선택된 거리를 초과하는 곡선(11609-11611)(도 5l) 상의 포인트들(10789) 사이의 갭들이 존재하는 경우, 및 SDSF 라인(10377)이 안정적으로 유지되지 않는 경우, 및 곡선 피팅이 제2 미리 선택된 수의 시도들보다 더 많이 시도되지 않은 경우, SDSF 라인 프로세서(11113)는 곡선 피팅 루프를 다시 실행할 수 있다.With continued reference to FIG. 5K , SDSF line processor 11113 generates curves 11609 - 11611 ( FIG. 5L ) of first
도 5k를 계속 참조하면, SDSF 제어기(11127)는 SDSF 라인(10377), 점유 그리드(11138), AV 배향 변경들(11142) 및 속도 제한(11148)을 수신할 수 있고, SDSF(10377)(도 5n)를 정확하게 횡단하도록 AV(10101)(도 5l)를 드라이빙하기 위한 SDSF 명령들(11144)을 생성할 수 있다. SDSF 제어기(11127)는 장애물 프로세서(11115), SDSF 접근(11131) 및 SDSF 횡단(11133)을 포함하지만 이에 한정되지 않는 것을 포함할 수 있다. 장애물 프로세서(11115)는 SDSF 라인(10377), 목표 포인트(11139) 및 점유 그리드(11138)를 수신할 수 있고, 점유 그리드(11138)에서 식별된 장애물들 중에서, 이들 중 임의의 것이 SDSF(10377)(도 5n)를 횡단할 때 AV(10101)(도 5n)를 방해할 수 있는지를 결정할 수 있다. 장애물 프로세서(11115)는 장애물 선택기(11117), 장애물 테스터(11119) 및 횡단 로케이터(11121)를 포함하지만 이에 제한되지 않는 것을 포함할 수 있다. 장애물 선택기(11117)는 본 명세서에 설명된 바와 같이 점유 그리드(11138)를 수신하는 것을 포함할 수 있지만 이에 제한되지 않는다. 장애물 선택기(11117)는 점유 그리드(11138) 및 다각형(11147) 모두에 공통인 지리적 영역으로부터 점유 그리드 포인트 및 그의 연관된 확률을 선택하는 것을 포함할 수 있다. 장애물 테스터(11119)는 선택된 그리드 포인트에 장애물이 존재하는 확률이 미리 선택된 퍼센트보다 높은 경우, 및 장애물이 AV(10101)(도 5l)와 목표 포인트(11139) 사이에 있는 경우, 및 장애물이 SDSF 라인(10377)과 목표 포인트(11139) 사이의 SDSF 라인(10377)으로부터 제3 미리 선택된 거리보다 작은 경우를 포함할 수 있고, 장애물 테스터(11119)는 장애물을 SDSF 라인(10377)에 투영하여, SDSF 라인(10377)과 교차하는 투영들(11621)을 형성하는 것을 포함할 수 있다. 위치가 장애물을 포함하는 미리 선택된 퍼센트 확률보다 작거나 같은 경우, 또는 장애물이 AV(10101)(도 5l)와 목표 포인트(11139) 사이에 있지 않은 경우, 또는 장애물이 SDSF 라인(10377)과 목표 포인트(11139) 사이의 SDSF 라인(10377)으로부터 제3 미리 선택된 거리 이상의 거리에 있는 경우, 장애물 테스터(11119)는 처리할 장애물들이 더 많은 경우, 점유 그리드(11138)를 수신할 때 실행을 재개하는 것을 포함할 수 있다.With continued reference to FIG. 5K ,
도 5k를 계속 참조하면, 횡단 로케이터(11121)는 SDSF 라인(10377)을 따라 접속된 투영들(11621)(도 5m)의 접속 투영 포인트들 및 위치결정 종료 포인트들(11622/11623)(도 5m)을 포함할 수 있다. 횡단 로케이터(11121)는 횡단 불가능한 것으로서 투영 종료 포인트들(11622/11623)(도 5m) 사이의 SDSF 라인(10377)의 마킹 부분(11624)(도 5m)을 포함할 수 있다. 횡단 로케이터(11121)는 횡단가능한 것으로서 횡단 불가능한 부분(11624)(도 5m)의 외부에 있는 SDSF 라인(10377)의 마킹 부분들(11626)(도 5m)을 포함할 수 있다.With continued reference to FIG. 5K , the
도 5k를 계속 참조하면, SDSF 접근(11131)은 SDSF 라인(10377)의 횡단가능 부분(11626)(도 5n)에 수직인 제5 미리 선택된 양 내로 AV(10101)(도 5n)를 전환하기 위해 SDSF 명령들(11144)을 전송하는 것을 포함할 수 있다. SDSF 라인(10377)의 횡단가능 섹션(11626)(도 5n)에 수직인 수직 라인(11627)(도 5n)에 대한 헤딩 에러가 제1 미리 선택된 양보다 큰 경우, SDSF 접근(11131)은 제9 미리 선택된 양만큼 AV(10101)(도 5n)를 느리게 하기 위해 SDSF 명령들(11144)을 전송하는 것을 포함할 수 있다. 일부 구성들에서, 제9 미리 선택된 양은 매우 느리게부터 완전히 정지된 것까지의 범위일 수 있다. SDSF 접근(11131)은 SDSF 라인(10377)을 향해 AV(10101)(도 5n)를 전방으로 드라이빙하기 위해 SDSF 명령들(11144)을 전송하는 것, 이동된 미터 당 제2 미리 선택된 양만큼 AV(10101)(도 5n)를 느리게 하기 위해 SDSF 명령들(11144)을 전송하는 것을 포함할 수 있다. AV(10101)(도 5n)와 횡단가능 SDSF 라인(11626)(도 5n) 사이의 거리가 제4 미리 선택된 거리보다 작은 경우, 및 헤딩 에러가 SDSF 라인(10377)에 수직인 라인에 대해 제3 미리 선택된 양보다 크거나 같은 경우, SDSF 접근(11131)은 제9 미리 선택된 양만큼 AV(10101)(도 5n)를 느리게 하기 위해 SDSF 명령들(11144)을 전송하는 것을 포함할 수 있다.With continued reference to FIG. 5K ,
도 5k를 계속 참조하면, 헤딩 에러가 SDSF 라인(10377)에 수직인 라인에 대해 제3 미리 선택된 양보다 작은 경우, SDSF 횡단(11133)은 업데이트된 SDSF 정보를 무시하고 미리 선택된 레이트로 AV(10101)(도 5n)를 드라이빙하도록 SDSF 명령들(11144)을 전송하는 것을 포함할 수 있다. AV 배향 변경들(11142)이 AV(10101)(도 5n)의 후미 에지(11703)(도 5n)에 대한 AV(10101)(도 5n)의 선두 에지(11701)(도 5n)의 상승이 제6 미리 선택된 양과 제5 미리 선택된 양 사이에 있는 것을 나타내는 경우, SDSF 횡단(11133)은 AV(10101)(도 5n)를 전방으로 드라이빙하도록 SDSF 명령들(11144)을 전송하고, 상승의 정도 당 미리 선택된 레이트로 AV(10101)(도 5n)의 속도를 증가시키도록 SDSF 명령들(11144)을 전송하는 것을 포함할 수 있다. AV 배향 변경들(11142)이, AV(10101)(도 5n)의 후미 에지(11703)(도 5n)에 대한 선두 에지(11701)(도 5n)의 상승이 제6 미리 선택된 양보다 작은 것을 나타내는 경우, SDSF 횡단(11133)은 제7 미리 선택된 속도로 전방으로 AV(10101)(도 5n)를 드라이빙하도록 SDSF 명령들(11144)을 전송하는 것을 포함할 수 있다. AV 위치(11141)가 후미 에지(11703)(도 5n)가 SDSF 라인(10377)으로부터 제5 미리 선택된 거리보다 큰 것을 나타내는 경우, SDSF 횡단(11133)은 AV(10101)(도 5n)가 SDSF(10377)를 횡단하는 것을 완료한 것을 알리는 것을 포함할 수 있다. AV 위치(11141)가 후미 에지(11703)(도 5n)가 SDSF 라인(10377)으로부터 제5 미리 선택된 거리보다 작거나 같은 것을 나타내는 경우, SDSF 횡단(11133)은 업데이트된 SDSF 정보를 무시하면서 시작하는 루프를 다시 실행하는 것을 포함할 수 있다.With continued reference to FIG. 5K , if the heading error is less than a third preselected amount for a line perpendicular to
본 명세서에 기술된 미리 선택된 값들에 대한 일부 예시적인 범위들은, 제한적인 것은 아니지만, 표 II에 열거된 것들을 포함할 수 있다.Some exemplary ranges for preselected values described herein may include, but are not limited to, those listed in Table II.
표 II.Table II.
이제, 도 5o를 참조하면, 실시간 데이터 수집을 지원하기 위해, 일부 구성들에서, 본 교시들의 시스템은, 예를 들어, RGD-D 카메라 이미지 데이터와 같은, 그러나 이에 제한되지 않는, 데이터를 수신할 시에 다양한 표면 타입들의 3차원 공간에서 위치들을 생성할 수 있다. 시스템은 이미지들(12155)을 회전시키고 이들을 카메라 좌표계(12157)로부터 UTM 좌표계(12159)로 변환할 수 있다. 시스템은 변환된 이미지들로부터 다각형 파일들을 생성할 수 있고, 다각형 파일들은 표면 타입(12161)과 연관된 3차원 위치들을 나타낼 수 있다. AV(10101)―AV(10101)는 포즈(12163)를 가짐―에 의해 수신된 카메라 이미지들(12155)로부터 피처들(12151)을 위치결정하기 위한 방법(12150)은, 제한적인 것은 아니지만, AV(10101)에 의해 카메라 이미지들(12155)을 수신하는 단계를 포함할 수 있다. 카메라 이미지들(12155) 각각은 이미지 타임스탬프(12171)를 포함할 수 있고, 이미지들(12155) 각각은 이미지 컬러 픽셀들(12167) 및 이미지 심도 픽셀들(12169)을 포함할 수 있다. 방법(12150)은 AV(10101)의 포즈(12163), 포즈 타임스탬프(12171)를 갖는 포즈(12163)를 수신하는 단계, 및 포즈 타임스탬프(12171)에 가장 가까운 이미지 타임스탬프(12165)를 갖는 카메라 이미지들(12155)로부터 이미지를 식별함으로써 선택된 이미지(12173)를 결정하는 단계를 포함할 수 있다. 방법(12150)은 선택된 이미지(12173)에서 이미지 심도 픽셀들(12169)로부터 이미지 컬러 픽셀들(12167)을 분리하는 단계, 및 이미지 컬러 픽셀들(12167)을 제1 머신 학습 모델(12177)에 그리고 이미지 심도 픽셀들(12169)을 제2 머신 학습 모델(12179)에 제공함으로써 선택된 이미지(12173)에 대한 이미지 표면 분류들(12161)을 결정하는 단계를 포함할 수 있다. 방법(12150)은 카메라 이미지(12173)에서 피처들의 주변 포인트들(12181)을 결정하는 단계를 포함할 수 있고, 여기서 피처들은 주변 내에 피처 픽셀들(12151)을 포함할 수 있고, 피처 픽셀들(12151) 각각은 동일한 표면 분류(12161)를 갖고, 주변 포인트들(12181) 각각은 좌표들(12157)의 세트를 갖는다. 방법(12150)은 좌표들(12157)의 세트들 각각을 UTM 좌표들(12159)로 변환하는 단계를 포함할 수 있다.Referring now to FIG. 5O , to support real-time data collection, in some configurations, a system of the present teachings may receive data, such as, but not limited to, RGD-D camera image data, for example. It is possible to create positions in three-dimensional space of various surface types in a city. The system can rotate the
본 교시의 구성들은 본 명세서에서의 설명에서 논의된 방법들을 달성하기 위한 컴퓨터 시스템들, 및 이러한 방법들을 달성하기 위한 프로그램들을 포함하는 컴퓨터 판독가능 매체들에 관한 것이다. 미가공 데이터 및 결과들은 미래의 검색 및 처리를 위해 저장되고, 인쇄되고, 디스플레이되고, 다른 컴퓨터에 전송되고, 및/또는 다른 곳에 전송될 수 있다. 통신 링크들은, 예를 들어, 셀룰러 통신 시스템들, 군사 통신 시스템들, 및 위성 통신 시스템들을 이용하는, 유선 또는 무선일 수 있다. 시스템의 부분들은 가변 수의 CPU들을 갖는 컴퓨터 상에서 동작할 수 있다. 다른 대안적인 컴퓨터 플랫폼들이 이용될 수 있다.Compositions of the present teachings relate to computer systems for accomplishing the methods discussed in the description herein, and computer readable media containing programs for performing these methods. The raw data and results may be stored, printed, displayed, transmitted to another computer, and/or transmitted elsewhere for future retrieval and processing. Communication links may be wired or wireless, using, for example, cellular communication systems, military communication systems, and satellite communication systems. Portions of the system may run on a computer with a variable number of CPUs. Other alternative computer platforms may be used.
본 구성은 또한 본 명세서에서 논의된 방법들을 달성하기 위한 소프트웨어, 및 이러한 방법들을 달성하기 위한 소프트웨어를 저장하는 컴퓨터 판독가능 매체들에 관한 것이다. 본 명세서에서 설명되는 다양한 모듈들은 동일한 CPU 상에서 달성될 수 있거나, 상이한 컴퓨터 상에서 달성될 수 있다. 진술에 따라, 본 구성은 구조적 및 방법적 특징들에 대해 다소 특정적인 언어로 설명되었다. 그러나, 본 명세서에서 개시되는 수단은 본 구성을 실시하는 바람직한 형태들을 포함하기 때문에, 본 구성은 도시되고 설명되는 특정 특징들로 한정되지 않는다는 것을 이해해야 한다.The present configuration also relates to software for accomplishing the methods discussed herein, and computer-readable media storing the software for achieving these methods. The various modules described herein may be implemented on the same CPU, or may be implemented on different computers. As per the statement, the present composition has been described in language that is rather specific for its structural and methodological features. However, it is to be understood that the present arrangement is not limited to the specific features shown and described, since the means disclosed herein include preferred forms of carrying out the present arrangement.
방법들은, 전체적으로 또는 부분적으로, 전자적으로 구현될 수 있다. 시스템의 요소들 및 다른 개시된 구성들에 의해 취해진 액션들을 나타내는 신호들은 적어도 하나의 라이브 통신 네트워크를 통해 이동할 수 있다. 제어 및 데이터 정보는 적어도 하나의 컴퓨터 판독가능 매체 상에 전자적으로 실행 및 저장될 수 있다. 시스템은 적어도 하나의 라이브 통신 네트워크 내의 적어도 하나의 컴퓨터 노드 상에서 실행되도록 구현될 수 있다. 적어도 하나의 컴퓨터 판독가능 매체의 공통 형태들은, 예를 들어, 제한적인 것은 아니지만, 플로피 디스크, 플렉시블 디스크, 하드 디스크, 자기 테이프, 또는 임의의 다른 자기 매체, 콤팩트 디스크 판독 전용 메모리 또는 임의의 다른 광학 매체, 펀칭된 카드들, 페이퍼 테이프, 또는 구멍들의 패턴들을 갖는 임의의 다른 물리적 매체, 랜덤 액세스 메모리, 프로그램가능 판독 전용 메모리, 및 소거가능 프로그램가능 판독 전용 메모리(EPROM), 플래시 EPROM, 또는 임의의 다른 메모리 칩 또는 카트리지, 또는 컴퓨터가 판독할 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 적어도 하나의 컴퓨터 판독가능 매체는, 제한적인 것은 아니지만, GIF(Graphic Interchange Format), JPEG(Joint Photographic Experts Group), PNG(Portable Network Graphics), SVG(Scalable Vector Graphics), 및 TIFF(Tagged Image File Format)를 포함하는, 필요한 경우 적절한 라이센스들에 따르는, 임의의 형태로 그래프들을 포함할 수 있다.The methods may be implemented, in whole or in part, electronically. Signals indicative of actions taken by elements of the system and other disclosed configurations may travel through the at least one live communication network. The control and data information may be executed and stored electronically on at least one computer readable medium. The system may be implemented to run on at least one computer node in at least one live communication network. Common forms of at least one computer readable medium include, for example, but not limited to, a floppy disk, a flexible disk, a hard disk, magnetic tape, or any other magnetic medium, compact disk read only memory, or any other optical medium. media, punched cards, paper tape, or any other physical medium having patterns of holes, random access memory, programmable read only memory, and erasable programmable read only memory (EPROM), flash EPROM, or any may include other memory chips or cartridges, or any other computer readable medium. Also, at least one computer-readable medium may include, but is not limited to, Graphic Interchange Format (GIF), Joint Photographic Experts Group (JPEG), Portable Network Graphics (PNG), Scalable Vector Graphics (SVG), and Tagged Image (TIFF). File Format), if necessary, in accordance with the appropriate licenses, and may include the graphs in any form.
본 교시는 특정 구성들의 관점에서 위에서 설명되었지만, 이들은 이들 개시된 구성들로 제한되지 않는다는 것이 이해되어야 한다. 많은 수정들 및 다른 구성들은 본 출원이 속하는 기술분야의 통상의 기술자들에게 떠오를 것이고, 본 개시내용 및 첨부된 청구항들 둘다인 것으로 의도되고 이에 의해 커버된다. 본 교시의 범위는 본 명세서 및 첨부된 도면들에서의 개시내용에 의존하는 기술분야의 통상의 기술자들에 의해 이해되는 바와 같이, 첨부된 청구항들 및 이들의 법적 등가물들의 적절한 해석 및 구성에 의해 결정되어야 한다는 것이 의도된다.Although the present teachings have been described above in terms of specific configurations, it should be understood that they are not limited to these disclosed configurations. Many modifications and other constructions will occur to those skilled in the art to which this application pertains, and are intended and covered by both the present disclosure and the appended claims. The scope of the present teachings is determined by appropriate interpretation and construction of the appended claims and their legal equivalents, as understood by those skilled in the art to rely on the disclosure in this specification and the appended drawings. It is intended to be
Claims (93)
2개의 전동 전방 휠들, 2개의 전동 후방 휠들 및 에너지 저장소를 포함하는 파워 베이스―상기 파워 베이스는 적어도 하나의 물체의 수송을 수행하기 위해 명령된 속도로 및 명령된 방향으로 이동하도록 구성됨―;
복수의 단거리 센서들을 포함하는 화물 플랫폼―상기 화물 플랫폼은 상기 파워 베이스에 기계적으로 부착됨―;
상기 적어도 하나의 물체를 수용하기 위한 볼륨을 갖는 화물 컨테이너―상기 화물 컨테이너는 상기 화물 플랫폼의 최상부 상에 장착됨―;
LIDAR 및 하나 이상의 카메라를 포함하는 장거리 센서 슈트―상기 장거리 센서 슈트는 상기 화물 컨테이너의 최상부 상에 장착됨―; 및
상기 장거리 센서 슈트 및 상기 복수의 단거리 센서들로부터 데이터를 수신하기 위한 제어기―상기 제어기는 상기 데이터에 적어도 기초하여 상기 명령된 속도 및 상기 명령된 방향을 결정하고, 상기 제어기는 상기 수송을 완료하기 위해 상기 파워 베이스에 상기 명령된 속도 및 상기 명령된 방향을 제공함―를 포함하는,
자율 배송 차량.An autonomous delivery vehicle comprising:
a power base comprising two powered front wheels, two powered rear wheels and an energy store, wherein the power base is configured to move at a commanded speed and in a commanded direction to effect transport of at least one object;
a cargo platform comprising a plurality of short-range sensors, the cargo platform mechanically attached to the power base;
a cargo container having a volume for receiving the at least one object, the cargo container mounted on top of the cargo platform;
a long-range sensor chute comprising a LIDAR and one or more cameras, the long-range sensor chute mounted on top of the cargo container; and
a controller for receiving data from the long-range sensor suite and the plurality of short-range sensors, wherein the controller determines the commanded speed and the commanded direction based at least on the data, and the controller is configured to: providing the commanded speed and the commanded direction to the power base;
Autonomous delivery vehicle.
상기 복수의 단거리 센서들로부터의 상기 데이터는 상기 파워 베이스가 이동하는 표면의 적어도 하나의 특성을 포함하는, 자율 배송 차량.According to claim 1,
and the data from the plurality of short-range sensors include at least one characteristic of a surface on which the power base moves.
상기 복수의 단거리 센서들은 적어도 하나의 스테레오 카메라를 포함하는, 자율 배송 차량.According to claim 1,
wherein the plurality of short-range sensors include at least one stereo camera.
상기 복수의 단거리 센서들은 적어도 하나의 IR 프로젝터, 적어도 하나의 이미지 센서, 및 적어도 하나의 RGB 센서를 포함하는, 자율 배송 차량.According to claim 1,
wherein the plurality of short-range sensors include at least one IR projector, at least one image sensor, and at least one RGB sensor.
상기 복수의 단거리 센서들은 적어도 하나의 레이더 센서를 포함하는, 자율 배송 차량.According to claim 1,
wherein the plurality of short-range sensors include at least one radar sensor.
상기 복수의 단거리 센서들로부터의 상기 데이터는 RGB-D 데이터를 포함하는, 자율 배송 차량.According to claim 1,
and the data from the plurality of short-range sensors comprises RGB-D data.
상기 제어기는 상기 복수의 단거리 센서들로부터 수신된 RGB-D 데이터에 기초하여 노면의 기하구조를 결정하는, 자율 배송 차량.According to claim 1,
and the controller determines the geometry of the road surface based on RGB-D data received from the plurality of short-range sensors.
상기 복수의 단거리 센서들은 상기 AV의 4미터 이내의 물체들을 검출하고, 상기 장거리 센서 슈트는 상기 자율 배송 차량으로부터 4미터보다 더 떨어져 있는 물체들을 검출하는, 자율 배송 차량.According to claim 1,
wherein the plurality of short-range sensors detect objects within 4 meters of the AV and the long-range sensor suite detects objects more than 4 meters away from the autonomous delivery vehicle.
상기 복수의 단거리 센서들은 냉각 회로를 포함하는, 자율 배송 차량.According to claim 1,
wherein the plurality of short-range sensors include a cooling circuit.
상기 복수의 단거리 센서들은 초음파 센서를 포함하는, 자율 배송 차량.According to claim 1,
wherein the plurality of short-range sensors include an ultrasonic sensor.
상기 제어기는 실행가능 코드를 포함하고,
이 실행가능 코드는 맵 프로세서에 의해 형성된 맵에 액세스하는 것을 포함하고,
상기 맵 프로세서는,
상기 장거리 센서 슈트로부터의 포인트 클라우드 데이터에 액세스하는 제1 프로세서―상기 포인트 클라우드 데이터는 상기 표면을 나타냄―;
상기 포인트 클라우드 데이터를 필터링하는 필터;
상기 필터링된 포인트 클라우드 데이터로부터 처리가능 부분들을 형성하는 제2 프로세서;
상기 처리가능 부분들을 적어도 하나의 다각형에 병합하는 제3 프로세서;
상기 적어도 하나의 다각형에 적어도 하나의 실질적으로 불연속적인 표면 피처(SDSF)를 위치결정 및 라벨링하는 제4 프로세서―존재하는 경우, 상기 위치결정 및 라벨링은 라벨링된 포인트 클라우드 데이터를 형성함―;
상기 라벨링된 포인트 클라우드 데이터로부터 그래핑 다각형들을 생성하는 제5 프로세서; 및
상기 그래핑 다각형들에 적어도 기초하여 시작 포인트로부터 종료 포인트까지의 경로를 선택하는 제6 프로세서―상기 AV는 상기 경로를 따라 상기 적어도 하나의 SDSF를 횡단함―를 포함하는, 자율 배송 차량.3. The method of claim 2,
the controller comprises executable code;
the executable code comprising accessing a map formed by a map processor;
The map processor,
a first processor accessing point cloud data from the long range sensor suite, the point cloud data representing the surface;
a filter for filtering the point cloud data;
a second processor forming processable portions from the filtered point cloud data;
a third processor for merging the processable portions into at least one polygon;
a fourth processor for locating and labeling at least one substantially discontinuous surface feature (SDSF) in the at least one polygon, wherein the locating and labeling, if present, forms labeled point cloud data;
a fifth processor for generating graphing polygons from the labeled point cloud data; and
and a sixth processor selecting a path from a starting point to an ending point based at least on the graphing polygons, wherein the AV traverses the at least one SDSF along the path.
상기 필터는 코드를 실행하는 제7 프로세서를 포함하고,
상기 코드는,
상기 포인트 클라우드 데이터로부터 과도 물체들을 나타내는 포인트들 및 이상치들을 나타내는 포인트들을 조건부로 제거하는 것; 및
미리 선택된 높이를 갖는 상기 제거된 포인트들을 대체하는 것을 포함하는, 자율 배송 차량.12. The method of claim 11,
the filter comprises a seventh processor executing code;
The code is
conditionally removing from the point cloud data points indicative of transient objects and points indicative of outliers; and
and replacing the removed points with a preselected height.
상기 제2 프로세서는 상기 실행가능 코드를 포함하고,
이 실행가능 코드는,
상기 포인트 클라우드 데이터를 상기 처리가능 부분들로 세그먼트화하는 것; 및
미리 선택된 높이의 포인트들을 상기 처리가능 부분들로부터 제거하는 것을 포함하는, 자율 배송 차량.12. The method of claim 11,
wherein the second processor comprises the executable code;
This executable code is
segmenting the point cloud data into the processable portions; and
and removing points of a preselected height from the processable portions.
상기 제3 프로세서는 상기 실행가능 코드를 포함하고,
이 실행가능 코드는,
이상치들, 복셀들, 및 법선들을 분석함으로써 상기 처리가능 부분들의 크기를 감소시키는 것;
상기 감소된 크기의 처리가능 부분들로부터 영역들을 성장시키는 것;
상기 성장된 영역들로부터 초기 드라이빙가능 표면들을 결정하는 것;
상기 초기 드라이빙가능 표면들을 세그먼트화 및 메싱하는 것;
상기 세그먼트화 및 메싱된 초기 드라이빙가능 표면들 내에 다각형들을 위치결정하는 것; 및
상기 다각형들에 적어도 기초하여 적어도 하나의 드라이빙가능 표면을 설정하는 것을 포함하는, 자율 배송 차량.12. The method of claim 11,
wherein the third processor comprises the executable code;
This executable code is
reducing the size of the processable portions by analyzing outliers, voxels, and normals;
growing regions from the reduced size processable portions;
determining initial drivable surfaces from the grown regions;
segmenting and meshing the initial drivable surfaces;
positioning polygons within the segmented and meshed initial drivable surfaces; and
and setting at least one drivable surface based at least on the polygons.
상기 제4 프로세서는 상기 실행가능 코드를 포함하고,
이 실행가능 코드는,
SDSF 필터에 따라 상기 초기 드라이빙가능 표면들의 상기 포인트 클라우드 데이터를 정렬하는 것―상기 SDSF 필터는 포인트들의 적어도 3개의 카테고리들을 포함함―; 및
상기 포인트들의 적어도 3개의 카테고리들이, 조합하여, 적어도 하나의 제1 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 포인트를 위치결정하는 것을 포함하는, 자율 배송 차량.15. The method of claim 14,
the fourth processor comprises the executable code;
This executable code is
sorting the point cloud data of the initial drivable surfaces according to an SDSF filter, wherein the SDSF filter includes at least three categories of points; and
and locating at least one SDSF point based at least on whether the at least three categories of points, in combination, satisfy at least one first preselected criterion.
상기 제4 프로세서는 상기 실행가능 코드를 포함하고,
이 실행가능 코드는,
복수의 상기 적어도 하나의 SDSF 포인트가, 조합하여, 적어도 하나의 제2 미리 선택된 기준을 충족시키는지에 적어도 기초하여 적어도 하나의 SDSF 궤적을 생성하는 것을 포함하는, 자율 배송 차량.16. The method of claim 15,
the fourth processor comprises the executable code;
This executable code is
and generating at least one SDSF trajectory based at least on whether a plurality of the at least one SDSF point, in combination, satisfies at least one second preselected criterion.
상기 그래핑 다각형들을 생성하는 것은 상기 실행가능 코드를 포함하는 제8 프로세서를 포함하고,
이 실행가능 코드는,
상기 적어도 하나의 드라이빙가능 표면으로부터 적어도 하나의 다각형을 생성하는 것―상기 적어도 하나의 다각형은 외부 에지들을 포함함―;
상기 외부 에지들을 평활화하는 것;
상기 평활화된 외부 에지들에 기초하여 드라이빙 마진을 형성하는 것;
상기 적어도 하나의 SDSF 궤적을 상기 적어도 하나의 드라이빙가능 표면에 추가하는 것; 및
적어도 하나의 제3 미리 선택된 기준에 따라 상기 적어도 하나의 드라이빙가능 표면으로부터 내부 에지들을 제거하는 것을 포함하는, 자율 배송 차량.15. The method of claim 14,
generating the graphing polygons comprises an eighth processor comprising the executable code;
This executable code is
generating at least one polygon from the at least one drivable surface, the at least one polygon comprising outer edges;
smoothing the outer edges;
forming a driving margin based on the smoothed outer edges;
adding the at least one SDSF trajectory to the at least one drivable surface; and
and removing inner edges from the at least one drivable surface according to at least one third preselected criterion.
상기 외부 에지들을 평활화하는 것은 상기 실행가능 코드를 포함하는 제9 프로세서를 포함하고,
이 실행가능 코드는,
상기 외부 에지들을 바깥쪽으로 트리밍하여 바깥쪽 에지들을 형성하는 것을 포함하는, 자율 배송 차량.18. The method of claim 17,
smoothing the outer edges comprises a ninth processor comprising the executable code;
This executable code is
and trimming the outer edges outward to form outer edges.
상기 평활화된 외부 에지들의 드라이빙 마진을 형성하는 것은 상기 실행가능 코드를 포함하는 제10 프로세서를 포함하고,
이 실행가능 코드는,
상기 바깥쪽 에지들을 안쪽으로 트리밍하는 것을 포함하는, 자율 배송 차량.19. The method of claim 18,
forming a driving margin of the smoothed outer edges comprises a tenth processor comprising the executable code;
This executable code is
and trimming the outer edges inward.
제어기는,
상기 자율 배송 차량(AV)이 마주치는 적어도 하나의 실질적으로 불연속적인 표면 피처(SDSF)를 내비게이팅하기 위한 서브시스템―상기 AV는 표면 위의 경로를 이동하고, 상기 표면은 상기 적어도 하나의 SDSF를 포함하고, 상기 경로는 시작 포인트 및 종료 포인트를 포함함―을 포함하고,
상기 서브시스템은,
루트 토폴로지에 액세스하는 제1 프로세서-상기 루트 토폴로지는 필터링된 포인트 클라우드 데이터를 포함하는 적어도 하나의 그래핑 다각형을 포함하고, 상기 필터링된 포인트 클라우드 데이터는 라벨링된 피처들을 포함하고, 상기 포인트 클라우드 데이터는 드라이빙가능 마진을 포함함―;
상기 포인트 클라우드 데이터를 전역 좌표계로 변환하는 제2 프로세서;
상기 적어도 하나의 SDSF의 경계들을 결정하는 제3 프로세서―상기 제3 프로세서는 상기 경계들 주위의 미리 선택된 크기의 SDSF 버퍼들을 생성함―;
적어도 하나의 SDSF 횡단 기준에 적어도 기초하여 상기 적어도 하나의 SDSF 중 어느 것이 횡단될 수 있는지를 결정하는 제4 프로세서;
상기 적어도 하나의 SDSF 횡단 기준, 상기 변환된 포인트 클라우드 데이터, 및 상기 루트 토폴로지에 적어도 기초하여 에지/가중치 그래프를 생성하는 제5 프로세서; 및
상기 에지/가중치 그래프에 적어도 기초하여 상기 시작 포인트로부터 상기 종료 포인트까지의 경로를 선택하는 베이스 제어기를 포함하는, 자율 배송 차량.According to claim 1,
The controller is
a subsystem for navigating at least one substantially discontinuous surface feature (SDSF) encountered by the autonomous delivery vehicle (AV), wherein the AV travels a path over a surface, the surface passing through the at least one SDSF wherein the path includes a start point and an end point;
The subsystem is
A first processor accessing a route topology, the route topology comprising at least one graphing polygon comprising filtered point cloud data, the filtered point cloud data comprising labeled features, wherein the point cloud data comprises: including drivable margin-;
a second processor for converting the point cloud data into a global coordinate system;
a third processor that determines boundaries of the at least one SDSF, wherein the third processor creates SDSF buffers of a preselected size around the boundaries;
a fourth processor to determine which of the at least one SDSF may be traversed based at least on at least one SDSF traversal criterion;
a fifth processor configured to generate an edge/weight graph based at least on the at least one SDSF traversal criterion, the transformed point cloud data, and the route topology; and
and a base controller to select a path from the start point to the end point based at least on the edge/weight graph.
상기 적어도 하나의 SDSF 횡단 기준은,
상기 적어도 하나의 SDSF의 미리 선택된 폭 및 상기 적어도 하나의 SDSF의 미리 선택된 평활도;
드라이빙가능 표면을 포함하는, 상기 적어도 하나의 SDSF와 상기 AV 사이의 최소 진입 거리 및 최소 진출 거리, 및
상기 AV에 의한 상기 적어도 하나의 SDSF로의 대략 90° 접근을 수용하는, 상기 적어도 하나의 SDSF와 상기 AV 사이의 상기 최소 진입 거리를 포함하는, 자율 배송 차량.21. The method of claim 20,
The at least one SDSF traversal criterion comprises:
a preselected width of the at least one SDSF and a preselected smoothness of the at least one SDSF;
a minimum entry distance and a minimum exit distance between the at least one SDSF and the AV, including a drivable surface, and
and the minimum entry distance between the AV and the at least one SDSF that accommodates approximately 90° access to the at least one SDSF by the AV.
상기 전역 점유 그리드는 전역 점유 그리드 셀들을 포함하고, 상기 전역 점유 그리드 셀들은 점유 확률과 연관되고, 상기 방법은,
상기 자율 디바이스와 연관된 센서들로부터 센서 데이터를 수신하는 단계;
상기 센서 데이터에 적어도 기초하여 로컬 점유 그리드를 생성하는 단계―상기 로컬 점유 그리드는 로컬 점유 그리드 셀들을 가짐-;
상기 자율 디바이스가 제1 영역으로부터 제2 영역으로 이동한 경우,
상기 제2 영역과 연관된 이력 데이터에 액세스하는 단계;
상기 이력 데이터에 적어도 기초하여 정적 그리드를 생성하는 단계;
상기 자율 디바이스를 상기 전역 점유 그리드의 중심 위치에 유지하기 위해 상기 전역 점유 그리드를 이동시키는 단계;
상기 정적 그리드에 기초하여 상기 이동된 전역 점유 그리드를 업데이트하는 단계;
상기 전역 점유 그리드 셀들 중 적어도 하나가 상기 자율 디바이스의 위치와 일치하면, 상기 전역 점유 그리드 셀들 중 적어도 하나를 비점유된 것으로서 마킹하는 단계;
상기 로컬 점유 그리드 셀들 각각에 대해,
상기 전역 점유 그리드 상의 상기 로컬 점유 그리드 셀의 위치를 계산하는 단계;
상기 위치에서의 상기 전역 점유 그리드 셀로부터의 제1 점유 확률에 액세스하는 단계;
상기 위치에서의 상기 로컬 점유 그리드 셀로부터의 제2 점유 확률에 액세스하는 단계; 및
상기 제1 점유 확률 및 상기 제2 점유 확률에 적어도 기초하여 상기 전역 점유 그리드 상의 상기 위치에서의 새로운 점유 확률을 계산하는 단계를 포함하는,
방법.A method for managing a global occupancy grid for autonomous devices, comprising:
The global occupancy grid includes global occupancy grid cells, wherein the global occupancy grid cells are associated with an occupancy probability, the method comprising:
receiving sensor data from sensors associated with the autonomous device;
generating a local occupancy grid based at least on the sensor data, the locally occupied grid having locally occupied grid cells;
When the autonomous device moves from the first area to the second area,
accessing historical data associated with the second area;
generating a static grid based at least on the historical data;
moving the global occupancy grid to maintain the autonomous device in a central position of the global occupancy grid;
updating the moved global occupancy grid based on the static grid;
if at least one of the globally occupied grid cells matches the location of the autonomous device, then marking at least one of the globally occupied grid cells as unoccupied;
For each of the locally occupied grid cells,
calculating a position of the locally occupied grid cell on the global occupied grid;
accessing a first occupancy probability from the global occupancy grid cell at the location;
accessing a second occupancy probability from the locally occupied grid cell at the location; and
calculating a new occupancy probability at the location on the global occupancy grid based at least on the first occupancy probability and the second occupancy probability;
method.
상기 새로운 점유 확률을 범위-체크하는 단계를 더 포함하는, 방법.23. The method of claim 22,
range-checking the new occupancy probability.
상기 범위-체크는,
상기 새로운 점유 확률 < 0 이면 상기 새로운 점유 확률을 0으로 설정하는 단계; 및
상기 새로운 점유 확률 > 1 이면 상기 새로운 점유 확률을 1로 설정하는 단계를 포함하는, 방법.24. The method of claim 23,
The range-check is,
setting the new occupation probability to 0 if the new occupation probability <0; and
setting the new occupancy probability to 1 if the new occupancy probability>1.
상기 전역 점유 그리드 셀을 상기 새로운 점유 확률로 설정하는 단계를 더 포함하는, 방법.23. The method of claim 22,
and setting the global occupancy grid cell to the new occupancy probability.
상기 전역 점유 그리드 셀을 상기 범위-체크된 새로운 점유 확률로 설정하는 단계를 더 포함하는, 방법.24. The method of claim 23,
and setting the global occupancy grid cell to the range-checked new occupancy probability.
로컬 점유 그리드 생성 노드에 의해, 센서 측정치들을 디바이스와 연관된 기준의 프레임으로 변환하는 단계;
타임-스탬프된 측정 점유 그리드를 생성하는 단계;
상기 타임-스탬프된 측정 점유 그리드를 로컬 점유 그리드로서 게시하는 단계;
복수의 로컬 점유 그리드들을 생성하는 단계;
저장소에서의 표면 특성들에 기초하여 정적 점유 그리드를 생성하는 단계―상기 표면 특성들은 상기 디바이스의 위치와 연관됨―;
상기 디바이스 및 상기 로컬 점유 그리드를 상기 전역 점유 그리드에 대해 대략 중심에 유지하도록 상기 디바이스의 상기 위치와 연관된 전역 점유 그리드를 이동시키는 단계;
상기 정적 점유 그리드로부터의 정보를 상기 전역 점유 그리드에 추가하는 단계;
상기 디바이스에 의해 현재 점유된 상기 전역 점유 그리드에서의 영역을 비점유된 것으로서 마킹하는 단계;
각각의 로컬 점유 그리드에서의 적어도 하나의 셀 각각에 대해,
상기 전역 점유 그리드에서의 상기 적어도 하나의 셀의 위치를 결정하는 단계;
상기 위치에서의 제1 값에 액세스하는 단계;
상기 로컬 점유 그리드에서의 상기 적어도 하나의 셀에서의 셀 값과 상기 제1 값 사이의 관계에 기초하여 상기 위치에서의 제2 값을 결정하는 단계;
상기 제2 값을 미리 선택된 확률 범위와 비교하는 단계; 및
확률 값이 상기 미리 선택된 확률 범위 내에 있다면 상기 전역 점유 그리드를 상기 새로운 값으로 설정하는 단계를 포함하는,
방법.A method for creating and managing occupancy grids, comprising:
converting, by the local occupancy grid generating node, the sensor measurements into a frame of reference associated with the device;
generating a time-stamped measurement occupancy grid;
publishing the time-stamped measurement occupancy grid as a local occupancy grid;
creating a plurality of local occupancy grids;
generating a static occupancy grid based on surface properties in a repository, wherein the surface properties are associated with a location of the device;
moving a global occupancy grid associated with the location of the device to maintain the device and the local occupancy grid approximately centered relative to the global occupancy grid;
adding information from the static occupancy grid to the global occupancy grid;
marking an area in the global occupancy grid currently occupied by the device as unoccupied;
for each of the at least one cell in each local occupancy grid,
determining a location of the at least one cell in the global occupancy grid;
accessing a first value at the location;
determining a second value at the location based on a relationship between the first value and a cell value in the at least one cell in the local occupancy grid;
comparing the second value to a preselected range of probability; and
setting the global occupancy grid to the new value if a probability value is within the preselected probability range;
method.
상기 전역 점유 그리드를 게시하는 단계를 더 포함하는, 방법.28. The method of claim 27,
and posting the global occupancy grid.
상기 표면 특성들은 표면 타입 및 표면 불연속성들을 포함하는, 방법.28. The method of claim 27,
wherein the surface properties include a surface type and surface discontinuities.
상기 관계는 합산을 포함하는, 방법.28. The method of claim 27,
wherein the relationship comprises a summation.
적어도 하나의 로컬 점유 그리드를 생성하는 복수의 로컬 그리드 생성 노드들―상기 적어도 하나의 로컬 점유 그리드는 디바이스의 위치와 연관되고, 상기 적어도 하나의 로컬 점유 그리드는 적어도 하나의 셀을 포함함―;
상기 적어도 하나의 로컬 점유 그리드에 액세스하는 전역 점유 그리드 관리자를 포함하고,
상기 전역 점유 그리드 관리자는,
저장소에서의 표면 특성들에 기초하여 정적 점유 그리드를 생성하고―상기 표면 특성들은 상기 디바이스의 상기 위치와 연관됨―;
상기 디바이스 및 적어도 하나의 로컬 점유 그리드를 상기 전역 점유 그리드에 대해 대략 중심에 유지하도록 상기 디바이스의 상기 위치와 연관된 전역 점유 그리드를 이동시키고;
상기 정적 점유 그리드로부터의 정보를 적어도 하나의 전역 점유 그리드에 추가하고;
상기 디바이스에 의해 현재 점유된 상기 전역 점유 그리드에서의 영역을 비점유된 것으로서 마킹하고;
각각의 로컬 점유 그리드에서의 상기 적어도 하나의 셀 각각에 대해,
상기 전역 점유 그리드에서의 상기 적어도 하나의 셀의 위치를 결정하고;
상기 위치에서의 제1 값에 액세스하고;
상기 로컬 점유 그리드에서의 상기 적어도 하나의 셀에서의 셀 값과 상기 제1 값 사이의 관계에 기초하여 상기 위치에서의 제2 값을 결정하고;
상기 제2 값을 미리 선택된 확률 범위와 비교하고;
확률 값이 상기 미리 선택된 확률 범위 내에 있다면 상기 전역 점유 그리드를 상기 새로운 값으로 설정하는,
시스템.A system for creating and managing occupancy grids, comprising:
a plurality of local grid generating nodes generating at least one local occupancy grid, wherein the at least one local occupancy grid is associated with a location of a device, the at least one local occupancy grid comprising at least one cell;
a global occupancy grid manager accessing the at least one local occupancy grid;
The global occupancy grid manager,
create a static occupancy grid based on surface properties in the repository, wherein the surface properties are associated with the location of the device;
move a global occupancy grid associated with the location of the device to maintain the device and at least one local occupancy grid approximately centered relative to the global occupancy grid;
add information from the static occupancy grid to at least one global occupancy grid;
mark an area in the global occupancy grid currently occupied by the device as unoccupied;
for each of said at least one cell in each local occupancy grid,
determine a location of the at least one cell in the global occupancy grid;
access a first value at the location;
determine a second value at the location based on a relationship between the first value and a cell value in the at least one cell in the local occupancy grid;
compare the second value to a preselected range of probability;
setting the global occupancy grid to the new value if a probability value is within the preselected probability range;
system.
자율 디바이스가 새로운 위치로 이동한 경우, 상기 새로운 위치와 연관된 정적 그리드로부터의 정보로 상기 전역 점유 그리드를 업데이트하는 단계;
상기 새로운 위치에서의 표면들을 분석하는 단계;
상기 표면들이 드라이빙가능한 경우, 상기 표면들을 업데이트하고 상기 업데이트된 표면들로 상기 전역 점유 그리드를 업데이트하는 단계; 및
정적 값들의 저장소로부터의 값들로 상기 전역 점유 그리드를 업데이트하는 단계―상기 정적 값들은 상기 새로운 위치와 연관됨―를 포함하는,
방법.A method for updating a global occupancy grid, comprising:
when an autonomous device has moved to a new location, updating the global occupancy grid with information from a static grid associated with the new location;
analyzing the surfaces at the new location;
if the surfaces are drivable, updating the surfaces and updating the global occupancy grid with the updated surfaces; and
updating the global occupancy grid with values from a repository of static values, wherein the static values are associated with the new location.
method.
상기 표면들을 업데이트하는 단계는,
상기 새로운 위치와 연관된 로컬 점유 그리드에 액세스하는 단계;
상기 로컬 점유 그리드에서의 각각의 셀에 대해,
로컬 점유 그리드 표면 분류 신뢰도 값 및 로컬 점유 그리드 표면 분류에 액세스하는 단계;
상기 로컬 점유 그리드 표면 분류가 상기 셀에서의 상기 전역 점유 그리드에서의 전역 표면 분류와 동일한 경우, 상기 전역 점유 그리드에서의 전역 표면 분류 신뢰도 값을 상기 로컬 점유 그리드 표면 분류 신뢰도 값에 추가하여 합계를 형성하고, 상기 합계로 상기 셀에서의 상기 전역 점유 그리드를 업데이트하는 단계;
상기 로컬 점유 그리드 표면 분류가 상기 셀에서의 상기 전역 점유 그리드에서의 상기 전역 표면 분류와 동일하지 않은 경우, 상기 전역 점유 그리드에서의 상기 전역 표면 분류 신뢰도 값으로부터 상기 로컬 점유 그리드 표면 분류 신뢰도 값을 감산하여 차이를 형성하고, 상기 차이로 상기 전역 점유 그리드를 업데이트하는 단계;
상기 차이가 0보다 작은 경우, 상기 로컬 점유 그리드 표면 분류로 상기 전역 점유 그리드를 업데이트하는 단계를 포함하는, 방법.33. The method of claim 32,
Updating the surfaces comprises:
accessing a local occupancy grid associated with the new location;
For each cell in the local occupancy grid,
accessing the locally occupied grid surface classification confidence value and the locally occupied grid surface classification;
If the local occupancy grid surface classification is the same as the global surface classification in the global occupancy grid in the cell, a global surface classification confidence value in the global occupancy grid is added to the locally occupied grid surface classification confidence value to form a sum and updating the global occupancy grid in the cell with the sum;
If the local occupancy grid surface classification is not the same as the global surface classification in the global occupancy grid in the cell, subtract the local occupancy grid surface classification confidence value from the global surface classification confidence value in the global occupancy grid forming a difference and updating the global occupancy grid with the difference;
if the difference is less than zero, updating the global occupancy grid with the local occupancy grid surface classification.
정적 값들의 상기 저장소로부터의 값들로 상기 전역 점유 그리드를 업데이트하는 단계는,
로컬 점유 그리드에서의 각각의 셀에 대해,
상기 로컬 점유 그리드로부터, 상기 셀이 점유되어 있는 로컬 점유 그리드 확률 값, 로그오즈 값에 액세스하는 단계;
상기 셀에서의 상기 로컬 점유 그리드 로그오즈 값으로 상기 전역 점유 그리드에서의 상기 로그오즈 값을 업데이트하는 단계;
상기 셀이 점유되어 있지 않다는 미리 선택된 확실성이 충족되는 경우, 및 상기 자율 디바이스가 차선 장벽들 내에서 이동하고 있는 경우, 및 로컬 점유 그리드 표면 분류가 드라이빙가능 표면을 표시하는 경우, 상기 셀이 상기 로컬 점유 그리드에서 점유되어 있는 상기 로그오즈를 감소시키는 단계;
상기 자율 디바이스가 비교적 균일한 표면들을 만날 것으로 예상하는 경우, 및 상기 로컬 점유 그리드 표면 분류가 비교적 불균일한 표면을 표시하는 경우, 상기 로컬 점유 그리드에서의 상기 로그오즈를 증가시키는 단계; 및
상기 자율 디바이스가 비교적 균일한 표면들을 만날 것으로 예상하는 경우, 및 상기 로컬 점유 그리드 표면 분류가 비교적 균일한 표면을 표시하는 경우, 상기 로컬 점유 그리드에서의 상기 로그오즈를 감소시키는 단계를 포함하는, 방법.33. The method of claim 32,
Updating the global occupancy grid with values from the repository of static values comprises:
For each cell in the local occupancy grid,
accessing, from the local occupancy grid, a local occupancy grid probability value, a log odds value, in which the cell is occupied;
updating the log odds value in the global occupancy grid with the local occupancy grid log odds value in the cell;
If the preselected certainty that the cell is not occupied is met, and if the autonomous device is moving within lane barriers, and if a locally occupied grid surface classification indicates a drivable surface, the cell is reducing the log odds occupied in an occupancy grid;
increasing the log odds in the locally occupied grid if the autonomous device expects to encounter relatively uniform surfaces, and if the locally occupied grid surface classification indicates a relatively non-uniform surface; and
reducing the log odds in the locally occupied grid if the autonomous device expects to encounter relatively uniform surfaces, and if the locally occupied grid surface classification indicates a relatively uniform surface. .
상기 디바이스는 섀시, 적어도 4개의 휠들, 상기 적어도 4개의 휠들 중 적어도 하나와 동작가능하게 결합된 상기 섀시의 제1 측, 및 상기 적어도 4개의 휠들 중 적어도 하나와 동작가능하게 결합된 상기 섀시의 대향하는 제2 측을 포함하고, 상기 방법은,
이전의 표면 피처들 및 점유 그리드에 적어도 기초하여 맵을 생성하는 단계―상기 맵은 비실시간으로 생성되고, 상기 맵은 적어도 하나의 위치를 포함하며, 상기 적어도 하나의 위치는 적어도 하나의 표면 피처와 연관되고, 상기 적어도 하나의 표면 피처는 적어도 하나의 표면 분류 및 적어도 하나의 모드와 연관됨―;
상기 디바이스가 이동함에 따라 현재 표면 피처들을 결정하는 단계;
상기 현재 표면 피처들로 상기 점유 그리드를 실시간으로 업데이트하는 단계;
상기 점유 그리드 및 상기 맵으로부터, 상기 디바이스가 상기 적어도 하나의 표면 피처를 횡단하기 위해 이동할 수 있는 경로를 결정하는 단계를 포함하는,
방법.A method for real-time control of a configuration of a device, comprising:
The device includes a chassis, at least four wheels, a first side of the chassis operatively coupled with at least one of the at least four wheels, and an opposite side of the chassis operatively coupled with at least one of the at least four wheels. A second side comprising:
generating a map based at least on previous surface features and an occupancy grid, wherein the map is generated in non-real time, the map includes at least one location, the at least one location includes at least one surface feature and associated, wherein the at least one surface feature is associated with at least one surface classification and at least one mode;
determining current surface features as the device moves;
updating the occupancy grid with the current surface features in real time;
determining, from the occupancy grid and the map, a path the device can travel to traverse the at least one surface feature;
method.
상기 디바이스는 섀시, 적어도 4개의 휠들, 상기 적어도 4개의 휠들 중 적어도 하나와 동작가능하게 결합된 상기 섀시의 제1 측, 및 상기 적어도 4개의 휠들 중 적어도 하나와 동작가능하게 결합된 상기 섀시의 대향하는 제2 측을 포함하고, 상기 방법은,
환경 데이터를 수신하는 단계;
상기 환경 데이터에 적어도 기초하여 표면 타입을 결정하는 단계;
상기 표면 타입 및 제1 구성에 적어도 기초하여 모드를 결정하는 단계;
상기 모드 및 상기 표면 타입에 적어도 기초하여 제2 구성을 결정하는 단계;
상기 제2 구성에 적어도 기초하여 이동 명령들을 결정하는 단계; 및
상기 디바이스를 상기 제1 구성으로부터 상기 제2 구성으로 변경하기 위해 상기 이동 명령들을 이용하여 상기 디바이스의 상기 구성을 제어하는 단계를 포함하는,
방법.A method for real-time control of a configuration of a device, comprising:
The device includes a chassis, at least four wheels, a first side of the chassis operatively coupled with at least one of the at least four wheels, and an opposite side of the chassis operatively coupled with at least one of the at least four wheels. A second side comprising:
receiving environmental data;
determining a surface type based at least on the environmental data;
determining a mode based at least on the surface type and the first configuration;
determining a second configuration based at least on the mode and the surface type;
determining movement instructions based at least on the second configuration; and
controlling the configuration of the device using the move commands to change the device from the first configuration to the second configuration;
method.
상기 환경 데이터는 RGB-D 이미지 데이터를 포함하는, 방법.37. The method of claim 36,
wherein the environmental data comprises RGB-D image data.
상기 표면 타입 및 상기 모드에 적어도 기초하여 점유 그리드를 채우는 단계; 및
상기 점유 그리드에 적어도 기초하여 상기 이동 명령들을 결정하는 단계를 더 포함하는, 방법.37. The method of claim 36,
populating the occupancy grid based at least on the surface type and the mode; and
and determining the movement instructions based at least on the occupancy grid.
상기 점유 그리드는 적어도 하나의 이미지 센서로부터의 데이터에 적어도 기초한 정보를 포함하는, 방법.39. The method of claim 38,
wherein the occupancy grid includes information based at least on data from at least one image sensor.
상기 환경 데이터는 노면의 토폴로지를 포함하는, 방법.37. The method of claim 36,
wherein the environmental data includes a topology of the road surface.
상기 구성은 상기 적어도 4개의 휠들의 클러스터링된 2개의 쌍들을 포함하고, 상기 2개의 쌍들 중 제1 쌍은 상기 제1 측 상에 위치되고, 상기 2개의 쌍들 중 제2 쌍은 상기 제2 측 상에 위치되고, 상기 제1 쌍은 제1 전방 휠 및 제1 후방 휠을 포함하고, 상기 제2 쌍은 제2 전방 휠 및 제2 후방 휠을 포함하는, 방법.37. The method of claim 36,
The configuration includes clustered two pairs of the at least four wheels, a first one of the two pairs positioned on the first side, a second one of the two pairs on the second side wherein the first pair comprises a first front wheel and a first rear wheel, and the second pair comprises a second front wheel and a second rear wheel.
상기 구성을 제어하는 단계는,
상기 환경 데이터에 적어도 기초하여 상기 제1 쌍 및 상기 제2 쌍에 조정된 전력을 공급하는 단계를 포함하는, 방법.42. The method of claim 41,
The step of controlling the configuration comprises:
and supplying adjusted power to the first pair and the second pair based at least on the environmental data.
상기 구성을 제어하는 단계는,
상기 적어도 4개의 휠들 및 수축된 캐스터들의 쌍을 구동하는 것―상기 캐스터들의 쌍은 상기 섀시에 동작가능하게 결합됨―으로부터, 상기 제1 전방 휠 및 상기 제2 전방 휠을 들어올리기 위해 상기 클러스터링된 제1 쌍 및 상기 클러스터링된 제2 쌍이 회전된 2개의 휠들을 구동하는 것으로 전환하는 단계―상기 디바이스는 상기 제1 후방 휠, 상기 제2 후방 휠, 및 상기 캐스터들의 쌍 상에 놓임―를 포함하는, 방법.42. The method of claim 41,
The step of controlling the configuration comprises:
the clustered front wheel to lift the first front wheel and the second front wheel from driving the at least four wheels and a pair of retracted casters, the pair of casters being operatively coupled to the chassis. converting the first pair and the clustered second pair to driving two wheels rotated, the device resting on the pair of the first rear wheel, the second rear wheel, and the casters; , method.
상기 구성을 제어하는 단계는,
상기 환경 데이터에 적어도 기초하여 상기 제1 측 상의 제1의 2개의 전동 휠들 및 상기 제2 측 상의 제2의 2개의 전동 휠들과 동작가능하게 결합된 클러스터들의 쌍을 회전시키는 단계를 포함하는, 방법.42. The method of claim 41,
The step of controlling the configuration comprises:
rotating a pair of clusters operatively coupled with first two powered wheels on the first side and second two powered wheels on the second side based at least on the environmental data; .
상기 디바이스는 화물 컨테이너를 더 포함하고, 상기 화물 컨테이너는 상기 섀시 상에 장착되고, 상기 섀시는 상기 화물 컨테이너의 높이를 제어하는, 방법.37. The method of claim 36,
The device further comprises a cargo container, wherein the cargo container is mounted on the chassis, the chassis controlling a height of the cargo container.
상기 화물 컨테이너의 상기 높이는 상기 환경 데이터에 적어도 기초하는, 방법.46. The method of claim 45,
and the height of the freight container is based at least on the environmental data.
상기 디바이스는 섀시, 적어도 4개의 휠들, 상기 섀시의 제1 측, 및 상기 섀시의 대향하는 제2 측을 포함하고, 상기 시스템은,
상기 디바이스를 둘러싸는 실시간 환경 데이터를 수신하는 디바이스 프로세서―상기 디바이스 프로세서는 상기 환경 데이터에 적어도 기초하여 표면 타입을 결정하고, 상기 디바이스 프로세서는 상기 표면 타입 및 제1 구성에 적어도 기초하여 모드를 결정하고, 상기 디바이스 프로세서는 상기 모드 및 상기 표면 타입에 적어도 기초하여 제2 구성을 결정함―; 및
상기 제2 구성에 적어도 기초하여 이동 명령들을 결정하는 파워 베이스 프로세서―상기 파워 베이스 프로세서는 상기 디바이스를 상기 제1 구성으로부터 상기 제2 구성으로 변경하기 위해 상기 이동 명령들을 이용함으로써 상기 디바이스의 상기 구성을 제어함―를 포함하는,
시스템.A system for real-time control of the configuration of a device, comprising:
The device comprises a chassis, at least four wheels, a first side of the chassis, and an opposite second side of the chassis, the system comprising:
a device processor receiving real-time environmental data surrounding the device, wherein the device processor determines a surface type based at least on the environmental data, the device processor determines a mode based at least on the surface type and a first configuration; , the device processor determines a second configuration based at least on the mode and the surface type; and
a power base processor that determines move instructions based at least on the second configuration, wherein the power base processor configures the configuration of the device by using the move instructions to change the device from the first configuration to the second configuration. control, including
system.
상기 환경 데이터는 RGB-D 이미지 데이터를 포함하는, 시스템.48. The method of claim 47,
wherein the environment data comprises RGB-D image data.
상기 디바이스 프로세서는 상기 표면 타입 및 상기 모드에 적어도 기초하여 점유 그리드를 채우는 것을 포함하는, 시스템.48. The method of claim 47,
and the device processor populates the occupancy grid based at least on the surface type and the mode.
상기 파워 베이스 프로세서는 상기 점유 그리드에 적어도 기초하여 상기 이동 명령들을 결정하는 것을 포함하는, 시스템.50. The method of claim 49,
and the power base processor determines the movement instructions based at least on the occupancy grid.
상기 점유 그리드는 적어도 하나의 이미지 센서로부터의 데이터에 적어도 기초한 정보를 포함하는, 시스템.50. The method of claim 49,
wherein the occupancy grid includes information based at least on data from at least one image sensor.
상기 환경 데이터는 노면의 토폴로지를 포함하는, 시스템.48. The method of claim 47,
wherein the environmental data includes a topology of the road surface.
상기 구성은 상기 적어도 4개의 휠들의 클러스터링된 2개의 쌍들을 포함하고, 상기 2개의 쌍들 중 제1 쌍은 상기 제1 측 상에 위치되고, 상기 2개의 쌍들 중 제2 쌍은 상기 제2 측 상에 위치되고, 상기 제1 쌍은 제1 전방 휠 및 제1 후방 휠을 갖고, 상기 제2 쌍은 제2 전방 휠 및 제2 후방 휠을 갖는, 시스템.48. The method of claim 47,
The configuration includes clustered two pairs of the at least four wheels, a first one of the two pairs positioned on the first side, a second one of the two pairs on the second side wherein the first pair has a first front wheel and a first rear wheel and the second pair has a second front wheel and a second rear wheel.
상기 구성의 제어는,
상기 환경 데이터에 적어도 기초하여 상기 제1 쌍 및 상기 제2 쌍에 조정된 전력을 공급하는 것을 포함하는, 시스템.54. The method of claim 53,
The control of the configuration is,
and supplying adjusted power to the first pair and the second pair based at least on the environmental data.
상기 구성의 제어는, 상기 적어도 4개의 휠들 및 수축된 캐스터들의 쌍을 구동하는 것―상기 캐스터들의 쌍은 상기 섀시에 동작가능하게 결합됨―으로부터, 상기 제1 전방 휠 및 상기 제2 전방 휠을 들어올리기 위해 상기 클러스터링된 제1 쌍 및 상기 클러스터링된 제2 쌍이 회전된 2개의 휠들을 구동하는 것으로 전환하는 것―상기 디바이스는 상기 제1 후방 휠, 상기 제2 후방 휠, 및 상기 캐스터들의 쌍 상에 놓임―을 포함하는, 시스템.54. The method of claim 53,
Control of the configuration may include controlling the first front wheel and the second front wheel from driving the at least four wheels and a pair of retracted casters, the pair of casters operatively coupled to the chassis. converting the clustered first pair and the clustered second pair to driving two wheels rotated for lifting, wherein the device is disposed on the first rear wheel, the second rear wheel, and the pair of casters. A system comprising — placed on.
자율 디바이스의 제1 위치를 위치결정하는 단계;
상기 자율 디바이스가 상기 전역 점유 그리드 및 로컬 점유 그리드와 연관되는 제2 위치로 이동할 때,
상기 제1 위치와 연관된 적어도 하나의 점유 확률 값으로 상기 전역 점유 그리드를 업데이트하는 단계;
상기 로컬 점유 그리드와 연관된 적어도 하나의 드라이빙가능 표면으로 상기 전역 점유 그리드를 업데이트하는 단계;
상기 적어도 하나의 드라이빙가능 표면과 연관된 표면 신뢰도들로 상기 전역 점유 그리드를 업데이트하는 단계;
제1 베이지안 함수를 이용하여 상기 적어도 하나의 점유 확률 값의 로그오즈로 상기 전역 점유 그리드를 업데이트하는 단계; 및
상기 제2 위치와 연관된 특성들에 적어도 기초하여 상기 로그오즈를 조정하는 단계; 및
상기 자율 디바이스가 상기 제1 위치에서 유지되고, 상기 전역 점유 그리드 및 상기 로컬 점유 그리드가 함께 위치될 때,
상기 로컬 점유 그리드와 연관된 상기 적어도 하나의 드라이빙가능 표면으로 상기 전역 점유 그리드를 업데이트하는 단계;
상기 적어도 하나의 드라이빙가능 표면과 연관된 상기 표면 신뢰도들로 상기 전역 점유 그리드를 업데이트하는 단계;
제2 베이지안 함수를 이용하여 상기 적어도 하나의 점유 확률 값의 상기 로그오즈로 상기 전역 점유 그리드를 업데이트하는 단계; 및
상기 제2 위치와 연관된 특성들에 적어도 기초하여 상기 로그오즈를 조정하는 단계를 포함하는,
방법.A method for maintaining a global occupancy grid comprising:
locating a first location of the autonomous device;
when the autonomous device moves to a second location associated with the global occupancy grid and the local occupancy grid;
updating the global occupancy grid with at least one occupancy probability value associated with the first location;
updating the global occupancy grid with at least one drivable surface associated with the local occupancy grid;
updating the global occupancy grid with surface confidences associated with the at least one drivable surface;
updating the global occupancy grid with the log odds of the at least one occupancy probability value using a first Bayesian function; and
adjusting the log odds based at least on characteristics associated with the second location; and
when the autonomous device is maintained in the first position and the global occupancy grid and the local occupancy grid are co-located;
updating the global occupancy grid with the at least one drivable surface associated with the local occupancy grid;
updating the global occupancy grid with the surface confidence levels associated with the at least one drivable surface;
updating the global occupancy grid with the log odds of the at least one occupancy probability value using a second Bayesian function; and
adjusting the log odds based at least on characteristics associated with the second location;
method.
상기 맵을 생성하는 단계는,
상기 표면을 나타내는 포인트 클라우드 데이터에 액세스하는 단계;
상기 포인트 클라우드 데이터를 필터링하는 단계;
상기 필터링된 포인트 클라우드 데이터를 처리가능 부분들로 형성하는 단계;
상기 처리가능 부분들을 적어도 하나의 오목 다각형으로 병합하는 단계;
상기 적어도 하나의 오목 다각형에서 상기 적어도 하나의 SDSF를 위치결정 및 라벨링하는 단계―상기 위치결정 및 라벨링하는 단계는 라벨링된 포인트 클라우드 데이터를 형성함―;
상기 적어도 하나의 오목 다각형에 적어도 기초하여 그래핑 다각형들을 생성하는 단계; 및
상기 그래핑 다각형들에 적어도 기초하여 시작 포인트로부터 종료 포인트까지의 상기 경로를 선택하는 단계―상기 AV는 상기 경로를 따라 상기 적어도 하나의 SDSF를 횡단함―를 포함하는, 방법.36. The method of claim 35,
Creating the map includes:
accessing point cloud data representing the surface;
filtering the point cloud data;
forming the filtered point cloud data into processable portions;
merging the processable portions into at least one concave polygon;
locating and labeling the at least one SDSF in the at least one concave polygon, wherein the locating and labeling forms labeled point cloud data;
generating graphing polygons based at least on the at least one concave polygon; and
selecting the path from a start point to an end point based at least on the graphing polygons, wherein the AV traverses the at least one SDSF along the path.
상기 포인트 클라우드 데이터를 필터링하는 단계는,
상기 포인트 클라우드 데이터로부터 과도 물체들을 나타내는 포인트들 및 이상치들을 나타내는 포인트들을 조건부로 제거하는 단계; 및
미리 선택된 높이를 갖는 상기 제거된 포인트들을 대체하는 단계를 포함하는, 방법.58. The method of claim 57,
The step of filtering the point cloud data,
conditionally removing points representing transient objects and points representing outliers from the point cloud data; and
replacing the removed points with a preselected height.
상기 처리가능 부분들을 형성하는 단계는,
상기 포인트 클라우드 데이터를 상기 처리가능 부분들로 세그먼트화하는 단계; 및
미리 선택된 높이의 포인트들을 상기 처리가능 부분들로부터 제거하는 단계를 포함하는, 방법.58. The method of claim 57,
Forming the processable portions comprises:
segmenting the point cloud data into the processable portions; and
and removing points of a preselected height from the processable portions.
상기 처리가능 부분들을 병합하는 단계는,
이상치들, 복셀들, 및 법선들을 분석함으로써 상기 처리가능 부분들의 크기를 감소시키는 단계;
상기 감소된 크기의 처리가능 부분들로부터 영역들을 성장시키는 단계;
상기 성장된 영역들로부터 초기 드라이빙가능 표면들을 결정하는 단계;
상기 초기 드라이빙가능 표면들을 세그먼트화 및 메싱하는 단계;
상기 세그먼트화 및 메싱된 초기 드라이빙가능 표면들 내에 다각형들을 위치결정하는 단계; 및
상기 다각형들에 적어도 기초하여 적어도 하나의 드라이빙가능 표면을 설정하는 단계를 포함하는, 방법.58. The method of claim 57,
The step of merging the processable parts comprises:
reducing the size of the processable portions by analyzing outliers, voxels, and normals;
growing regions from the reduced size processable portions;
determining initial drivable surfaces from the grown regions;
segmenting and meshing the initially drivable surfaces;
positioning polygons within the segmented and meshed initial drivable surfaces; and
and setting at least one drivable surface based at least on the polygons.
상기 적어도 하나의 SDSF를 위치결정 및 라벨링하는 단계는,
SDSF 필터에 따라 상기 초기 드라이빙가능 표면들의 상기 포인트 클라우드 데이터를 정렬하는 단계―상기 SDSF 필터는 포인트들의 적어도 3개의 카테고리들을 포함함―; 및
상기 포인트들의 적어도 3개의 카테고리들이, 조합하여, 적어도 하나의 제1 미리 선택된 기준을 충족하는지에 적어도 기초하여 적어도 하나의 SDSF 포인트를 위치결정하는 단계를 포함하는, 방법.61. The method of claim 60,
Positioning and labeling the at least one SDSF comprises:
sorting the point cloud data of the initial drivable surfaces according to an SDSF filter, the SDSF filter comprising at least three categories of points; and
locating at least one SDSF point based at least on whether the at least three categories of points, in combination, satisfy at least one first preselected criterion.
복수의 상기 적어도 하나의 SDSF 포인트가, 조합하여, 적어도 하나의 제2 미리 선택된 기준을 충족하는지에 적어도 기초하여 적어도 하나의 SDSF 궤적을 생성하는 단계를 더 포함하는, 방법.62. The method of claim 61,
generating at least one SDSF trajectory based at least on whether a plurality of the at least one SDSF points, in combination, satisfy at least one second preselected criterion.
상기 그래핑 다각형들을 생성하는 단계는,
상기 적어도 하나의 드라이빙가능 표면으로부터 적어도 하나의 다각형을 생성하는 단계―상기 적어도 하나의 다각형은 외부 에지들을 포함함―;
상기 외부 에지들을 평활화하는 단계;
상기 평활화된 외부 에지들에 기초하여 드라이빙 마진을 형성하는 단계;
상기 적어도 하나의 SDSF 궤적을 상기 적어도 하나의 드라이빙가능 표면에 추가하는 단계; 및
적어도 하나의 제3 미리 선택된 기준에 따라 상기 적어도 하나의 드라이빙가능 표면으로부터 내부 에지들을 제거하는 단계를 더 포함하는, 방법.63. The method of claim 62,
The step of generating the graphing polygons,
generating at least one polygon from the at least one drivable surface, the at least one polygon comprising outer edges;
smoothing the outer edges;
forming a driving margin based on the smoothed outer edges;
adding the at least one SDSF trajectory to the at least one drivable surface; and
and removing inner edges from the at least one drivable surface according to at least one third preselected criterion.
상기 외부 에지들을 평활화하는 단계는,
상기 외부 에지들을 바깥쪽으로 트리밍하여 바깥쪽 에지들을 형성하는 단계를 포함하는, 방법.64. The method of claim 63,
The smoothing of the outer edges comprises:
and trimming the outer edges outward to form outer edges.
상기 평활화된 외부 에지들의 드라이빙 마진을 형성하는 단계는,
상기 바깥쪽 에지들을 안쪽으로 트리밍하는 단계를 포함하는, 방법.64. The method of claim 63,
The step of forming a driving margin of the smoothed outer edges comprises:
and trimming the outer edges inward.
2개의 전동 전방 휠들, 2개의 전동 후방 휠들 및 에너지 저장소를 포함하는 파워 베이스―상기 파워 베이스는 명령된 속도로 이동하도록 구성됨―;
복수의 단거리 센서들을 포함하는 화물 플랫폼―상기 화물 플랫폼은 상기 파워 베이스에 기계적으로 부착됨―;
배송할 하나 이상의 물체를 수용하기 위한 볼륨을 갖는 화물 컨테이너―상기 화물 컨테이너는 상기 화물 플랫폼의 최상부 상에 장착됨―;
LIDAR 및 하나 이상의 카메라를 포함하는 장거리 센서 슈트―상기 장거리 센서 슈트는 상기 화물 컨테이너의 최상부 상에 장착됨―; 및
상기 장거리 센서 슈트 및 상기 복수의 단거리 센서들로부터 데이터를 수신하는 제어기를 포함하는,
자율 배송 차량.An autonomous delivery vehicle comprising:
a power base comprising two powered front wheels, two powered rear wheels and an energy storage, wherein the power base is configured to move at a commanded speed;
a cargo platform comprising a plurality of short-range sensors, the cargo platform mechanically attached to the power base;
a cargo container having a volume for receiving one or more objects to be shipped, the cargo container mounted on top of the cargo platform;
a long-range sensor chute comprising a LIDAR and one or more cameras, the long-range sensor chute mounted on top of the cargo container; and
a controller receiving data from the long range sensor suite and the plurality of short range sensors;
Autonomous delivery vehicle.
상기 복수의 단거리 센서들은 드라이빙가능 표면의 적어도 하나의 특성을 검출하는, 자율 배송 차량.67. The method of claim 66,
wherein the plurality of short-range sensors detect at least one characteristic of a drivable surface.
상기 복수의 단거리 센서들은 스테레오 카메라들인, 자율 배송 차량.67. The method of claim 66,
wherein the plurality of short-range sensors are stereo cameras.
상기 복수의 단거리 센서들은 IR 프로젝터, 2개의 이미지 센서들 및 RGB 센서를 포함하는, 자율 배송 차량.67. The method of claim 66,
wherein the plurality of short-range sensors comprises an IR projector, two image sensors and an RGB sensor.
상기 복수의 단거리 센서들은 레이더 센서들인, 자율 배송 차량.67. The method of claim 66,
wherein the plurality of short-range sensors are radar sensors.
상기 단거리 센서들은 RGB-D 데이터를 상기 제어기에 공급하는, 자율 배송 차량.67. The method of claim 66,
and the short-range sensors supply RGB-D data to the controller.
상기 제어기는 상기 복수의 단거리 센서들로부터 수신된 RGB-D 데이터에 기초하여 노면의 기하구조를 결정하는, 자율 배송 차량.67. The method of claim 66,
and the controller determines the geometry of the road surface based on RGB-D data received from the plurality of short-range sensors.
상기 복수의 단거리 센서들은 상기 자율 배송 차량의 4미터 이내의 물체들을 검출하고, 상기 장거리 센서 슈트는 상기 자율 배송 차량으로부터 4미터보다 더 떨어져 있는 물체들을 검출하는, 자율 배송 차량.67. The method of claim 66,
wherein the plurality of short-range sensors detect objects within 4 meters of the autonomous delivery vehicle and the long-range sensor suite detects objects that are more than 4 meters away from the autonomous delivery vehicle.
적어도 2개의 전동 후방 휠들, 캐스터 전방 휠들 및 에너지 저장소를 포함하는 파워 베이스―상기 파워 베이스는 명령된 속도로 이동하도록 구성됨―;
복수의 단거리 센서들을 포함하는 화물 플랫폼―상기 화물 플랫폼은 상기 파워 베이스에 기계적으로 부착됨―;
배송할 하나 이상의 물체를 수용하기 위한 볼륨을 갖는 화물 컨테이너―상기 화물 컨테이너는 상기 화물 플랫폼의 최상부 상에 장착됨―;
LIDAR 및 하나 이상의 카메라를 포함하는 장거리 센서 슈트―상기 장거리 센서 슈트는 상기 화물 컨테이너의 최상부 상에 장착됨―; 및
상기 장거리 센서 슈트 및 상기 복수의 단거리 센서들로부터 데이터를 수신하는 제어기를 포함하는,
자율 배송 차량.An autonomous delivery vehicle comprising:
a power base comprising at least two powered rear wheels, caster front wheels and an energy store, wherein the power base is configured to move at a commanded speed;
a cargo platform comprising a plurality of short-range sensors, the cargo platform mechanically attached to the power base;
a cargo container having a volume for receiving one or more objects to be shipped, the cargo container mounted on top of the cargo platform;
a long-range sensor chute comprising a LIDAR and one or more cameras, the long-range sensor chute mounted on top of the cargo container; and
a controller receiving data from the long range sensor suite and the plurality of short range sensors;
Autonomous delivery vehicle.
상기 복수의 단거리 센서들은 드라이빙가능 표면의 적어도 하나의 특성을 검출하는, 자율 배송 차량.75. The method of claim 74,
wherein the plurality of short-range sensors detect at least one characteristic of a drivable surface.
상기 복수의 단거리 센서들은 스테레오 카메라들인, 자율 배송 차량.75. The method of claim 74,
wherein the plurality of short-range sensors are stereo cameras.
상기 복수의 단거리 센서들은 IR 프로젝터, 2개의 이미지 센서들 및 RGB 센서를 포함하는, 자율 배송 차량.75. The method of claim 74,
wherein the plurality of short-range sensors comprises an IR projector, two image sensors and an RGB sensor.
상기 복수의 단거리 센서들은 레이더 센서들인, 자율 배송 차량.75. The method of claim 74,
wherein the plurality of short-range sensors are radar sensors.
상기 단거리 센서들은 RGB-D 데이터를 상기 제어기에 공급하는, 자율 배송 차량.75. The method of claim 74,
and the short-range sensors supply RGB-D data to the controller.
상기 제어기는 상기 복수의 단거리 센서들로부터 수신된 RGB-D 데이터에 기초하여 노면의 기하구조를 결정하는, 자율 배송 차량.75. The method of claim 74,
and the controller determines the geometry of the road surface based on RGB-D data received from the plurality of short-range sensors.
상기 복수의 단거리 센서들은 상기 자율 배송 차량의 4미터 이내의 물체들을 검출하고, 상기 장거리 센서 슈트는 상기 자율 배송 차량으로부터 4미터보다 더 떨어져 있는 물체들을 검출하는, 자율 배송 차량.75. The method of claim 74,
wherein the plurality of short-range sensors detect objects within 4 meters of the autonomous delivery vehicle and the long-range sensor suite detects objects that are more than 4 meters away from the autonomous delivery vehicle.
상기 캐스터 휠들이 지면으로부터 들어올려지는 동안, 지면과 맞물릴 수 있는 제2 세트의 전동 휠들을 더 포함하는, 자율 배송 차량.75. The method of claim 74,
and a second set of powered wheels capable of engaging the ground while the caster wheels are lifted from the ground.
적어도 2개의 전동 후방 휠들, 캐스터 전방 휠들 및 에너지 저장소를 포함하는 파워 베이스―상기 파워 베이스는 명령된 속도로 이동하도록 구성됨―;
상기 파워 베이스에 기계적으로 부착된 화물 플랫폼; 및
상기 화물 플랫폼에 장착되어 드라이빙가능 표면의 적어도 하나의 특성을 검출하는 단거리 카메라 조립체를 포함하고, 상기 단거리 카메라 조립체는,
카메라;
제1 라이트; 및
제1 액체 냉각 히트 싱크를 포함하고,
상기 제1 액체 냉각 히트 싱크는 상기 제1 라이트 및 상기 카메라를 냉각시키는,
자율 배송 차량.An autonomous delivery vehicle comprising:
a power base comprising at least two powered rear wheels, caster front wheels and an energy store, wherein the power base is configured to move at a commanded speed;
a cargo platform mechanically attached to the power base; and
a short-range camera assembly mounted to the cargo platform to detect at least one characteristic of a drivable surface, the short-range camera assembly comprising:
camera;
a first light; and
a first liquid cooling heat sink;
wherein the first liquid cooling heat sink cools the first light and the camera;
Autonomous delivery vehicle.
상기 단거리 카메라 조립체는 상기 카메라와 상기 액체 냉각 히트 싱크 사이에 열 전기 냉각기를 더 포함하는, 자율 배송 차량.84. The method of claim 83,
wherein the short-range camera assembly further comprises a thermoelectric cooler between the camera and the liquid cooled heat sink.
상기 제1 라이트 및 상기 카메라는 상기 제1 라이트로부터의 조명을 상기 카메라로부터 멀리 편향시키는 개구들을 갖는 커버에 리세스되는, 자율 배송 차량.84. The method of claim 83,
wherein the first light and the camera are recessed in a cover having openings that deflect illumination from the first light away from the camera.
상기 라이트들은 적어도 15°만큼 하방으로 각을 이루고, 보행자를 산만하게 하는 조명을 최소화하기 위해 커버에서 적어도 4mm 리세스되는, 자율 배송 차량.84. The method of claim 83,
wherein the lights are angled downwards by at least 15° and are recessed at least 4 mm in the cover to minimize lighting distracting pedestrians.
상기 카메라는 시야를 갖고, 상기 제1 라이트는 상기 카메라의 상기 시야를 조명하도록 확산되는 2개의 광 빔들을 생성하기 위한 렌즈들을 갖는 2개의 LED들을 포함하는, 자율 배송 차량.84. The method of claim 83,
wherein the camera has a field of view and the first light comprises two LEDs with lenses for generating two beams of light that are diffused to illuminate the field of view of the camera.
상기 라이트들은 대략 50° 이격하여 각을 이루고, 상기 렌즈들은 60° 빔을 생성하는, 자율 배송 차량.88. The method of claim 87,
wherein the lights are angled approximately 50° apart and the lenses produce a 60° beam.
상기 단거리 카메라 조립체는 상기 카메라 위에 장착된 초음파 센서를 포함하는, 자율 배송 차량.84. The method of claim 83,
and the short-range camera assembly includes an ultrasonic sensor mounted above the camera.
상기 단거리 카메라 조립체는 상기 화물 플랫폼의 전면 상의 중심 위치에 장착되는, 자율 배송 차량.84. The method of claim 83,
and the short-range camera assembly is mounted in a central location on the front of the cargo platform.
상기 화물 플랫폼의 전면의 적어도 하나의 코너 상에 장착된 적어도 하나의 코너 카메라 조립체를 더 포함하고, 상기 적어도 하나의 코너 카메라 조립체는,
초음파 센서;
코너 카메라;
제2 라이트; 및
제2 액체 냉각 히트 싱크를 포함하고,
상기 제2 액체 냉각 히트 싱크는 상기 제2 라이트 및 상기 코너 카메라를 냉각시키는, 자율 배송 차량.84. The method of claim 83,
at least one corner camera assembly mounted on at least one corner of the front side of the cargo platform, the at least one corner camera assembly comprising:
ultrasonic sensor;
corner camera;
a second light; and
a second liquid cooling heat sink;
and the second liquid cooling heat sink cools the second light and the corner camera.
상기 이력 데이터는 표면 데이터를 포함하는, 방법.23. The method of claim 22,
wherein the historical data comprises surface data.
상기 이력 데이터는 불연속성 데이터를 포함하는, 방법.23. The method of claim 22,
wherein the historical data comprises discontinuous data.
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962872396P | 2019-07-10 | 2019-07-10 | |
US201962872320P | 2019-07-10 | 2019-07-10 | |
US62/872,396 | 2019-07-10 | ||
US62/872,320 | 2019-07-10 | ||
US202062990485P | 2020-03-17 | 2020-03-17 | |
US62/990,485 | 2020-03-17 | ||
PCT/US2020/041711 WO2021007561A1 (en) | 2019-07-10 | 2020-07-10 | System and method for real time control of an autonomous device |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220034843A true KR20220034843A (en) | 2022-03-18 |
Family
ID=71944349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227004537A KR20220034843A (en) | 2019-07-10 | 2020-07-10 | Systems and methods for real-time control of autonomous devices |
Country Status (11)
Country | Link |
---|---|
EP (1) | EP3997484A1 (en) |
JP (2) | JP2022540640A (en) |
KR (1) | KR20220034843A (en) |
CN (1) | CN114270140A (en) |
AU (1) | AU2020310932A1 (en) |
BR (1) | BR112022000356A2 (en) |
CA (1) | CA3146648A1 (en) |
GB (1) | GB2600638A (en) |
IL (1) | IL289689A (en) |
MX (1) | MX2022000458A (en) |
WO (1) | WO2021007561A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102023001762A1 (en) | 2022-05-24 | 2023-11-30 | Sew-Eurodrive Gmbh & Co Kg | Mobile system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1161216B1 (en) | 1999-03-15 | 2005-08-03 | Deka Products Limited Partnership | Control system and method for wheelchair |
-
2020
- 2020-07-10 GB GB2201700.8A patent/GB2600638A/en active Pending
- 2020-07-10 JP JP2022501336A patent/JP2022540640A/en active Pending
- 2020-07-10 WO PCT/US2020/041711 patent/WO2021007561A1/en unknown
- 2020-07-10 AU AU2020310932A patent/AU2020310932A1/en active Pending
- 2020-07-10 KR KR1020227004537A patent/KR20220034843A/en unknown
- 2020-07-10 EP EP20750954.8A patent/EP3997484A1/en active Pending
- 2020-07-10 CA CA3146648A patent/CA3146648A1/en active Pending
- 2020-07-10 MX MX2022000458A patent/MX2022000458A/en unknown
- 2020-07-10 CN CN202080058758.4A patent/CN114270140A/en active Pending
- 2020-07-10 BR BR112022000356A patent/BR112022000356A2/en unknown
-
2022
- 2022-01-09 IL IL289689A patent/IL289689A/en unknown
-
2023
- 2023-06-22 JP JP2023102264A patent/JP2023112104A/en active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2022540640A (en) | 2022-09-16 |
MX2022000458A (en) | 2022-04-25 |
EP3997484A1 (en) | 2022-05-18 |
GB2600638A8 (en) | 2022-11-23 |
AU2020310932A1 (en) | 2022-01-27 |
BR112022000356A2 (en) | 2022-05-10 |
CN114270140A (en) | 2022-04-01 |
IL289689A (en) | 2022-03-01 |
GB2600638A (en) | 2022-05-04 |
WO2021007561A1 (en) | 2021-01-14 |
CA3146648A1 (en) | 2021-01-14 |
JP2023112104A (en) | 2023-08-10 |
GB202201700D0 (en) | 2022-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11927457B2 (en) | System and method for real time control of an autonomous device | |
US11162788B2 (en) | Classification of surfaces as hard/soft for combining data captured by autonomous vehicles for generating high definition maps | |
US11288521B2 (en) | Automated road edge boundary detection | |
CN111542860A (en) | Sign and lane creation for high definition maps for autonomous vehicles | |
EP3931657B1 (en) | System and method for surface feature detection and traversal | |
CN112819943B (en) | Active vision SLAM system based on panoramic camera | |
CN112800524A (en) | Pavement disease three-dimensional reconstruction method based on deep learning | |
JP2023112104A (en) | System and method for real time control of autonomous device | |
CN116338729A (en) | Three-dimensional laser radar navigation method based on multilayer map | |
Zhao | Recognizing features in mobile laser scanning point clouds towards 3D high-definition road maps for autonomous vehicles | |
Yang et al. | An optimization-based selection approach of landing sites for swarm unmanned aerial vehicles in unknown environments | |
Li et al. | Intelligent vehicle localization and navigation based on intersection fingerprint roadmap (IRM) in underground parking lots | |
IBRAHIM | Detection of Road Furniture from Mobile Terrestrial Laser Scanning Point Clouds |