Multilevel altitude maps

11573089 · 2023-02-07

Assignee

Inventors

Cpc classification

International classification

Abstract

The invention relates to a method, performed by at least one apparatus. The method comprises obtaining sample measurements at least in part comprising altitude information and observed in an area at least in part represented by an altitude map, the altitude map comprising sub-sections representing respective sub-areas of the area; The method further comprises determining altitude estimates from the altitude information. The method further comprises updating one or more altitude estimate distributions associated with respective sub-sections of the altitude map based on the determined altitude estimates. The method further comprises determining, for one or more sub-sections of the altitude map, whether a respective sub-section of the altitude map represents a single level sub-area or multilevel sub-area, based on respective altitude estimate distributions associated with respective sub-sections of the altitude map.

Claims

1. A method, performed by at least one apparatus, the method comprising: obtaining sample measurements at least in part comprising altitude information and observed in an area at least in part represented by an altitude map, the altitude map comprising sub-sections representing respective sub-areas of the area; determining altitude estimates from the altitude information; updating one or more altitude estimate distributions associated with respective sub-sections of the altitude map based on the determined altitude estimates; determining, for one or more sub-sections of the altitude map, whether a respective sub-section of the altitude map represents a single level sub-area or multilevel sub-area, based on respective altitude estimate distributions associated with respective sub-sections of the altitude map; and updating the altitude map with respective indications of whether the one or more sub-sections of the altitude map are single level sub-areas or multilevel sub-areas, respectively, wherein the altitude map is configured for use in determining a position estimate comprising an altitude component.

2. The method of claim 1, wherein the sample measurements at least in part forming a track in the area.

3. The method of claim 1, wherein the altitude information of the sample measurements comprises first and second altitude information.

4. The method of claim 3, wherein the first altitude information of the sample measurements is absolute altitude information, in particular a satellite based altitude information.

5. The method of claim 3, wherein the second altitude information of the sample measurements is relative altitude information, in particular a pressure based altitude information.

6. The method of claim 3, wherein the determining of altitude estimates for updating the altitude estimate distributions comprises combining first and second altitude information of the sample measurements.

7. The method of claim 6, wherein combining the first and second altitude information of respective sample measurements comprises using a filter algorithm, in particular a Rauch-Tung-Striebel smoother.

8. The method of claim 1, the method further comprising: determining that a sub-section of the altitude map represents a multilevel sub-area by determining that the altitude estimate distribution associated with the respective sub-section of the altitude map is a multimodal distribution.

9. The method of claim 1, the method further comprising: determining that a sub-section of the altitude map represents a single level sub-area by determining that the altitude estimate distribution associated with the respective sub-section of the altitude map is a unimodal distribution.

10. The method of claim 1, wherein the method further comprises: utilizing a clustering approach for determining whether a sub-section of the altitude map represents a single level sub-area or a multilevel sub-area.

11. The method of claim 10, wherein the clustering approach comprises an expectation maximization algorithm.

12. The method of claim 1, the method further comprising: in case a sub-section of the altitude map represents a single level sub-area, determining a single altitude value based on the altitude estimate distribution associated with the respective sub-section of the altitude map to be used as the altitude value for the respective sub-section of the altitude map.

13. The method of claim 1, the method further comprising: in case a sub-section of the altitude map represents a multilevel sub-area, determining multiple altitude values based on the altitude estimate distribution associated with the respective sub-section of the altitude map to be used as the altitude values for the respective sub-section of the altitude map.

14. The method of claim 12, the method further comprising: updating the altitude map with altitude values determined based on the altitude estimate distributions.

15. The method of claim 1, wherein the determining of the altitude estimates comprises correcting the altitude estimates based on altitude values of sub-sections of the altitude map.

16. The method of claim 15, wherein, for correcting the altitude estimates based on altitude values of sub-sections of the altitude map, altitude values of those sub-sections of the altitude map, which have been identified as representing multilevel sub-areas, are discarded.

