GB2618278A - Dense 3-D occupancy mapping - Google Patents
Dense 3-D occupancy mapping Download PDFInfo
- Publication number
- GB2618278A GB2618278A GB2312319.3A GB202312319A GB2618278A GB 2618278 A GB2618278 A GB 2618278A GB 202312319 A GB202312319 A GB 202312319A GB 2618278 A GB2618278 A GB 2618278A
- Authority
- GB
- United Kingdom
- Prior art keywords
- sub
- map
- depth
- occupancy
- updating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013507 mapping Methods 0.000 title 1
- 238000000034 method Methods 0.000 claims abstract 20
- 238000011176 pooling Methods 0.000 claims 5
- 238000004590 computer program Methods 0.000 claims 3
- 238000005259 measurement Methods 0.000 claims 2
- 230000000007 visual effect Effects 0.000 claims 2
- 238000013138 pruning Methods 0.000 claims 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/579—Depth or shape recovery from multiple images from motion
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
- G01C21/32—Structuring or formatting of map data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
A computer-implemented method is provided, for building and updating a 3-D occupancy map of occupied and unoccupied spaces in a 3-D environment. A plurality of overlapping sub-maps are defined. Each sub-map describes a different volumetric region of the 3-D environment. Two or more of the sub-maps are updated based on a 2-D depth image and associated pose estimate.
Claims (22)
1. A computer-implemented method for building and updating a 3-D occupancy map of occupied and unoccupied spaces in a 3-D environment, the method comprising: defining (210) a plurality of sub-maps (10, 11 , 12, 13, 14) of the 3-D occupancy map, each sub-map describing a different volumetric region of the 3-D environment, each sub-map having associated with it a sub-map pose defining a position and orientation of the respective volumetric region within the 3-D occupancy map, wherein the volumetric regions overlap with one another; obtaining (220) a set of frames characterising the environment, each frame comprising a 2-D depth image and a pose estimate describing a position and orientation at which the depth image was captured; and updating (300) two or more of the sub-maps based on one of the 2-D depth images and its associated pose estimate.
2. The method of claim 1 , further comprising: obtaining (230) updated pose information; and in response, updating (240) one or more of the sub-map poses, based on the received updated pose information.
3. The method of claim 2, wherein receiving the updated pose information comprises obtaining (230) updated pose estimates for one or more of the frames, and the method comprises updating (240) one or more of the sub-map poses based on the updated pose estimates.
4. The method of any one of claims 1-3, wherein each sub-map comprises an octree for storing occupancy information, each octree comprising a hierarchy of nodes, each node being associated with a voxel, wherein each leaf node of the octree includes an occupancy indication.
5. The method of claim 2 or claim 3, wherein each sub-map comprises an octree for storing occupancy information, each octree comprising hierarchy of nodes, each node being associated with a voxel, wherein each leaf node of the octree contains an occupancy indication indicating whether the respective voxel is occupied or unoccupied, 43 and wherein updating the at least one sub-map based on a given 2-D depth image comprises: projecting (310) each voxel of the sub-map into the 2-D depth image, to define a projected area within the 2-D depth image; and updating (400) each voxel based on depth values of the 2-D depth image that are located within the respective projected area.
6. The method of claim 5, wherein updating (400) each voxel comprises: defining (410) a first interval of depths encompassed by the voxel; defining (420) a second interval of depth values in the depth image that are located within the voxelâ s projected area; calculating (430), based on the first interval and the second interval, an expected variation in a value of the occupancy indication within the voxel and if (435) the expected variation is greater than a threshold, sub-dividing (446) the voxel into eight sub-voxels.
7. The method of claim 5 or claim 6, wherein updating at least one voxel comprises updating (456) the occupancy indication of the voxel, based on the depth values that are located within the voxelâ s projected area, wherein the occupancy indication is updated using an inverse sensor model, which determines the probability of occupation along a ray, given a queried point on the ray and a depth value in the depth image.
8. The method of any one of claims 5-7, further comprising, before updating (400) each voxel, pre-computing (260) a pooling structure based on the 2-D depth image, wherein the pooling structure comprises one of: a pyramidal min-max pooling structure, describing the minimum and maximum depth values for each of a plurality of regions in the depth image, the regions including regions at different resolutions, the regions at each scale being arranged in a regular array; a mean-variance integral image pooling structure, comprising integral images computed for the zeroth, first and second moments of depth; and a smooth-max integral image pooling structure, comprising integral images computed for positive and negative alpha-softmax functions of depth. 44
9. The method of any one of claims 5-8, wherein updating the at least one submap comprises pruning (460) a group of eight child nodes from the octree if their occupancy can be indicated sufficiently accurately by a single occupancy indication associated with the parent node of the group of eight child nodes.
10. The method of any one of claims 2-3 or 5-9, further comprising: before updating (300) the at least one sub-map, fusing (250) two or more of the 2-D depth images into a combined depth image, and updating (300) the at least one sub-map based on the combined depth image.
11 . The method of claim 10, wherein the fusing comprises: re-projecting (252) depth values from one or more of the 2-D depth images, based on the pose estimates associated with the frames, to produce one or more reprojected depth images; and calculating (256) average depth values based at least in part on the re-projected depth images.
12. The method of claim 13, wherein calculating the average depth values comprises, for each pixel of the combined depth image: computing (254) a histogram of depth values, based on the re-projected depth images; and calculating (256) the average depth value based at least in part on the mode of the histogram.
13. The method of any one of the preceding claims, further comprising: maintaining a list of currently active sub-maps; and defining (210) a new sub-map if occupancy information derived from the 2-D depth image extends outside all of the currently active sub-maps.
14. The method of any one of the preceding claims, further comprising: identifying (510), among the plurality of sub-maps, a first sub-map and a second sub-map, wherein the second sub-map overlaps spatially with the first sub-map; merging (520) the second sub-map into the first sub-map; and discarding (530) the second sub-map.
15. The method of claim 14, further comprising: identifying (522) neighbouring sub-maps of the first sub-map; and before discarding the second sub-map, merging (524) the second sub-map into the neighbouring sub-maps.
16. A computer program comprising computer program code configured to cause one or more physical computing devices to perform all the steps of the method of any one of the preceding claims when said computer program is run on the one or more physical computing devices.
17. A mobile device configured to implement the method of any one of claims 1-15.
18. A mobile device (100) configured to build and update a 3-D occupancy map of occupied and unoccupied spaces in a 3-D environment, the mobile device comprising: a memory (110), for storing the 3-D occupancy map; and one or more processors (140), configured to: define (210) a plurality of sub-maps of the 3-D occupancy map, each sub-map describing a different volumetric region of the 3-D environment, each sub-map having associated with it a sub-map pose defining a position and orientation of the respective volumetric region within the 3-D occupancy map, wherein the volumetric regions overlap with one another; wherein the mobile device further comprises: at least one camera (120), configured to capture (222) visual data, comprising a set of frames characterising the environment; and an inertial measurement unit (134), configured to generate (224) inertial data, wherein the inertial measurement unit comprises at least one or any combination of two or more of: an accelerometer (132), a gyroscope (134) and a compass, and wherein the one or more processors (140) are configured to: calculate (226) a pose estimate of the mobile device for each frame, based on the visual data and the inertial data; produce (228) a 2-D depth image for each frame; and update (300) two or more of the sub-maps based on one of the 2-D depth images and its associated pose estimate.
19. The mobile device of claim 18, wherein the one or more processors are further configured to: obtain (230) updated pose information; and in response, update (240) one or more of the sub-map poses, based on the updated pose information.
20 The mobile device of claim 18 or claim 19, wherein the at least one camera comprises a stereo camera pair (120) configured to capture stereo image pairs, and the one or more processors are configured to produce (228) the 2-D depth images based on the stereo image pairs.
21. The mobile device of any one of claims 18 to 20, wherein the one or more processors (140) are configured to: calculate (230) an updated pose estimate for each frame; and update (240) one or more of the sub-map poses based on the updated pose estimates.
22. The mobile device of any one of claims 18-21, wherein the mobile device is comprised in a handheld device, a robot, or a vehicle.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB2101281.0A GB2603179A (en) | 2021-01-29 | 2021-01-29 | Dense 3-D occupancy mapping |
PCT/EP2022/051922 WO2022162075A1 (en) | 2021-01-29 | 2022-01-27 | Dense 3-d occupancy mapping |
Publications (2)
Publication Number | Publication Date |
---|---|
GB202312319D0 GB202312319D0 (en) | 2023-09-27 |
GB2618278A true GB2618278A (en) | 2023-11-01 |
Family
ID=74865471
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB2101281.0A Pending GB2603179A (en) | 2021-01-29 | 2021-01-29 | Dense 3-D occupancy mapping |
GB2312319.3A Pending GB2618278A (en) | 2021-01-29 | 2022-01-27 | Dense 3-D occupancy mapping |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB2101281.0A Pending GB2603179A (en) | 2021-01-29 | 2021-01-29 | Dense 3-D occupancy mapping |
Country Status (2)
Country | Link |
---|---|
GB (2) | GB2603179A (en) |
WO (1) | WO2022162075A1 (en) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3617749B1 (en) * | 2018-09-03 | 2020-11-11 | Zenuity AB | Method and arrangement for sourcing of location information, generating and updating maps representing the location |
CN110749901B (en) * | 2019-10-12 | 2022-03-18 | 劢微机器人科技(深圳)有限公司 | Autonomous mobile robot, map splicing method and device thereof, and readable storage medium |
CN111737395B (en) * | 2020-08-19 | 2020-12-22 | 浙江欣奕华智能科技有限公司 | Method and device for generating occupancy grid map and robot system |
-
2021
- 2021-01-29 GB GB2101281.0A patent/GB2603179A/en active Pending
-
2022
- 2022-01-27 WO PCT/EP2022/051922 patent/WO2022162075A1/en active Application Filing
- 2022-01-27 GB GB2312319.3A patent/GB2618278A/en active Pending
Non-Patent Citations (3)
Title |
---|
HO BING-JUI ET AL, "Virtual Occupancy Grid Map for Submap-based Pose Graph SLAM and Planning in 3D Environments", 2018 IEEE/RSJ INTERNATIONAL CONFERENCE ON INTELLIGENT ROBOTS AND SYSTEMS (IROS), IEEE, (2018-10-01), pgs 2175-2182, DOI:10.1109/IROS.2018.8594234, [retrieved on 2018-12-27], abstract * |
REHDER EIKE ET AL, "Submap-based SLAM for road markings", 2015 IEEE INTELLIGENT VEHICLES SYMPOSIUM (IV), IEEE, 28 June 2015, (2015-06-28), pages 1393-1398, DOI: 10.1109/IVS.2015.7225910, [retrieved on 2015-08-26], abstract figures 1, 5 sections II, III * |
YIDUO WANG ET AL, "Elastic and Efficient LiDAR Reconstruction for Large-Scale Exploration Tasks", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY, 14853, 19 October 2020 (2020-10-19), abstract, figures 4-6 sections III, IV * |
Also Published As
Publication number | Publication date |
---|---|
GB202312319D0 (en) | 2023-09-27 |
WO2022162075A1 (en) | 2022-08-04 |
GB2603179A (en) | 2022-08-03 |
GB202101281D0 (en) | 2021-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109084732B (en) | Positioning and navigation method, device and processing equipment | |
US11086016B2 (en) | Method and apparatus for tracking obstacle | |
KR20220025028A (en) | Method and device for building beacon map based on visual beacon | |
CN108520554B (en) | Binocular three-dimensional dense mapping method based on ORB-SLAM2 | |
CN114018236B (en) | Laser vision strong coupling SLAM method based on self-adaptive factor graph | |
CN111275750A (en) | Indoor space panoramic image generation method based on multi-sensor fusion | |
CN105865462B (en) | The three-dimensional S LAM method based on event with depth enhancing visual sensor | |
CN111366153B (en) | Positioning method for tight coupling of laser radar and IMU | |
CN111862214B (en) | Computer equipment positioning method, device, computer equipment and storage medium | |
CN113240734B (en) | Vehicle cross-position judging method, device, equipment and medium based on aerial view | |
US10134182B1 (en) | Large scale dense mapping | |
CN113514843A (en) | Multi-subgraph laser radar positioning method and system and terminal | |
WO2024140318A1 (en) | Pose estimation method and apparatus of mobile robot, mobile robot and medium | |
CN115128628A (en) | Road grid map construction method based on laser SLAM and monocular vision | |
CN117389305A (en) | Unmanned aerial vehicle inspection path planning method, system, equipment and medium | |
CN114529585A (en) | Mobile equipment autonomous positioning method based on depth vision and inertial measurement | |
CN110989619A (en) | Method, apparatus, device and storage medium for locating object | |
CN111899277B (en) | Moving object detection method and device, storage medium and electronic device | |
GB2618278A (en) | Dense 3-D occupancy mapping | |
CN111765883A (en) | Monte Carlo positioning method and equipment for robot and storage medium | |
CN116045965A (en) | Multi-sensor-integrated environment map construction method | |
CN113160419B (en) | Building elevation model building method and device | |
CN109343074A (en) | Mobile humanoid robot and its map constructing method, device and readable storage medium storing program for executing | |
TW202306400A (en) | Occupancy mapping for autonomous control of a vehicle | |
CN114202567A (en) | Point cloud processing obstacle avoidance method based on vision |