17. The method of claim 15, wherein, for correcting the altitude estimates based on altitude values of sub-sections of the altitude map, altitude values of some or all of those sub-sections of the altitude map, for which the respective altitude estimate distributions associated with the respective sub-sections of the altitude map comprises a number of altitude estimates above a predefined threshold and/or below a predefined threshold, are discarded.

18. The method of claim 15, wherein, for correcting the altitude estimates based on altitude values of sub-sections of the altitude map, altitude values of those sub-sections of the altitude map, for which there is an indication that the sub-section represents a multilayer area, are discarded.

19. The method of claim 15, wherein correcting the estimates information based on altitude values of sub-sections of the altitude map accounts for the statistical spread of the altitude estimates and/or altitude estimate distributions associated with the respective sub-sections of the altitude map.

20. An apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to: obtain sample measurements at least in part comprising altitude information and observed in an area at least in part represented by an altitude map, the altitude map comprising sub-sections representing respective sub-areas of the area; determine altitude estimates from the altitude information; update one or more altitude estimate distributions associated with respective sub-sections of the altitude map based on the determined altitude estimates; determine, for one or more sub-sections of the altitude map, whether a respective sub-section of the altitude map represents a single level sub-area or multilevel sub-area, based on respective altitude estimate distributions associated with respective sub-sections of the altitude map; and update the altitude map with respective indications of whether the one or more sub-sections of the altitude map are single level sub-areas or multilevel sub-areas, respectively, wherein the altitude map is configured for use in determining a position estimate comprising an altitude component.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) FIG. 1 is a block diagram of a system of exemplary apparatuses according to the invention;

(2) FIG. 2 is a block diagram of the mobile device of FIG. 1;

(3) FIG. 3 is a block diagram of the server of FIG. 1;

(4) FIG. 4 is flow chart illustrating an example embodiment of a method according to the invention;

(5) FIG. 5 is a schematic diagram illustrating an exemplary correction of altitude estimates;

(6) FIG. 6 is a schematic diagram illustrating an exemplary altitude map with sub-sections and an exemplary track;

(7) FIG. 7 is a schematic diagram illustrating an example of an altitude estimate distribution; and

(8) FIG. 8 is a schematic illustration of examples of tangible storage media according to the invention.

DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS OF THE INVENTION

(9) The following description serves to deepen the understanding of the present invention and shall be understood to complement and be read together with the description as provided in the above summary section of this specification.

(10) FIG. 1 is a block diagram of a system 1 of a mobile device 2 and a server 3, which may both be exemplary embodiments of an apparatus according to the invention and which may separately or together perform exemplary embodiments of the method according to the invention. The details of mobile device 2 and server 3 are described with respect to FIG. 2, which is an exemplary block diagram of the mobile device 1 of FIG. 1, and FIG. 3, which is an exemplary block diagram of the server 3 of FIG. 1.

(11) For instance, the mobile device 2 may be a part of or may be a cellular phone, a personal digital assistant, a laptop computer, a tablet computer or a wearable. Server 3 may be a server located remote from mobile device 2, for instance. Server 3 may also comprise multiple devices and/or may be realized as a computer cloud, for instance.

(12) Turning now to FIG. 2, the mobile device 2 may be configured to determine absolute altitude information, e.g. based on signals from a Global Navigation Satellite System (GNSS). However, in particular for indoor situations, there may be no reception of GNSS signals, the GNSS signals may be too weak in order to get reliable location information or the GNSS signals suggest a reliable position estimate in fact the quality is poor. Thus, the mobile device 2 may also be configured for determining relative altitude information, e.g. based on pressure information. Apart from that, the mobile device is also capable of determining horizontal position information, which may also be based on signals from a GNSS and/or inertial sensors of the mobile device. Further, the mobile device is also capable of observing measurements of the radio environment. The described information may be comprised by sample measurements or “fingerprints”. The described capabilities of the mobile device will also be described below.

(13) The mobile device 2 comprises a processor 20. Processor 20 may represent a single processor or two or more processors, which are for instance at least partially coupled, for instance via a bus. Processor 20 executes a program code stored in program memory 21 (for instance program code causing mobile device 2 to perform embodiments of the method according to the invention, when executed on processor 20), and interfaces with a main memory 22. Some or all of memories 21 and 22 may also be included into processor 20. One of or both of memories 21 and 22 may be fixedly connected to processor 20 or at least partially removable from processor 20, for instance in the form of a memory card or stick. Program memory 21 may for instance be a non-volatile memory. It may for instance be a FLASH memory (or a part thereof), any of a ROM, PROM, EPROM and EEPROM memory (or a part thereof) or a hard disc (or a part thereof), to name but a few examples. Program memory 21 may also comprise an operating system for processor 20. Program memory 21 may for instance comprise a first memory portion that is fixedly installed in mobile device 2, and a second memory portion that is removable from mobile device 2, for instance in the form of a removable SD memory card. Main memory 22 may for instance be a volatile memory. It may for instance be a RAM or DRAM memory, to give but a few non-limiting examples. It may for instance be used as a working memory for processor 20 when executing an operating system and/or programs. One or more tracks of sample measurements that are observed by mobile device 2 may for instance be stored in program memory 21 and or main memory 22.

(14) Processor 20 further controls a communication interface 23 configured to receive and/or output information. For instance, communication interface 23 may be configured to send and/or receive data to/from server 3. Mobile device 2 may be configured to communicate with server 3 of system 1 (see FIG. 1). This may for instance comprise sending information such as the observed tracks comprising sample measurements observed by the mobile device 2 to server 3. The communication may for instance be based on a (e.g. partly) wireless connection. The communication interface 23 may thus comprise circuitry such as modulators, filters, mixers, switches and/or one or more antennas to allow transmission and/or reception of signals, e.g. for the communication with server 3. In embodiments of the invention, communication interface 23 is inter alia configured to allow communication according to a 2G/3G/4G/5G cellular communication system and/or a non-cellular communication system, such as for instance a WLAN network. Nevertheless, the communication route between mobile device 2 and server 3 may equally well at least partially comprise wire-bound portions. For instance, server 3 may be connected to a back-bone of a wireless communication system (associated with mobile terminal 2) via a wire-bound system such as for instance the internet.

(15) Processor 20 further controls a user interface 24 configured to present information to a user of mobile device 20 and/or to receive information from such a user, such as manually input position fixes or the like. User interface 24 may for instance be the standard user interface via which a user of mobile device 2 controls other functionality thereof, such as making phone calls, browsing the Internet, etc.

(16) Processor 20 may further control a GNSS interface 25 configured to receive positioning information, that is in particular (absolute) altitude information and (absolute) horizontal position information, of an GNSS such as Global Positioning System (GPS), Galileo, Global Navigation Satellite System (i.e. “Globalnaja Nawigazionnaja Sputnikowaja Sistema”, GLONASS) and Quasi-Zenith Satellite System (QZSS). It should be noted that, even in case mobile device 2 has a GNSS interface 25, the user of mobile device 2 can still benefit from using positioning technologies based on other approaches, such as the approach based on pressure measurements for the altitude information and/or inertial sensors for the horizontal position described herein, since these technologies may provide a higher accuracy in challenging environments for GNSS-based technologies. For this, the mobile device may also comprise one or more respective inertial sensors (not shown).

(17) In preferred embodiments, the mobile device 2 further comprises a barometer 26. For this, processor 10 further controls the barometer 26 as an example for a pressure measurement instrument. The barometer 26 measures the ambient pressure at (or close to) the location of the mobile device. Thus, mobile device may automatically and/or repeatedly obtain pressure information. The barometer 26 may be used for obtaining relative altitude information.

(18) The components 21-26 of mobile device 2 may for instance be connected with processor 20 by means of one or more serial and/or parallel busses.

(19) Turning now to FIG. 3, an exemplary block diagram of server 3 of FIG. 1 is shown. Similarly to FIG. 2, server 3 comprises a processor 30. Processor 30 may represent a single processor or two or more processors, which are for instance at least partially coupled, for instance via a bus. Processor 30 executes a program code stored in program memory 31 (for instance program code causing server 3 to perform embodiments of the method according to the invention, when executed on processor 30). Processor 30 further interfaces with a main memory 32 (for instance acting as a working memory) and a mass storage 34, which may for instance collect and store a plurality of tracks comprising sample measurements collected by mobile devices (such as mobile device 2).

(20) Processor 30 further controls a communication interface 33 configured to receive and/or output information. For instance, server 3 may be configured to communicate with mobile device 2 of system 1, as described.

(21) FIG. 4 is flow chart 400 illustrating an example embodiment of a method according to the invention. The method illustrated in FIG. 4 is in the example performed by server server 3 of FIG. 1. A user has surveyed the area and the track of sample measurements have been observed by mobile device 2 and sent to server 3.

(22) The method of FIG. 4 will be explained in the following in connection with FIGS. 5 to 7.

(23) A server thus obtains (e.g. receives) sample measurements at least in part comprising altitude information and observed in the survey area at least in part represented by an altitude map (action 401).

(24) An exemplary illustration of an altitude map 601 is shown in the diagram 600 of FIG. 6, which will also be explained further below. Therein, the sample measurements at least in part form a track 603 in the area and the altitude map 601 comprises a plurality of sub-sections 602 representing respective sub-areas of the surveyed area. It is preferred to use the full track, because only then the barometer-based pressure changes can be used to improve the GNSS based absolute altitude information from sample to sample. In other words, the approach should not be used, when there are only sporadic individual samples. Some or each of the sub-sections 602 may already be associated with or comprise one or more altitude values (e.g. determined in a previous cycles of the described method) indicating respective one or more heights of the sub-areas represented by the sub-sections 602.

(25) From the altitude information, which comprises GNSS based absolute altitude information and pressure measurement based relative altitude information altitude estimates are determined (action 402).

(26) Action 402 comprises combining the relative and absolute altitude information of the sample measurements, e.g. by using a smoother algorithm such as the Rauch-Tung-Striebel smoother (action 403). These algorithms are based on a state-space model, where the state is one-dimensional and includes only the altitude. This model includes the state transition model and measurement model. The state transition model describes the change of the altitude over time, and it is based on the delta altitude information provided by the barometer. The measurement model, on the other hand, describes the GNSS-based altitude measurements. It is also assumed that the horizontal position is known at each time instant based on GNSS and inertial sensor measurements.

(27) Exemplary altitude estimates 501 resulting from action 403 are illustrated in the diagram 500 of FIG. 5. The diagram 500 shows in a dashed line the determined height values (in meters) of the altitude estimates 501 over the time at which they (or the respective sample measurements) were observed (in seconds).

(28) Action 402 further comprises correcting the altitude estimates 501 based on the altitude values of sub-sections of the altitude map 600 (action 404). Altitude values used for the correction are displayed in FIG. 5 as crosses “x” 502.

(29) For the correction of the altitude estimates 501 not all available altitude values of the altitude map 601 are used, because the altitude map 601 may also comprise sub-sections 602 which represent multilevel sub-areas, i.e. sub-section 602 which are ambiguous with respect to the altitude data. Using altitude values of such sub-sections would deteriorate the result of the correction. Such ambiguous sub-sections 602 are shown as hatched sub-sections 602 in FIG. 6 and are discarded for the correction. Also, sub-sections 602, for which only very few sample measurements and thus altitude estimates) are available, are discarded as they are potentially unambiguous. Such sub-sections 602 are shown in FIG. 6 as plain sub-sections 602.

(30) As a result, only the altitude values for those sub-sections, for which the altitude value with a sufficient certainty is unambiguous (sub sections representing single level sub-areas), are used for the correction. Those sub-sections 602 of the altitude map 601 which can be used for such a correction are shown as dotted sub-sections 602 in FIG. 6. The dotted sub-section may for instance be outdoor areas.

(31) It is noted, that also the dotted sub-sections 602, for which the altitude value is assumed to be unambiguous with a sufficient certainty may nevertheless turn out to be ambiguous (that is represent multilevel sub-areas) later on. Thus, the process of correction may also account for the statistical spread (e.g. variance) of the used altitude estimate distributions associated with the respective sub-sections of the altitude map, because a larger variance may indicate a potential unambiguity. Thus the altitude values of the sub-sections used for correction (dotted sub-sections 602) may be weighted with the corresponding variance. For instance, these altitude values are weighted with weights inversely proportional to the altitude estimate variance when correcting the new track's altitude estimates. For example, the altitude sample variances can be used as measurement noise variances in the Rauch-Tung-Striebel smoother. This weighting is important in the initial phase where there are in general not sufficiently many samples measurements to detect the “multilayerness”, and (potential) multilevel sub-areas can only be identified by larger altitude estimate variances.

(32) Additionally or alternatively, other indicators of multilayer structures can also be used to discard certain altitude values of the altitude map. For example, an altitude map correction should not be applied when the GNSS position is not available due to insufficient visibility of the GNSS satellites.

(33) With a high probability, this procedure matches the new track's altitude estimates with the altitude values of the altitude map in the unambiguous sub-areas. The purpose is to make the altitude estimation accurate enough so that the multilevel sub-areas and their level altitudes can be detected.

(34) As a result of the correction 404, the track of altitude estimates 501 is shifted to be in line with the altitude values 502 of the altitude map 601. The corrected tack of altitude estimates 503 to be used further in the method is illustrated with a solid line in FIG. 5.

(35) Then, the altitude estimate distributions associated with respective sub-sections 602 of the altitude map are updated based on the newly determined (corrected) altitude estimates 503 by adding the altitude estimates 503 to the altitude estimate distributions for those sub-sections, which the track intersects (action 405). The attitude estimates may be weighted with weights inversely proportional to the respective variances of the altitude estimates. Such variances can be obtained as an output of the Rauch-Striebel-Smoother algorithm. In this way, those tracks that have been corrected with a reliable altitude map will be given more weight than non-corrected tracks. When enough tracks have been accumulated in the considered area, the altitude sample distribution tends to converge to a narrow peak in sub-sections where the altitude is unambiguous and to multiple narrow peaks in sub-sections representing a multilevel sub-area.

(36) Particularly for the updated altitude estimate distributions associated with respective sub-sections of the altitude map, it can now be determined, for the respective sub-sections 602 of the altitude map 601, whether a respective sub-section 602 of the altitude map 601 represents a single level sub-area or multilevel sub-area (action 406).

(37) In case a sub-section 602 of the altitude map 601 represents a single level sub-area, a single altitude value based on the altitude estimate distribution associated with the respective sub-section 602 of the altitude map 601 is used as the altitude value for the respective sub-section 602 of the altitude map 601.

(38) In case a sub-section 602 of the altitude map 601 represents a multilevel sub-area, multiple altitude values based on the altitude estimate distribution associated with the respective sub-section 602 of the altitude map 601 are used as the altitude values for the respective sub-section 602 of the altitude map 601.

(39) Diagram 700 of FIG. 7 illustrates an example of an altitude estimate distribution 701 of a three-story building, which is in this case illustrated as a histogram with the count of respective determined altitude estimates over the altitude (in meters). By means of an expectation maximization based clustering algorithm it can be determined, if the altitude estimate distribution 701 is unimodal or multimodal. This can be done using an expectation-maximization (EM) algorithm to fit a Gaussian mixture density with a given number of mixture components to the empirical altitude estimate distribution. The altitude of each mixture component is then considered as the altitude of a level or layer. The number of mixture components is determined as the number that minimizes an objective function that rewards good fitness to the empirical altitude estimate distribution and penalizes increasing the number of mixture components. Such objective functions include e.g. Akaike information criterion, Bayesian information criterion, and Deviance information criterion.

(40) FIG. 7 illustrates the resulting fit 702 of the distribution, detecting three modes or a mixture of three distributions, which is interpreted as three floor levels.

(41) Each sub-section 602 of the altitude map 601 maintains such an empirical distribution 701 of altitude estimates obtained in the given sub-area. These distributions are constantly updated with new crowd-sourced tracks. The end product, i.e. the crowd-sourced altitude map 601, consists then of respective average values of these altitude estimate distributions 701 in each sub-section 602.

(42) Now, the altitude map 601 can be updated with altitude values determined based on the algorithm analyzing respective altitude estimate distributions 701 (action 407).

(43) Accordingly, the proposed method is based on first correcting the altitude estimates along the track 603 with a possible prior altitude map 601 (learned based on previously retrieved information) and then using the track 603 to improve the altitude estimate distributions 701 and thereby the crowd-sourced altitude map 601 further.

(44) As a result, the proposed method can learn a detailed multi-valued altitude map and improves the altitude estimation of barometer and GNSS capable devices without external altitude map information. This can be used for 3-dimensional crowd-sourcing based radio mapping, for example.

(45) FIG. 8 is a schematic illustration of examples of tangible storage media according to the present invention, that may for instance be used to implement program memory 21 of FIG. 2 and/or program memory 31 of FIG. 3. To this end, FIG. 8 displays a flash memory 80, which may for instance be soldered or bonded to a printed circuit board, a solid-state drive 81 comprising a plurality of memory chips (e.g. Flash memory chips), a magnetic hard drive 82, a Secure Digital (SD) card 83, a Universal Serial Bus (USB) memory stick 84, an optical storage medium 85 (such as for instance a CD-ROM or DVD) and a magnetic storage medium 86.

(46) The following embodiments shall also be considered disclosed: 1. A method, performed by at least one apparatus, the method comprising: obtaining sample measurements at least in part comprising altitude information and observed in an area at least in part represented by an altitude map, the altitude map comprising sub-sections representing respective sub-areas of the area; determining altitude estimates from the altitude information; updating one or more altitude estimate distributions associated with respective sub-sections of the altitude map based on the determined altitude estimates; determining, for one or more sub-sections of the altitude map, whether a respective sub-section of the altitude map represents a single level sub-area or multilevel sub-area, based on respective altitude estimate distributions associated with respective sub-sections of the altitude map. 2. The method of claim 1, wherein the sample measurements at least in part forming a track in the area. 3. The method of embodiment 1 or 2, wherein the altitude information of the sample measurements comprises first and second altitude information. 4. The method of embodiment 3, wherein the first altitude information of the sample measurements is absolute altitude information, in particular a satellite based altitude information. 5. The method of embodiment 3 or 4, wherein the second altitude information of the sample measurements is relative altitude information, in particular a pressure based altitude information. 6. The method of any of embodiments 3 to 5, wherein the determining of altitude estimates for updating the altitude estimate distributions comprises combining first and second altitude information of the sample measurements. 7. The method of any of embodiments 3 to 6, wherein the combining of first and second altitude information of respective sample measurements comprises using a filter algorithm, in particular a Rauch-Tung-Striebel smoother. 8. The method of any of the preceding embodiments, the method further comprising: determining that a sub-section of the altitude map represents a multilevel sub-area by determining that the altitude estimate distribution associated with the respective sub-section of the altitude map is a multimodal distribution. 9. The method of any of the preceding embodiments, the method further comprising: determining that a sub-section of the altitude map represents a single level sub-area by determining that the altitude estimate distribution associated with the respective sub-section of the altitude map is a unimodal distribution. 10. The method of any of the preceding embodiments, wherein the method further comprises utilizing a clustering approach for determining whether a sub-section of the altitude map represents a single level sub-area or a multilevel sub-area. 11. The method of any of the preceding embodiments, wherein the clustering approach comprises an expectation maximization algorithm. 12. The method of any of the preceding embodiments, the method further comprising: in case a sub-section of the altitude map represents a single level sub-area, determining a single altitude value based on the altitude estimate distribution associated with the respective sub-section of the altitude map to be used as the altitude value for the respective sub-section of the altitude map. 13. The method of any of the preceding embodiments, the method further comprising: in case a sub-section of the altitude map represents a multilevel sub-area, determining multiple altitude values based on the altitude estimate distribution associated with the respective sub-section of the altitude map to be used as the altitude values for the respective sub-section of the altitude map. 14. The method of embodiment 12 or 13, the method further comprising: updating the altitude map with altitude values determined based on the altitude estimate distributions. 15. The method of any of the preceding embodiments, wherein the determining of the altitude estimates comprises correcting the altitude estimates based on altitude values of sub-sections of the altitude map. 16. Method of embodiment 15, wherein, for correcting the altitude estimates based on altitude values of sub-sections of the altitude map, altitude values of those sub-sections of the altitude map, which have been identified as representing multilevel sub-areas, are discarded. 17. The method of embodiment 15 or 16, wherein, for correcting the altitude estimates based on altitude values of sub-sections of the altitude map, altitude values of some or all of those sub-sections of the altitude map, for which the respective altitude estimate distribution associated with the respective sub-section of the altitude map comprises a number of altitude estimates above a predefined threshold and/or below a predefined threshold, are discarded. 18. Method of any of embodiments 15 to 17, wherein, for correcting the altitude estimates based on altitude values of sub-sections of the altitude map, altitude values of those sub-sections of the altitude map, for which there is an indication that the sub-section represents a multilayer area, are discarded. 19. The method of any of embodiments 15 to 18, wherein correcting the estimates information based on altitude values of sub-sections of the altitude map accounts for the statistical spread of the altitude estimates and/or the altitude estimate distributions associated with the respective sub-sections of the altitude map. 20. An apparatus comprising means for performing a method according to any of embodiments 1 to 19. 21. An apparatus comprising at least one processor and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to at least perform the method of any of embodiments 1 to 19. 22. A computer program code, the computer program code, when executed by a processor, causing an apparatus to perform the method of any of the embodiments 1 to 19. 23. A non-transitory computer readable storage medium in which computer program code is stored, the computer program code when executed by a processor causing at least one apparatus to perform the method of any of embodiments 1 to 19.

(47) Any presented connection in the described embodiments is to be understood in a way that the involved components are operationally coupled. Thus, the connections can be direct or indirect with any number or combination of intervening elements, and there may be merely a functional relationship between the components.

(48) Further, as used in this text, the term ‘circuitry’ refers to any of the following: (a) hardware-only circuit implementations (such as implementations in only analog and/or digital circuitry) (b) combinations of circuits and software (and/or firmware), such as: (i) to a combination of processor(s) or (ii) to portions of processor(s)/software (including digital signal processor(s)), software, and memory(ies) that work together to cause an apparatus, such as a mobile phone, to perform various functions) and (c) to circuits, such as a microprocessor(s) or a portion of a microprocessor(s), that re-quire software or firmware for operation, even if the software or firmware is not physically present.

(49) This definition of ‘circuitry’ applies to all uses of this term in this text, including in any claims. As a further example, as used in this text, the term ‘circuitry’ also covers an implementation of merely a processor (or multiple processors) or portion of a processor and its (or their) accompanying software and/or firmware. The term ‘circuitry’ also covers, for example, a baseband integrated circuit or applications processor integrated circuit for a mobile phone.

(50) Any of the processors mentioned in this text, in particular but not limited to processors of FIGS. 2 and 3, could be a processor of any suitable type. Any processor may comprise but is not limited to one or more microprocessors, one or more processor(s) with accompanying digital signal processor(s), one or more processor(s) without accompanying digital signal processor(s), one or more special-purpose computer chips, one or more field-programmable gate arrays (FPGAS), one or more controllers, one or more application-specific integrated circuits (ASICS), or one or more computer(s). The relevant structure/hardware has been programmed in such a way to carry out the described function.

(51) Moreover, any of the actions described or illustrated herein may be implemented using executable instructions in a general-purpose or special-purpose processor and stored on a computer-readable storage medium (e.g., disk, memory, or the like) to be executed by such a processor. References to ‘computer-readable storage medium’ should be understood to encompass specialized circuits such as FPGAs, ASICs, signal processing devices, and other devices.

(52) It will be understood that all presented embodiments are only exemplary, and that any feature presented for a particular exemplary embodiment may be used with any aspect of the invention on its own or in combination with any feature presented for the same or another particular exemplary embodiment and/or in combination with any other feature not mentioned. It will further be understood that any feature presented for an example embodiment in a particular category may also be used in a corresponding manner in an example embodiment of any other category.