WO2018211261A1 - Method of mapping indoor region - Google Patents
Method of mapping indoor region Download PDFInfo
- Publication number
- WO2018211261A1 WO2018211261A1 PCT/GB2018/051312 GB2018051312W WO2018211261A1 WO 2018211261 A1 WO2018211261 A1 WO 2018211261A1 GB 2018051312 W GB2018051312 W GB 2018051312W WO 2018211261 A1 WO2018211261 A1 WO 2018211261A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- notional
- data
- location
- boundary
- boundaries
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
- G01C21/206—Instruments for performing navigational calculations specially adapted for indoor navigation
Definitions
- the invention relates to a method of mapping an indoor region and computer processing apparatus configured to map an indoor region.
- a mobile device such as a smartphone
- Devices may, for example, include a positioning module, such as a Global Navigation Satellite System (GNSS) which provides an estimate of a user's absolute position.
- GNSS Global Navigation Satellite System
- Other systems such as Pedometer Dead Reckoning (PDR) systems, provide an estimate of the user's relative position, which can be combined with previous absolute position estimates to provide a current, real-time position estimate.
- PDR Pedometer Dead Reckoning
- a further class of positioning system carries out range-finding on electromagnetic signals received at the device, and combines the range data with predetermined information about the sources of the signals (such as their location) to produce a position estimate.
- the GNSS and similar systems can produce relatively accurate position estimates, but are limited in that they typically do not function indoors.
- the relative positioning systems (such as PDR) and range-finding systems (such as Wi-Fi location systems) may be relatively less accurate, but are in some cases the only systems which provide meaningful results indoors.
- the accuracy of range-finding positioning is limited by factors such as multi-path interference, attenuation by walls, and the like, which can result in poor performance even when the location of electromagnetic signal sources (such as Wireless Access Points, WAPs) is known precisely.
- the accuracy of range-finding positioning systems can be improved by 'war-walking' in the vicinity of the above-mentioned electromagnetic signal sources, so as to assist in mapping particular received signals to a particular location within a building. This can be done as part of a 'crowd-sourcing' initiative, whereby a number of users contribute data over time, allowing refinement of the location database.
- the present invention seeks to address deficiencies in the prior art and, in particular, improving the accuracy of range-finding positioning systems (particularly in indoor regions).
- the spatial feature data, the layout data and the adjusted layout data is obtained from crowdsourced location data relating to changes in location of a plurality of mobile devices within the indoor region, all without having to perform expensive and time consuming dedicated mapping of the indoor region and without having to have prior background knowledge of the indoor region.
- the method comprises generating the said spatial feature data from received location data relating to changes in location of a plurality of mobile devices within the said indoor region.
- a pre-existing database of spatial features may be provided from which the spatial feature data is obtained.
- the said layout data is generated in dependence on the locations of spatial features provided in the spatial feature data.
- the spatial features whose locations are identified by the spatial feature data may comprise any one or more of the group comprising: (e.g.
- the said layout data is generated in dependence on respective types of spatial features of the said one or more spatial features specified in the said spatial feature data.
- the method is performed on one or more server computers (typically each comprising one or more computer (typically hardware) processors).
- the step of obtaining location data relating to changes in location of a plurality of mobile devices within the said indoor region comprises receiving location data relating to changes in location of a plurality of mobile devices (e.g. from the said plurality of mobile devices). It may be that the location data contains positioning data (e.g.
- the said notional boundaries each relate to a spatial feature comprising a (typically discrete) area or space within the indoor region in which people change location and/or which people enter and exit (such as a room, a premises (e.g. a store) or a seating area).
- the said notional boundaries (prior to the step of adjusting the said layout data in dependence on the obtained location data) are of predetermined size and/or shape. It may be that the predetermined size and/or shape is/are selected dependent on types of spatial features the respective notional boundaries relate to. It may be that one or more or each of the said notional boundaries comprises or consists of one or more curved edges.
- a said notional boundary comprises one or more edges comprising an opening (e.g. a representation of a portal, doorway or elevator door) or an opening may be provided between two edges of a said notional boundary.
- the step of adjusting the said layout data in dependence on the obtained location data comprises adjusting (e.g. expanding or contracting) the notional boundaries in dependence on the obtained location data.
- the method comprises adjusting the boundary data to thereby adjust a size and/or shape of one or more said notional boundaries in dependence on the obtained location data.
- the method comprises determining from the location data a plurality of location sets, each location set of the said plurality of location sets comprising a plurality of locations, the said plurality of locations being locations of a mobile device of the said plurality or of a plurality of the said mobile devices in combination.
- the step of adjusting the said layout data in dependence on the obtained location data comprises adjusting (e.g. expanding or contracting) one or more or each of the (e.g. sizes and/or shapes of the) said notional boundaries in dependence on the location sets.
- one or more or each of the said location sets comprise locations adjacent to a said notional boundary and/or within a said notional boundary and/or crossing a said notional boundary.
- the step of adjusting the said layout data in dependence on the obtained location data comprises adjusting the said layout data in dependence on said location sets.
- one or more or each of the said location sets comprise a spatial feature path, each said spatial feature path extending from outside a said notional boundary to inside the said notional boundary through a portal and subsequently from inside the said notional boundary to outside the said notional boundary through the or another said portal.
- the said spatial feature paths are paths determined to have been followed by each of one or more mobile devices. It may be that one or more of the said spatial feature paths comprise a composite spatial feature path comprising locations of a plurality of said mobile devices in combination.
- one or more or each of the said spatial feature paths or one or more or each of the said composite spatial feature paths is a path which has been determined to have crossed a said notional boundary.
- the said boundary data represents a plurality of notional boundaries, each of the said notional boundaries relating to (e.g. a boundary adjacent to or provided around at least a portion of or provided substantially around at least a portion of) a respective said spatial feature, the method further comprising, for one or more or each said location set and for one or more or two or more of the said notional boundaries, determining respective relevance parameters indicative (e.g. probabilities) of whether the locations of the said location set relate to the same spatial features as the said respective one or more or two or more notional boundaries.
- the step of determining respective relevance parameters indicative (e.g. probabilities) of whether the locations of the said location set relating to the same spatial features as the said respective one or more or two or more notional boundaries is performed by fuzzy logic. It may be that the method comprises adjusting one or more of the said one or more or two or more notional boundaries in dependence on the said determined relevance parameters (e.g. probabilities). It may be that the method comprises adjusting the size and/or shape of one or more of the said one or more or two or more notional boundaries in dependence on the determined relevance parameter(s) associated with that notional boundary relative to the determined relevance parameter(s) associated with the other notional boundaries of the said one or more or two or more notional boundaries.
- the method comprises obtaining a principal path through the indoor region, wherein the said spatial features extend (e.g. branch) from (and are typically connected to and/or are typically in communication with) the said principal path.
- the principal path may be obtained from (for example) third party information relating to the indoor region.
- the principal path may be determined from (e.g. the said) location data relating to changes in location of a plurality of mobile devices within the said indoor region. It may be that the said principal path is determined from location data relating to changes in location of a plurality of mobile devices within the said indoor region by detecting one or more (e.g. straight line) paths from the said location data.
- the said principal path is determined from location data relating to changes in location of a plurality of mobile devices within the said indoor region by: determining a plurality of (e.g. straight line) paths from the location data; assigning a weighting to each of the said (e.g. straight line) paths based on a number of times devices have followed the respective (e.g. straight line) path (e.g. optionally only from location data relating to changes in location of one or more mobile devices having a speed exceeding a predefined threshold); and determining the said principal path in dependence on the weightings assigned applied to the (e.g. straight line) paths (e.g. selecting the (e.g.
- the principal path may be determined by correlating and/or connecting a plurality of said (e.g. straight line) paths.
- the principal path may extend between an indoor location (e.g. for example including at least one location where global navigation satellite system measurements are not available) to at least one outdoor location (e.g. where global navigation satellite system measurements are available). This can enable better estimation of the absolute position of the principal path.
- the method comprises for one or more or each said location set, identifying the said one or more or two or more notional boundaries (typically prior to determining the said relevance parameters) by: identifying which of the notional boundaries represented by the boundary data meet one or more proximity criteria with respect to the locations of the location set. It may be that the method comprises, for one or more or each said location set, identifying the said one or more or two or more notional boundaries (typically prior to determining the said relevance parameters) by: determining a segment of the said principal path which meets one or more proximity criteria in respect of (e.g. closest to) the locations of the location set; and identifying which of the notional boundaries represented by the boundary data meet one or more proximity criteria with respect to the said segment of the said principal path.
- the method comprises obtaining (e.g. receiving) signal source data relating to electromagnetic signals detected by one or more of the said plurality of mobile devices at one or more locations within the indoor region, or within one or more said notional boundaries, from one or more (typically terrestrial) electromagnetic signal sources (e.g. Wi-Fi access points or Bluetooth beacons).
- the signal source data may comprise received signal strengths of electromagnetic signals received by one or more said mobile devices at one or more locations determined to be within a said notional boundary from respective (typically terrestrial) electromagnetic signal sources.
- the signal source data may comprise timing data relating to the timing of electromagnetic signals received by one or more said mobile devices at one or more locations determined to be within the said notional boundary from respective electromagnetic signal sources (e.g.
- the signal source data may comprise angle of arrival data relating to electromagnetic signals received by one or more said mobile devices at one or more locations determined to be within the said notional boundary from respective electromagnetic signal sources (e.g. the angles or directions of arrival of signals received by the said mobile devices from the respective electromagnetic signal sources). It may be that the signal source data comprises identifiers of electromagnetic signal sources detected by one or more said mobile devices at one or more locations determined to be within the said notional boundary. It may be that the method comprises obtaining (e.g. receiving) signal source data relating to electromagnetic signals detected by one or more of the said plurality of mobile devices within each of one or more said notional boundaries from one or more (typically terrestrial) electromagnetic signal sources (e.g.
- the method further comprises obtaining, for each of the said notional boundaries, signal source data relating to electromagnetic signals detected by one or more said mobile devices at one or more locations determined to be within the said notional boundary from one or more (typically terrestrial) electromagnetic signal sources (e.g. Wi-Fi access points or Bluetooth beacons); and deriving respective signal source profiles for each of the said notional boundaries from said signal source data.
- Each said signal source profile is typically associated with a respective said notional boundary.
- the signal source profile associated with each said notional boundary comprises, for each of one or more electromagnetic signal sources, expected values (e.g. averages, e.g. accumulated means, of previously determined values by one or more said mobile devices) of one or more parameters relating to or derived from electromagnetic signals received from one or more said electromagnetic signal sources by one or more said mobile devices within the said notional boundary. It may be that the signal source profile associated with each said notional boundary comprises, for each of one or more electromagnetic signal sources, expected signal strengths (e.g. averages, e.g. accumulated means, of previously determined signal strengths) of electromagnetic signals received from one or more said electromagnetic signal sources by said mobile devices within the said notional boundary.
- expected signal strengths e.g. averages, e.g. accumulated means, of previously determined signal strengths
- the signal source profile associated with each said boundary comprises, for each of one or more electromagnetic signal sources, expected timing data relating to, such as times of flight of, (e.g. averages, e.g. accumulated means, of previously determined times of flight) electromagnetic signals received from one or more electromagnetic signal sources by said mobile devices within the said notional boundary. It may be that the signal source profile associated with each said boundary comprises, for each of one or more electromagnetic signal sources, expected angle of arrival data relating to, such as angles or directions of arrival of, (e.g. averages, e.g. accumulated means, of previously determined angles or directions of arrival) electromagnetic signals received from one or more electromagnetic signal sources by said mobile devices within the said notional boundary.
- the signal source profile associated with each said notional boundary comprises data relating to expected rates of change with respect to location within the said notional boundary of one or more parameters (e.g. received signal strengths, timing parameters, angle of arrival parameters) relating to electromagnetic signals received from one or more said electromagnetic signal sources by said mobile devices within the said notional boundary. It may be that the method comprises dynamically updating the said signal source profiles over time. It may be that the method comprises: obtaining (e.g.
- the method comprises adjusting the layout data responsive to said determination.
- the method further comprises determining a said composite spatial feature path comprising locations of a plurality of devices in combination (typically including the said first and second mobile devices in combination) in dependence on said determination that said locations of the first and second mobile devices relate to the same said spatial feature.
- the respective signal source data relating to said signals received by the first and second devices may be compared directly, or more typically the respective signal source data is compared to one or more said signal source profiles (typically each of which is associated with a respective said notional boundary) to determine whether the signal source data from one or both devices matches a said signal source profile to thereby determine whether the said locations of the first and second mobile devices are locations relating to the same said spatial feature (e.g. are part of the same room).
- the method comprises, for one or more or each said location set: obtaining (e.g. receiving) signal source data relating to electromagnetic signals received by the said one or more mobile devices at the locations of the location set from one or more electromagnetic signal sources; comparing the said signal source data to the signal source profiles associated with the said one or more or two or more notional boundaries; and determining the said respective relevance parameters associated with the said respective one or more or two or more notional boundaries in dependence on the said comparison between the signal source data and the respective signal source profiles.
- the method comprises processing said location data (e.g. the location sets) in dependence on the said signal source profiles (and typically on the obtained signal source data) prior to the step of adjusting the said layout data in dependence on the obtained location data.
- the method comprises obtaining and processing signal source data relating to electromagnetic signals received within the indoor region by one or more said mobile devices at one or more locations outside of a said notional boundary; determining a similarity between said signal source data and a said signal source profile associated with the said notional boundary; and responsively adjusting a said notional boundary to include (e.g. enclose or substantially enclose) one or more of the said one or more locations outside of the said notional boundary (prior to said adjustment).
- the layout data comprises boundary data representing a plurality of notional boundaries of the indoor region each of which relates to a respective said spatial feature, the method further comprising: obtaining and processing signal source data relating to electromagnetic signals received within the indoor region (e.g.
- the method comprises comparing the said signal source data to signal source profiles associated with the said pair of notional boundaries and identifying a said transition path extending between a pair of (e.g.
- the method comprises determining from the signal source data data relating to rates of change with respect to location of one or more parameters relating to or derived from electromagnetic signals received from one or more said electromagnetic signal sources by one or more said mobile devices in the indoor region (e.g.
- the method comprises deriving a transition path signal source profile from signal source data relating to signals detected from one or more electromagnetic signal sources by one or more mobile devices on the said transition path between the said pair of notional boundaries. It may be that the method comprises determining that a said mobile device is on the said transition path by comparing signal source data relating to electromagnetic signals received on the said transition path by the said mobile device to the transition path signal source profile. It may be that the layout data comprises boundary data representing a plurality of notional boundaries each of which relates to a respective said spatial feature, the method further comprising: obtaining and processing (e.g. the said) location data relating to changes in location of one or more mobile devices within the said indoor region (e.g.
- the method comprises: obtaining location specific geographical data relating to the indoor region, the location specific geographical data comprising one or more layout restrictions; and adjusting the layout data in dependence on the said layout restrictions.
- the layout restrictions are typically indicative of areas which cannot be occupied by the determined layout of the indoor region.
- the layout restrictions comprise any one or more of the group comprising: outdoor regions; roads; building boundaries; concourses; restricted areas; principal paths.
- the location specific geographical data comprises or is derived from any one or more of the group comprising: a map; one or more images of (at least a portion of) the indoor region; one or more satellite images of a built environment (e.g.
- the method comprises: obtaining further location data relating to changes in location of a plurality of mobile devices within the said indoor region; and adjusting the said adjusted layout data in dependence on the said obtained further location data. It may be that the method comprises determining one or more points of interest in the indoor region and storing data associating the said one or more determined points of interest with the indoor region. It may be that the method comprises determining one or more points of interest associated with one or more or each said notional boundary and storing data associating the said one or more determined points of interest with the respective notional boundary. It may be that the method comprises determining the said points of interest from one or more map sources (such as Openstreet maps).
- map sources such as Openstreet maps
- the method comprises determining the said points of interest by obtaining one or more images (typically created and/or transmitted and/or received by one or more mobile devices) georeferenced to a location within the indoor region (e.g. within a respective notional boundary); and processing said images to identify one or more points of interest within the indoor region (or determined to be within a respective said notional boundary). It may be that the method comprises determining the said points of interest by obtaining one or more LIDAR scans of the indoor region (or of an area within a respective boundary); and processing the said LIDAR scans to identify one or more points of interest within the indoor region (or determined to be within a respective said notional boundary).
- the method comprises determining the said points of interest by obtaining social media data relating to the indoor region (or to an area within a respective boundary); and processing the said social media data to identify one or more points of interest within the indoor region (or determined to be within a respective said notional boundary).
- Said social media data may be related to the indoor region (or to a respective said notional boundary) by being georeferenced to a location within the indoor region (or a location determined to be within a respective said notional boundary).
- Said social media traffic may comprise any one or more of: text data; audio data; image data; video data (for example).
- the method comprises determining the said points of interest by obtaining audio data relating to the indoor region (or relating to a respective said notional boundary); and processing the said audio data to identify one or more points of interest within the indoor region (or within a respective said notional boundary).
- Said audio data may be audio data georeferenced to a location within the indoor region or within a respective said notional boundary.
- the method comprises identifying one or more patterns in said audio data to thereby identify one or more points of interest within the indoor region (or within a respective said notional boundary), e.g. by comparing one or more patterns in said audio data to one or more models to thereby identify one or more points of interest within the indoor region (or within a respective said notional boundary).
- a second aspect of the invention provides a computer processing system comprising one or more computer processors (typically hardware processors e.g. microprocessors or microcontrollers), the computer processing system being configured to perform a method comprising: obtaining spatial feature data identifying locations of one or more spatial features of the indoor region.
- the method further comprises generating layout data relating to (a layout of) the indoor region in dependence on the obtained spatial feature data.
- the method further comprises obtaining location data relating to changes in location of a mobile device or a plurality of mobile devices within the said indoor region.
- the method comprises adjusting the said layout data in dependence on the obtained location data.
- a third aspect of the invention comprises computer program code for causing a computer processing system comprising one or more computer processors to perform the method according to the first aspect of the invention.
- a fourth aspect of the invention comprises a non-transitory computer readable medium storing computer program code according to the third aspect of the invention.
- Figure 1 is a schematic block diagram of a mobile telecommunications device in communication with a server computer
- Figure 2 is a schematic representation of a layout of an indoor region
- Figure 3 is a schematic representation of a layout of the indoor region determined from spatial feature data, the determined layout of the indoor region being superimposed on the schematic of Figure 2
- Figure 4a is a flow chart illustrating a method of generating and adjusting the layout data of Figure 3
- Figure 4b is a flow chart illustrating step 70 from Figure 4a in more detail
- Figure 4c is a block diagram illustrating a fuzzy logic system for determining a probability of which notional boundary contains the locations of a location set
- Figure 5 is the schematic representation of Figure 3 also showing paths followed by three mobile devices changing location in the indoor region of Figure 2
- Figure 6 is a schematic representation of the layout of the indoor region of Figure 3 adjusted in dependence on changes of movement of the mobile devices shown in Figure 5
- Figure 7 is a schematic representation of the
- FIG. 1 is a block diagram of a mobile telecommunications device 1 (such as a mobile smartphone, phablet, tablet, laptop, personal data assistant or wearable device such as a smartwatch) comprising a (typically hardware) computer processor 2 (which is typically a general purpose computer processor such as a microprocessor or microcontroller), a memory 4, an accelerometer 5, data communication antennas 6 (one or more or each of which may be directional antennas) and an orientation sensor (such as a gyroscope or magnetometer) 7.
- a computer processor 2 which is typically a general purpose computer processor such as a microprocessor or microcontroller
- a memory 4 which is typically a general purpose computer processor such as a microprocessor or microcontroller
- an accelerometer 5 data communication antennas 6 (one or more or each of which may be directional antennas)
- an orientation sensor such as a gyroscope or magnetometer
- the data communication antennas 6 typically comprise a cellular telecommunications antenna, a Wi-Fi antenna and a Bluetooth antenna (not shown) configured to allow the mobile communications device 1 to communicate by cellular telecommunications, Wi-Fi and Bluetooth.
- the mobile device 1 further comprises a location sensor 9.
- the location sensor 9 comprises a Global Navigation Satellite System (GNSS) antenna (e.g. Global Positioning System (GPS) antenna) configured to detect signals from GNSS satellites and a GNSS processor configured to process the signals received from the satellites to estimate the location of the mobile device 1 (alternatively processor 2 of the mobile device processes the signals from the GNSS satellites).
- GNSS Global Navigation Satellite System
- GPS Global Positioning System
- the location sensor 9 may additionally or alternatively comprise a Wireless Positioning System (WPS) computer program application (typically comprising stored computer program instructions) configured to cause the processor 2 of the mobile device 1 (or an additional dedicated processor) to estimate a location of the mobile device 1 by processing electromagnetic signals detected by one or more of the antennas 6 from terrestrial electromagnetic signal sources of known (e.g. two dimensional) location (e.g. the two dimensional locations of electromagnetic signal sources may be stored in memory 4) and processing the received signals together with the known two dimensional locations of the electromagnetic signal sources to estimate the location of the mobile device 1 , for example using received signal strengths together with the locations of the electromagnetic signal sources in a triangulation algorithm or with stored (e.g.
- WPS Wireless Positioning System
- the location sensor 9 may additionally or alternatively comprise a pedestrian dead reckoning application (typically comprising computer program instructions) configured to cause the processor 2 of the mobile device 1 to determine the location of the mobile device from accelerometer and orientation data from the accelerometer and orientation sensor 5, 7 respectively.
- the mobile device 1 can communicate with a server computer 8 by way of a wireless telecommunications link 11 (which typically connects to a base station which propagates data to and from the server 8 across a telecommunications network) using one or more of the data communication antennas 6.
- the server computer 8 comprises a processor 10 (which is again typically a general purpose computer processor such as a microprocessor or microcontroller) and a memory 12, the processor 10 being configured to execute computer program instructions stored in the memory 12.
- the mobile device 1 typically determines location data as it changes location, and sends the location data to the server 8 using one or more of its data communication antennas 6.
- the location data may comprise estimates of the location of the mobile device 1 (e.g. determined by the location sensor 9) or it may comprise positioning data from which locations of the mobile device 1 can be estimated (e.g. signal source data detected from a plurality of electromagnetic signal sources, or accelerometer and orientation sensor data from which a location of the device 1 can be estimated).
- the processor 10 of the server 8 may be configured to execute computer program instructions stored on server memory 12 to cause the server to estimate the said locations of the mobile devices from the positioning data.
- the server 8 can track the location of the mobile device 1. Heading data (typically measured by the orientation sensor 7 of the mobile device) is also typically transmitted by the mobile device 1 to the server 8. A plurality of such devices 1 is provided which report location data to the server 8.
- Figure 2 is a schematic representation of an indoor region 20 of a built environment (typically a building) such as a shopping mall or airport.
- the indoor region comprises a straight main thoroughfare 22 (which in use carries a relatively high level of footfall), five rooms 24-32 branching off the main thoroughfare at intermediate portions along the length of the main thoroughfare, the rooms 24-32 being offset from each other along the length of the main thoroughfare and being accessible to the public, and a turning point 34 at an end of the main thoroughfare 22 leading to a further straight thoroughfare.
- WO2016/066987 which is incorporated in full herein by reference, discloses a method of obtaining and updating a database of spatial features associated with a region.
- the method comprises: receiving positioning data that has been collected at a plurality of locations within the region; processing the collected positioning data to identify at least one candidate spatial feature associated with the region; identifying at least one other spatial feature corresponding to said at least one candidate spatial feature, said at least one other spatial feature and said at least one candidate spatial feature as a whole constituting matching spatial features; processing said matching spatial features; and updating the database of spatial features in dependence on the processing of said matching spatial features.
- This allows spatial features of an indoor region to be identified from unstructured, crowdsourced positioning data from multiple mobile devices moving in the indoor region.
- the identified spatial features may be areas (or spaces) within the indoor region (such as rooms or corridors), linear features (e.g. walls), gaps in features (e.g.
- the spatial features are (in some cases discrete) areas or spaces within the region in which people change location and/or which people enter and exit.
- the specific types of the spatial features identified may be stored in the database, together with the locations of the spatial features.
- a principal path 40 (see Figure 3) of the indoor region 20, corresponding to a main route through the main thoroughfare 22, can be identified from location data relating to changes in location of a plurality of mobile devices within the indoor region 20.
- the principal path 40 can be identified by detecting one or more straight line paths from the said location data.
- the straight line paths may be correlated to identify straight line paths in common between devices.
- Detected straight line paths (which may comprise only validated straight line paths which have been detected from more than one device, and may be averaged straight line paths derived from a plurality of similar detected straight line paths) may be concatenated to provide the principal path 40.
- the principal path typically extends through indoor regions but may extend into outdoor regions, indeed can be preferable for the principal path to extend outdoors, or at least be derived using some measurement of the location of mobile devices which are outdoors, as this may enable better global navigation satellite system position measurements to be used to estimate the absolute position of the principal path.
- the identification of the principal path 40 may also involve taking into account the volume of traffic following detected straight line paths and a speed of movement of the mobile devices along the detected straight line paths. For example, it may be that only detected straight line paths which have been followed by a number of devices (and/or a number of times) which exceeds a threshold number. It may additionally or alternatively be that only changes in location by devices changing location at a speed exceeding a threshold speed are taken into account when detecting straight line paths, or only straight line paths detected from location data relating to changes in location of devices changing location at a speed exceeding the threshold speed are considered for correlation and/or concatenation.
- Respective detected straight line paths may be weighted in dependence on, for example, the number of devices determined to have followed the respective path, and/or on the speed of movement along the path. Such weightings may be taken into account when deriving the principal path 40 from the detected paths.
- the paths are typically straight line paths, they are not necessarily. Straight line paths can be derived using linear regression.
- the principal path 40 may be determined from third party data relating to the indoor region.
- Figure 4a is a flowchart of a method of generating and adjusting layout data representing the layout of the indoor region 20, typically performed by the processor 10 of the server 8 executing computer program instructions stored in server memory 12.
- a first step 60 spatial feature data relating to locations (and preferably also the types) of spatial features of the indoor region 20 is obtained.
- step 60 is performed by the server 8 receiving location data collected and transmitted thereto by mobile devices 1 at a plurality of locations within the indoor region 20 and processing the location data to generate spatial feature data relating to spatial features within the building using the techniques described in WO2016/066987.
- determining spatial feature data from crowdsourced location data relating to changing locations of a plurality of mobile devices within the indoor region is not an essential feature of the present invention, and that a database of spatial features may already exist (which may have been previously generated for example using the methods of WO2016/066987 or by any other means) in which case it may be that step 60 may involve obtaining the said spatial feature data from a memory.
- a next step 62 (or optionally as part of step 60), the principal path 40 is determined or obtained as described above.
- a next step 64 for each spatial feature identified in step 60, notional boundaries (typically in the form of polygons) are generated, taking into account the locations of the respective spatial features from the spatial feature data (and, where provided, the types of spatial features - e.g. different spatial features may be provided with different notional boundaries of different shapes and/or sizes).
- the notional boundaries are initially relatively small in size (e.g. a rectangle of 1 m by 2m), typically smaller than the spatial features they represent, such that adjusting a notional boundary typically comprises expanding the said notional boundary.
- layout data 42 representing the layout of the indoor region 20 is generated as shown in Figure 3 (overlaid on the schematic of Figure 2 for clarity) from the determined principal path 40 and the notional boundaries.
- the layout data 42 comprises a straight line 40 representing the principal path, notional boundaries 42-50 representing the rooms 24-32 respectively and a further notional boundary 52 representing the turning point 34.
- the boundaries 42-52 extend from the principal path 40.
- the boundaries 42-52 are of predefined size and shape selected in dependence on the types of spatial feature to which they relate.
- This location data may comprise or consist of the same location data used to identify the spatial features; alternatively, this location data may comprise or consist of location data obtained subsequently (or even in some cases prior) to the location data used to identify the said spatial features.
- the location data may provide a plurality of locations determined by the respective devices or data from which a plurality of locations of the said respective devices can be determined.
- step 68 also comprises determining the said locations of the respective devices.
- Step 68 typically involves deriving respective location sets from the location data and outputting each location set in turn to step 70, steps 70 to 76 being repeated so as to process each of the location sets.
- Each location set typically comprises a set of locations (e.g.
- a fuzzy rule is then implemented to determine a point on the principal path 40 which is closest to the path formed together by the locations of the location set.
- a segment of the principal path 40 of predetermined length (e.g. 5 or 10m) centred on that point is then output by the rule to step 70b.
- the output of step 70a is a (e.g. 5m or 10m long) segment of the principal path 40 roughly extending in a straight line along thoroughfare 22 between points A and point B on Figure 5.
- the fuzzy logic algorithm determines one or more notional boundaries 42-52 near the identified segment of the principal path between points A and B on Figure 5.
- the inputs required for this step are: data identifying the the segment of the principal path 40 identified in step 70a; and the layout data generated in step 66 relating to locations of the connections of the respective notional boundaries 42-52 relative to the principal path 40.
- the fuzzy rule applied by the fuzzy logic system at this step determines which of the notional boundaries 42-52 have a connection to the principal path 40 which is less than a predetermined distance (e.g. 10 metres) from the segment of the principal path 40 identified in step 70a. Firstly, the shortest distances of the respective connection points to the principal path 40 of the notional boundaries 42-52 to the segment of the principal path 40 identified in step 70a are calculated.
- the inputs required for this step are: the shortest distances of the connection points of the notional boundaries identified in step 70b to the segment of the principal path 40 identified in step 70a; the directions of movement of the mobile device(s) along the spatial feature path comprising the locations of the location set; and the respective numbers (or proportions) of locations of the location set which are located within the respective notional boundaries (42, 44) identified in step 70b.
- the directions of movement of mobile devices 1 may be determined from heading orientation data received from the mobile devices 1 , and/or from the locations of the location set.
- the number of locations of the location set within the respective boundaries can be determined by comparing the locations of the location set with the locations surrounded by the respective boundaries.
- the fuzzy logic system implements a fuzzy rule at this stage which calculates a probability value for each notional boundary identified in step 70b.
- the boundary 42 may be expanded (e.g. by the minimum expansion necessary, or by discrete changes in one or more dimensions of the boundary 42) so that the adjusted boundary 42' contains a number of locations of the location set provided outside of the notional boundary 42 prior to adjustment determined in dependence on the probability calculated for the notional boundary in step 70c.
- Adjusting the notional boundaries may include adding new edges to existing polygons. This is useful for example to avoid excessively extending a long side of a polygon if new location data is only available along one side of the polygon (for example).
- the iterations may for example take place periodically, or at predetermined times, or when a predetermined amount of path data has been aggregated (e.g. for a region).
- devices 1 e.g. devices X, Y, O
- they receive electromagnetic signals from terrestrial electromagnetic signal sources (which are themselves typically located within the indoor region), such as Wi-Fi access points, Bluetooth beacons and so on (not shown), using their data communications antennas 6.
- the device processors 2 are configured to execute computer program instructions which derive signal source data from electromagnetic signals they receive within the said notional boundaries and this signal source data is transmitted to the server 8.
- the signal source data is typically georeferenced to the location at which the signals from which it is derived were received.
- the signal source data may comprise received signal strengths and/or timing data (e.g. the times of flight of received signals) and/or angle of arrival data (e.g. the angles or directions of arrival of signals received by the said mobile devices) relating to electromagnetic signals received by the mobile devices within the said respective notional boundaries 42-52 from respective electromagnetic signal sources. It may be that the signal source data comprises identifiers of electromagnetic signal sources detected by one or more said mobile devices within the said respective notional boundaries 42-52.
- the server processor 10 typically executes computer program instructions stored on server memory 12 to derive respective signal source profiles for each of the notional boundaries 42-52 from signal source data received from the said mobile devices 1 (e.g. devices X, Y, O) at locations within the said notional boundaries 42-52.
- the devices X, Y, O) in the indoor region can be compared to determined signal profiles associated with notional boundaries 42-52 in order to validate estimated locations of the said devices provided in or estimated from the said location data. For example if it is estimated that a said device is located in a said notional boundary, this can be validated or invalidated by comparing signal source data collected at that location to the signal source profile associated with that notional boundary. Additionally or alternatively, signal source data collected at a location inside or outside of a notional boundary can be compared to the signal source profiles associated with one or more notional boundaries relating to respective spatial features to determine whether that location is associated with the same spatial feature as one of the said notional boundaries (e.g. if the signal source data conforms to the signal profile).
- Device Y begins to transmit to the server 8 location data relating to its changing location within the indoor region 20 when it is within an area of the room 26 outside notional boundary 44 (e.g. because it was switched on at that location, or because location services were switched on at that location on device Y) at a location adjacent to the finally detected location of device X.
- Device Y initially changes location towards the end 84 of the room 26 before turning through 180° and changing location towards the main thoroughfare 22. This causes the device Y to change location through the end 86 of the notional boundary 44 and into the area around which the notional boundary 44 is provided.
- Device Y keeps changing location in that direction until it reaches the main thoroughfare 22, where it turns through 90° and changes location along the main thoroughfare towards the turning point 34.
- Said social media data may comprise any one or more of: text data; audio data; image data; video data (for example). Text, image or video data can be processed as set out above.
- points of interest can be identified by obtaining audio data (which may be for example social media data (e.g. audio data uploaded to social media) or data recorded by the mobile device 1 and transmitted to the server 8) relating to the indoor region or notional boundary 42-52 (e.g. detected by one or more mobile devices 1 in the indoor region or in a respective notional boundary 42-52); and processing the said audio data to identify one or more points of interest within the indoor region or notional boundary 42-52.
- audio data which may be for example social media data (e.g. audio data uploaded to social media) or data recorded by the mobile device 1 and transmitted to the server 8) relating to the indoor region or notional boundary 42-52 (e.g. detected by one or more mobile devices 1 in the indoor region or in a respective notional boundary 42-52); and processing the said audio data to identify one or more points of interest
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
The invention relates to a method of mapping an indoor region, the method comprising: obtaining spatial feature data identifying locations of one or more spatial features of the indoor region; generating layout data relating to the indoor region in dependence on the obtained spatial feature data; obtaining location data relating to changes in location of a plurality of mobile devices within the said indoor region; and adjusting the said layout data in dependence on the obtained location data.
Description
METHOD OF MAPPING INDOOR REGION Field of the invention The invention relates to a method of mapping an indoor region and computer processing apparatus configured to map an indoor region. Background to the invention Various methods exist to allow a mobile device (such as a smartphone) to estimate its location. Devices may, for example, include a positioning module, such as a Global Navigation Satellite System (GNSS) which provides an estimate of a user's absolute position. Other systems, such as Pedometer Dead Reckoning (PDR) systems, provide an estimate of the user's relative position, which can be combined with previous absolute position estimates to provide a current, real-time position estimate. A further class of positioning system carries out range-finding on electromagnetic signals received at the device, and combines the range data with predetermined information about the sources of the signals (such as their location) to produce a position estimate. The GNSS and similar systems can produce relatively accurate position estimates, but are limited in that they typically do not function indoors. The relative positioning systems (such as PDR) and range-finding systems (such as Wi-Fi location systems) may be relatively less accurate, but are in some cases the only systems which
provide meaningful results indoors. The accuracy of range-finding positioning is limited by factors such as multi-path interference, attenuation by walls, and the like, which can result in poor performance even when the location of electromagnetic signal sources (such as Wireless Access Points, WAPs) is known precisely. The accuracy of range-finding positioning systems can be improved by 'war-walking' in the vicinity of the above-mentioned electromagnetic signal sources, so as to assist in mapping particular received signals to a particular location within a building. This can be done as part of a 'crowd-sourcing' initiative, whereby a number of users contribute data over time, allowing refinement of the location database. However, it is generally very difficult and inconvenient to have the war-walking/crowd-sourcing done in a structured and rigorous fashion, thus preventing the easy modelling of building features and the like. The present invention seeks to address deficiencies in the prior art and, in particular, improving the accuracy of range-finding positioning systems (particularly in indoor regions). Summary of the invention A first aspect of the invention provides a (typically computer implemented) method of mapping an indoor region, the method comprising: obtaining spatial feature data identifying locations of one or more spatial features of the indoor region. Typically the method further comprises generating layout data relating to (a layout of) the indoor region in dependence on the obtained spatial feature data. Typically the method further comprises obtaining location data relating to changes in location of a mobile device within the indoor region or a plurality of mobile devices within the said indoor region. Typically the method further comprises adjusting the said layout data in dependence on the obtained location data. By obtaining location data relating to changes in location of a plurality of mobile devices within the said indoor region and adjusting the said layout data in dependence on the obtained location data, the layout data can be refined over time from crowdsourced location data, providing accurate layout data without having to perform expensive and time consuming dedicated mapping of the indoor region. In addition, the layout data can be dynamically adjusted over time by the same method.
In some embodiments, the spatial feature data is also obtained from location data relating to changes in location of a plurality of mobile devices within the indoor region. This may be the same location data used to refine the layout data, or it may be different location data (e.g. location data obtained prior to the location data used to refine the layout data). In this case the spatial feature data, the layout data and the adjusted layout data is obtained from crowdsourced location data relating to changes in location of a plurality of mobile devices within the indoor region, all without having to perform expensive and time consuming dedicated mapping of the indoor region and without having to have prior background knowledge of the indoor region. Accordingly, it may be that the method comprises generating the said spatial feature data from received location data relating to changes in location of a plurality of mobile devices within the said indoor region. Alternatively a pre-existing database of spatial features may be provided from which the spatial feature data is obtained. Typically the said layout data is generated in dependence on the locations of spatial features provided in the spatial feature data. The spatial features whose locations are identified by the spatial feature data may comprise any one or more of the group comprising: (e.g. enclosed) areas (or spaces) within the indoor region (such as rooms or corridors); linear features (e.g. walls); gaps in features (e.g. portals such as doors); floor-change features such as elevators, escalators or staircases; turning points; ends of corridors; premises (e.g. stores); seating areas. Most typically the spatial features comprise or consist of (typically discrete) areas or spaces within the indoor region in which people change location and/or which people enter and exit. It may be that the spatial feature data identifies respective types of spatial features of the said one or more spatial feature. For example, the spatial feature data may identify whether the spatial features are areas (or spaces) within the indoor region (such as rooms or corridors), linear features (e.g. walls), gaps in features (e.g. portals such as doors), floor-change features such as elevators, escalators or staircases, turning points, ends of corridors, premises (e.g. stores) or seating areas. Different spatial features may be of different types. It may be that the said layout data is generated in dependence on respective types of spatial features of the said one or more spatial features specified in the said spatial feature data.
Typically the method is performed on one or more server computers (typically each comprising one or more computer (typically hardware) processors). Typically the step of obtaining location data relating to changes in location of a plurality of mobile devices within the said indoor region comprises receiving location data relating to changes in location of a plurality of mobile devices (e.g. from the said plurality of mobile devices). It may be that the location data contains positioning data (e.g. electromagnetic signal data detected from one or more terrestrial electromagnetic signal sources) collected by the said mobile devices or data derived therefrom. It may be that the method comprises determining changes in location of the mobile devices from the said positioning data or data derived therefrom. The said positioning data typically comprises data from which the locations of the mobile devices can be determined. Additionally or alternatively the location data may comprise locations of the mobile devices determined by the mobile devices themselves. The method may further comprise outputting (e.g. transmitting) said (adjusted) layout data (e.g. in response to a request for said layout data, e.g. from a mobile device). The method may further comprise (e.g. a mobile device) determining a location of a (or the) mobile device in dependence on the said (adjusted) layout data. It may be that the layout data comprises boundary data representing one or more (e.g. two dimensional) notional boundaries, each of the said notional boundaries relating to (e.g. a boundary adjacent to or provided around at least a portion of or provided substantially around at least a portion of) a respective said spatial feature. Typically the said notional boundaries are each associated with a location of the said spatial feature (e.g. provided in the said spatial feature data) to which it relates. It may be that the said notional boundaries relate to estimated locations of boundaries to movement of one or more people therethrough. The notional boundaries may represent estimated locations of structural (e.g. building) boundaries which are impassable by people, such as walls or the perimeters of a room. Alternatively, the notional boundaries may represent estimated locations of non- structural boundaries (e.g. a boundary which is in theory passable by people, but which people are encouraged not to cross, e.g. by one or more signs), such as a line (e.g. painted on a floor), marking a limit of an area (e.g. separating an area to which
the general public are permitted entry and an area to which the general public are not permitted entry). The notional boundaries may be represented positively (e.g. by data representing the notional boundary itself), or negatively (e.g. by data representing one or more regions limited by the notional boundary). It may be that the said notional boundaries each relate to a spatial feature comprising a (typically discrete) area or space within the indoor region in which people change location and/or which people enter and exit (such as a room, a premises (e.g. a store) or a seating area). It may be that the said notional boundaries (prior to the step of adjusting the said layout data in dependence on the obtained location data) are of predetermined size and/or shape. It may be that the predetermined size and/or shape is/are selected dependent on types of spatial features the respective notional boundaries relate to. It may be that one or more or each of the said notional boundaries comprises or consists of one or more curved edges. It may be that one or more or each of the said notional boundaries comprise or consist of one or more straight edges. It may be that one or more or each of the said notional boundaries are represented by a (typically two dimensional) polygon. It may be that each of the said notional boundaries are of the same size and/or shape, but more typically different notional boundaries are provided with different sizes and/or shapes. It may be that the boundary data represents respective notional boundaries enclosing or substantially enclosing respective areas of the indoor region each comprising at least a portion of the said spatial feature to which the respective notional boundary relates. It may be that one or more edges of one or more or each of the notional boundaries are provided with respective openings. For example, it may be that a said notional
boundary comprises one or more edges comprising an opening (e.g. a representation of a portal, doorway or elevator door) or an opening may be provided between two edges of a said notional boundary. It may be that the step of adjusting the said layout data in dependence on the obtained location data comprises adjusting (e.g. expanding or contracting) the notional boundaries in dependence on the obtained location data. It may be that the method comprises adjusting the boundary data to thereby adjust a size and/or shape of one or more said notional boundaries in dependence on the obtained location data. It may be that the method comprises determining from the location data a plurality of location sets, each location set of the said plurality of location sets comprising a plurality of locations, the said plurality of locations being locations of a mobile device of the said plurality or of a plurality of the said mobile devices in combination. It may be that the step of adjusting the said layout data in dependence on the obtained location data comprises adjusting (e.g. expanding or contracting) one or more or each of the (e.g. sizes and/or shapes of the) said notional boundaries in dependence on the location sets. It may be that one or more or each of the said location sets comprise locations adjacent to a said notional boundary and/or within a said notional boundary and/or crossing a said notional boundary. It may be that the step of adjusting the said layout data in dependence on the obtained location data comprises adjusting the said layout data in dependence on said location sets. It may be that one or more or each of the said location sets comprise a spatial feature path, each said spatial feature path extending from outside a said notional boundary to inside the said notional boundary through a portal and subsequently from inside the said notional boundary to outside the said notional boundary through the or another said portal.
It may be that the said spatial feature paths are paths determined to have been followed by each of one or more mobile devices. It may be that one or more of the said spatial feature paths comprise a composite spatial feature path comprising locations of a plurality of said mobile devices in combination. Typically one or more or each of the said spatial feature paths or one or more or each of the said composite spatial feature paths is a path which has been determined to have crossed a said notional boundary. It may be that the said boundary data represents a plurality of notional boundaries, each of the said notional boundaries relating to (e.g. a boundary adjacent to or provided around at least a portion of or provided substantially around at least a portion of) a respective said spatial feature, the method further comprising, for one or more or each said location set and for one or more or two or more of the said notional boundaries, determining respective relevance parameters indicative (e.g. probabilities) of whether the locations of the said location set relate to the same spatial features as the said respective one or more or two or more notional boundaries. It may be that the step of determining respective relevance parameters indicative (e.g. probabilities) of whether the locations of the said location set relating to the same spatial features as the said respective one or more or two or more notional boundaries is performed by fuzzy logic. It may be that the method comprises adjusting one or more of the said one or more or two or more notional boundaries in dependence on the said determined relevance parameters (e.g. probabilities). It may be that the method comprises adjusting the size and/or shape of one or more of the said one or more or two or more notional boundaries in dependence on the determined relevance parameter(s) associated with that notional boundary relative to the determined relevance parameter(s) associated with the other notional boundaries of the said one or more or two or more notional boundaries.
It may be that the method comprises obtaining a principal path through the indoor region, wherein the said spatial features extend (e.g. branch) from (and are typically connected to and/or are typically in communication with) the said principal path. The principal path may be obtained from (for example) third party information relating to the indoor region. Alternatively, the principal path may be determined from (e.g. the said) location data relating to changes in location of a plurality of mobile devices within the said indoor region. It may be that the said principal path is determined from location data relating to changes in location of a plurality of mobile devices within the said indoor region by detecting one or more (e.g. straight line) paths from the said location data. It may be that the said principal path is determined from location data relating to changes in location of a plurality of mobile devices within the said indoor region by: determining a plurality of (e.g. straight line) paths from the location data; assigning a weighting to each of the said (e.g. straight line) paths based on a number of times devices have followed the respective (e.g. straight line) path (e.g. optionally only from location data relating to changes in location of one or more mobile devices having a speed exceeding a predefined threshold); and determining the said principal path in dependence on the weightings assigned applied to the (e.g. straight line) paths (e.g. selecting the (e.g. straight line) path having the weighting indicative of the greatest number of times devices have followed a said (e.g. straight line) path). It may be that one or more said (e.g. straight line) paths are composite (e.g. straight line) paths formed by changes in location of a plurality of devices in combination. The principal path may be determined by correlating and/or connecting a plurality of said (e.g. straight line) paths. The principal path may extend between an indoor location (e.g. for example including at least one location where global navigation satellite system measurements are not available) to at least one outdoor location (e.g. where global navigation satellite system measurements are available). This can enable better estimation of the absolute position of the principal path. It may be that the method comprises for one or more or each said location set, identifying the said one or more or two or more notional boundaries (typically prior to
determining the said relevance parameters) by: identifying which of the notional boundaries represented by the boundary data meet one or more proximity criteria with respect to the locations of the location set. It may be that the method comprises, for one or more or each said location set, identifying the said one or more or two or more notional boundaries (typically prior to determining the said relevance parameters) by: determining a segment of the said principal path which meets one or more proximity criteria in respect of (e.g. closest to) the locations of the location set; and identifying which of the notional boundaries represented by the boundary data meet one or more proximity criteria with respect to the said segment of the said principal path. It may be that the method comprises obtaining (e.g. receiving) signal source data relating to electromagnetic signals detected by one or more of the said plurality of mobile devices at one or more locations within the indoor region, or within one or more said notional boundaries, from one or more (typically terrestrial) electromagnetic signal sources (e.g. Wi-Fi access points or Bluetooth beacons). For example, the signal source data may comprise received signal strengths of electromagnetic signals received by one or more said mobile devices at one or more locations determined to be within a said notional boundary from respective (typically terrestrial) electromagnetic signal sources. The signal source data may comprise timing data relating to the timing of electromagnetic signals received by one or more said mobile devices at one or more locations determined to be within the said notional boundary from respective electromagnetic signal sources (e.g. the times of flight of received signals from the respective electromagnetic signal sources by the respective mobile devices). The signal source data may comprise angle of arrival data relating to electromagnetic signals received by one or more said mobile devices at one or more locations determined to be within the said notional boundary from respective electromagnetic signal sources (e.g. the angles or directions of arrival of signals received by the said mobile devices from the respective electromagnetic signal sources). It may be that the signal source data comprises identifiers of electromagnetic signal sources detected by one or more said mobile devices at one or more locations determined to be within the said notional boundary. It may be that the method comprises obtaining (e.g. receiving) signal source data relating to electromagnetic signals detected by one or more of the said plurality of
mobile devices within each of one or more said notional boundaries from one or more (typically terrestrial) electromagnetic signal sources (e.g. Wi-Fi access points or Bluetooth beacons), and deriving a signal source profile for each of the said one or more notional boundaries from said signal source data. It may be that the said boundary data represents a plurality of notional boundaries each of which relates to a respective said spatial feature, wherein the method further comprises obtaining, for each of the said notional boundaries, signal source data relating to electromagnetic signals detected by one or more said mobile devices at one or more locations determined to be within the said notional boundary from one or more (typically terrestrial) electromagnetic signal sources (e.g. Wi-Fi access points or Bluetooth beacons); and deriving respective signal source profiles for each of the said notional boundaries from said signal source data. Each said signal source profile is typically associated with a respective said notional boundary. It may be that the signal source profile associated with each said notional boundary comprises, for each of one or more electromagnetic signal sources, expected values (e.g. averages, e.g. accumulated means, of previously determined values by one or more said mobile devices) of one or more parameters relating to or derived from electromagnetic signals received from one or more said electromagnetic signal sources by one or more said mobile devices within the said notional boundary. It may be that the signal source profile associated with each said notional boundary comprises, for each of one or more electromagnetic signal sources, expected signal strengths (e.g. averages, e.g. accumulated means, of previously determined signal strengths) of electromagnetic signals received from one or more said electromagnetic signal sources by said mobile devices within the said notional boundary. It may be that the signal source profile associated with each said boundary comprises, for each of one or more electromagnetic signal sources, expected timing data relating to, such as times of flight of, (e.g. averages, e.g. accumulated means, of previously determined times of flight) electromagnetic signals received from one or more electromagnetic signal sources by said mobile devices within the said notional boundary. It may be that the signal source profile associated with each said boundary comprises, for each of one or more electromagnetic signal sources, expected angle of arrival data relating to, such as angles or directions of arrival of, (e.g. averages, e.g. accumulated means, of previously determined angles or directions of arrival)
electromagnetic signals received from one or more electromagnetic signal sources by said mobile devices within the said notional boundary. It may be that the signal source profile associated with each said notional boundary comprises data relating to expected rates of change with respect to location within the said notional boundary of one or more parameters (e.g. received signal strengths, timing parameters, angle of arrival parameters) relating to electromagnetic signals received from one or more said electromagnetic signal sources by said mobile devices within the said notional boundary. It may be that the method comprises dynamically updating the said signal source profiles over time. It may be that the method comprises: obtaining (e.g. receiving) signal source data relating to signals received by a first mobile device at one or more locations within the indoor region from one or more (typically terrestrial) electromagnetic signal sources; obtaining signal source data relating to signals received at one or more locations within the indoor region by a second mobile device from one or more (typically terrestrial) electromagnetic signal sources; and comparing said signal source data relating to said signals received by the first mobile device to said signal source data relating to said signals received by the second mobile device to thereby determine whether the said locations of the first and second mobile devices relate to the same said spatial feature (e.g. relate to the same room). It may be that the method comprises adjusting the layout data responsive to said determination. It may be that the method further comprises determining a said composite spatial feature path comprising locations of a plurality of devices in combination (typically including the said first and second mobile devices in combination) in dependence on said determination that said locations of the first and second mobile devices relate to the same said spatial feature. The respective signal source data relating to said signals received by the first and second devices may be compared directly, or more typically the respective signal source data is compared to one or more said signal source profiles (typically each of which is associated with a respective said notional boundary) to determine whether
the signal source data from one or both devices matches a said signal source profile to thereby determine whether the said locations of the first and second mobile devices are locations relating to the same said spatial feature (e.g. are part of the same room). It may be that the method comprises, for one or more or each said location set: obtaining (e.g. receiving) signal source data relating to electromagnetic signals received by the said one or more mobile devices at the locations of the location set from one or more electromagnetic signal sources; comparing the said signal source data to the signal source profiles associated with the said one or more or two or more notional boundaries; and determining the said respective relevance parameters associated with the said respective one or more or two or more notional boundaries in dependence on the said comparison between the signal source data and the respective signal source profiles. Thus, it may be that the method comprises processing said location data (e.g. the location sets) in dependence on the said signal source profiles (and typically on the obtained signal source data) prior to the step of adjusting the said layout data in dependence on the obtained location data. It may be that the method comprises obtaining and processing signal source data relating to electromagnetic signals received within the indoor region by one or more said mobile devices at one or more locations outside of a said notional boundary; determining a similarity between said signal source data and a said signal source profile associated with the said notional boundary; and responsively adjusting a said notional boundary to include (e.g. enclose or substantially enclose) one or more of the said one or more locations outside of the said notional boundary (prior to said adjustment). It may be that the layout data comprises boundary data representing a plurality of notional boundaries of the indoor region each of which relates to a respective said spatial feature, the method further comprising: obtaining and processing signal source data relating to electromagnetic signals received within the indoor region (e.g. at one or more locations between a pair of (e.g. adjacent) said notional boundaries or at one or more locations between a pair of (e.g. adjacent) said spatial features) by one or more mobile devices from one or more (typically terrestrial) electromagnetic signal sources; and identifying in dependence on the said signal source data (and
typically on the said spatial feature data) a transition path extending between a (or the) pair of (e.g. adjacent) said notional boundaries. Typically the transition path is outside of the notional boundaries of the said pair. It may be that the method comprises comparing the said signal source data to signal source profiles associated with the said pair of notional boundaries and identifying a said transition path extending between a pair of (e.g. adjacent) said notional boundaries responsive to a determination that the signal source data meets one or more difference criteria with respect to the signal profiles associated with the said notional boundaries. For example, it may be that the method comprises determining from the signal source data data relating to rates of change with respect to location of one or more parameters relating to or derived from electromagnetic signals received from one or more said electromagnetic signal sources by one or more said mobile devices in the indoor region (e.g. at one or more locations between said pair of notional boundaries); comparing the said data relating to said rates of change of said parameters to data relating to expected rates of change of said parameters with respect to location from signal profiles associated with the said pair of notional boundaries; and responsively determining that the said data relating to rates of change of said parameters determined from the said signal source data meet one or more difference criteria with respect to the data relating to the expected rates of change of said parameters from the said profiles. It may be that the method comprises identifying in dependence on both the said location data (e.g. on a said location sets) and the said signal source data a transition path extending between a pair of (e.g. adjacent) said notional boundaries. It may be that the method comprises deriving a transition path signal source profile from signal source data relating to signals detected from one or more electromagnetic signal sources by one or more mobile devices on the said transition path between the said pair of notional boundaries. It may be that the method comprises determining that a said mobile device is on the said transition path by comparing signal source data relating to electromagnetic signals received on the said transition path by the said mobile device to the transition path signal source profile.
It may be that the layout data comprises boundary data representing a plurality of notional boundaries each of which relates to a respective said spatial feature, the method further comprising: obtaining and processing (e.g. the said) location data relating to changes in location of one or more mobile devices within the said indoor region (e.g. including one or more locations determined to extend between a pair of said notional boundaries); and identifying in dependence on the said location data (and typically on the said spatial feature data) a transition path extending between a (or the said) pair of (e.g. adjacent) said notional boundaries. By identifying in dependence on the said location data (and typically on the said spatial feature data) a transition path extending between a pair of (e.g. adjacent) said notional boundaries, a conflict between said notional boundaries can be resolved. Accordingly, the method may comprise identifying in dependence on the said location data (and typically on the said spatial feature data) a transition path extending between a pair of (e.g. adjacent) said notional boundaries to thereby resolve a conflict between said boundaries. It may be that the method comprises: obtaining location specific geographical data relating to the indoor region, the location specific geographical data comprising one or more layout restrictions; and adjusting the layout data in dependence on the said layout restrictions. The layout restrictions are typically indicative of areas which cannot be occupied by the determined layout of the indoor region. For example, it may be that the layout restrictions comprise any one or more of the group comprising: outdoor regions; roads; building boundaries; concourses; restricted areas; principal paths. It may be that the location specific geographical data comprises or is derived from any one or more of the group comprising: a map; one or more images of (at least a portion of) the indoor region; one or more satellite images of a built environment (e.g. building) comprising the indoor region; one or more LIDAR scans of a built environment (e.g. building) comprising the indoor region. It may be that the method comprises processing the location specific geographical data to determine the said layout restrictions. It may be that the step of adjusting the layout data in dependence on the said layout restrictions comprises adjusting the said boundary data representing the said notional
boundaries (e.g. adjusting one or more said boundaries) in dependence on the said layout restrictions. It may be that the method comprises adjusting a said notional boundary represented by the said boundary data responsive to the said location data; determining a conflict between the adjusted boundary and the said layout restrictions; and adjusting the said adjusted notional boundary in dependence on the said layout restrictions (typically to remove the said conflict). It may be that the method comprises: obtaining further location data relating to changes in location of a plurality of mobile devices within the said indoor region; and adjusting the said adjusted layout data in dependence on the said obtained further location data. It may be that the method comprises determining one or more points of interest in the indoor region and storing data associating the said one or more determined points of interest with the indoor region. It may be that the method comprises determining one or more points of interest associated with one or more or each said notional boundary and storing data associating the said one or more determined points of interest with the respective notional boundary. It may be that the method comprises determining the said points of interest from one or more map sources (such as Openstreet maps). It may be that the method comprises determining the said points of interest by obtaining one or more images (typically created and/or transmitted and/or received by one or more mobile devices) georeferenced to a location within the indoor region (e.g. within a respective notional boundary); and processing said images to identify one or more points of interest within the indoor region (or determined to be within a respective said notional boundary). It may be that the method comprises determining the said points of interest by obtaining one or more LIDAR scans of the indoor region (or of an area within a respective boundary); and processing the said LIDAR scans to identify one or more
points of interest within the indoor region (or determined to be within a respective said notional boundary). Images or LIDAR scans can be processed to identify points of interest, for example by identifying text in the said images or scans, said text being indicative of one or more points of interest. In another example, images or LIDAR scans can be processed to identify points of interest, for example by identifying objects in the said images or scans (e.g. by comparing said images or scans with one or more models to thereby identify said objects), said objects being indicative of one or more points of interest within the indoor region (or determined to be within a respective said notional boundary). It may be that the method comprises determining the said points of interest by obtaining social media data relating to the indoor region (or to an area within a respective boundary); and processing the said social media data to identify one or more points of interest within the indoor region (or determined to be within a respective said notional boundary). Said social media data may be related to the indoor region (or to a respective said notional boundary) by being georeferenced to a location within the indoor region (or a location determined to be within a respective said notional boundary). Said social media traffic may comprise any one or more of: text data; audio data; image data; video data (for example). It may be that the method comprises determining the said points of interest by obtaining audio data relating to the indoor region (or relating to a respective said notional boundary); and processing the said audio data to identify one or more points of interest within the indoor region (or within a respective said notional boundary). Said audio data may be audio data georeferenced to a location within the indoor region or within a respective said notional boundary. It may be that the method comprises identifying one or more patterns in said audio data to thereby identify one or more points of interest within the indoor region (or within a respective said notional boundary), e.g. by comparing one or more patterns in said audio data to one or more models to thereby identify one or more points of interest within the indoor region (or within a respective said notional boundary). It may be that the method comprises determining a location of a mobile device in dependence on the adjusted layout data.
A second aspect of the invention provides a computer processing system comprising one or more computer processors (typically hardware processors e.g. microprocessors or microcontrollers), the computer processing system being configured to perform a method comprising: obtaining spatial feature data identifying locations of one or more spatial features of the indoor region. Typically the method further comprises generating layout data relating to (a layout of) the indoor region in dependence on the obtained spatial feature data. Typically the method further comprises obtaining location data relating to changes in location of a mobile device or a plurality of mobile devices within the said indoor region. Typically the method comprises adjusting the said layout data in dependence on the obtained location data. A third aspect of the invention comprises computer program code for causing a computer processing system comprising one or more computer processors to perform the method according to the first aspect of the invention. A fourth aspect of the invention comprises a non-transitory computer readable medium storing computer program code according to the third aspect of the invention. Although various aspects and embodiments of the present invention have been described separately above, any of the aspects and features of the present invention can be used in conjunction with any other aspect, embodiment or feature where appropriate. For example apparatus features may where appropriate be interchanged with method features. Description of the Drawings An example embodiment of the present invention will now be illustrated with reference to the following Figures in which: Figure 1 is a schematic block diagram of a mobile telecommunications device in communication with a server computer; Figure 2 is a schematic representation of a layout of an indoor region;
Figure 3 is a schematic representation of a layout of the indoor region determined from spatial feature data, the determined layout of the indoor region being superimposed on the schematic of Figure 2; Figure 4a is a flow chart illustrating a method of generating and adjusting the layout data of Figure 3; Figure 4b is a flow chart illustrating step 70 from Figure 4a in more detail; Figure 4c is a block diagram illustrating a fuzzy logic system for determining a probability of which notional boundary contains the locations of a location set; Figure 5 is the schematic representation of Figure 3 also showing paths followed by three mobile devices changing location in the indoor region of Figure 2; Figure 6 is a schematic representation of the layout of the indoor region of Figure 3 adjusted in dependence on changes of movement of the mobile devices shown in Figure 5; Figure 7 is a schematic representation of the boundary of the building comprising the indoor region relative to the layout of the indoor region shown in Figure 2; Figure 8 is a schematic representation of the layout of the indoor region of Figure 6 adjusted in dependence on the building boundary data relating illustrated in Figure 7; Figure 9 illustrates an alternative indoor region overlaid with layout data comprising a principal path and notional boundaries; and Figure 10 illustrates the indoor region of Figure 9 overlaid with adjusted layout data. Detailed Description of an Example Embodiment Figure 1 is a block diagram of a mobile telecommunications device 1 (such as a mobile smartphone, phablet, tablet, laptop, personal data assistant or wearable device such as a smartwatch) comprising a (typically hardware) computer processor 2 (which is typically a general purpose computer processor such as a microprocessor or microcontroller), a memory 4, an accelerometer 5, data communication antennas 6
(one or more or each of which may be directional antennas) and an orientation sensor (such as a gyroscope or magnetometer) 7. The data communication antennas 6 typically comprise a cellular telecommunications antenna, a Wi-Fi antenna and a Bluetooth antenna (not shown) configured to allow the mobile communications device 1 to communicate by cellular telecommunications, Wi-Fi and Bluetooth. The mobile device 1 further comprises a location sensor 9. The location sensor 9 comprises a Global Navigation Satellite System (GNSS) antenna (e.g. Global Positioning System (GPS) antenna) configured to detect signals from GNSS satellites and a GNSS processor configured to process the signals received from the satellites to estimate the location of the mobile device 1 (alternatively processor 2 of the mobile device processes the signals from the GNSS satellites). The location sensor 9 may additionally or alternatively comprise a Wireless Positioning System (WPS) computer program application (typically comprising stored computer program instructions) configured to cause the processor 2 of the mobile device 1 (or an additional dedicated processor) to estimate a location of the mobile device 1 by processing electromagnetic signals detected by one or more of the antennas 6 from terrestrial electromagnetic signal sources of known (e.g. two dimensional) location (e.g. the two dimensional locations of electromagnetic signal sources may be stored in memory 4) and processing the received signals together with the known two dimensional locations of the electromagnetic signal sources to estimate the location of the mobile device 1 , for example using received signal strengths together with the locations of the electromagnetic signal sources in a triangulation algorithm or with stored (e.g. in memory 4) fingerprint data specifying the expected variation of received signal strength from the said electromagnetic signal sources with distance from the signal source. The location sensor 9 may additionally or alternatively comprise a pedestrian dead reckoning application (typically comprising computer program instructions) configured to cause the processor 2 of the mobile device 1 to determine the location of the mobile device from accelerometer and orientation data from the accelerometer and orientation sensor 5, 7 respectively. The mobile device 1 can communicate with a server computer 8 by way of a wireless telecommunications link 11 (which typically connects to a base station which propagates data to and from the server 8 across a telecommunications network) using one or more of the data communication antennas 6. The server computer 8 comprises a processor 10 (which is again typically a general purpose computer
processor such as a microprocessor or microcontroller) and a memory 12, the processor 10 being configured to execute computer program instructions stored in the memory 12. The mobile device 1 typically determines location data as it changes location, and sends the location data to the server 8 using one or more of its data communication antennas 6. The location data may comprise estimates of the location of the mobile device 1 (e.g. determined by the location sensor 9) or it may comprise positioning data from which locations of the mobile device 1 can be estimated (e.g. signal source data detected from a plurality of electromagnetic signal sources, or accelerometer and orientation sensor data from which a location of the device 1 can be estimated). In the latter case, the processor 10 of the server 8 may be configured to execute computer program instructions stored on server memory 12 to cause the server to estimate the said locations of the mobile devices from the positioning data. In either case, the server 8 can track the location of the mobile device 1. Heading data (typically measured by the orientation sensor 7 of the mobile device) is also typically transmitted by the mobile device 1 to the server 8. A plurality of such devices 1 is provided which report location data to the server 8. Figure 2 is a schematic representation of an indoor region 20 of a built environment (typically a building) such as a shopping mall or airport. The indoor region comprises a straight main thoroughfare 22 (which in use carries a relatively high level of footfall), five rooms 24-32 branching off the main thoroughfare at intermediate portions along the length of the main thoroughfare, the rooms 24-32 being offset from each other along the length of the main thoroughfare and being accessible to the public, and a turning point 34 at an end of the main thoroughfare 22 leading to a further straight thoroughfare. WO2016/066987, which is incorporated in full herein by reference, discloses a method of obtaining and updating a database of spatial features associated with a region. The method comprises: receiving positioning data that has been collected at a plurality of locations within the region; processing the collected positioning data to identify at least one candidate spatial feature associated with the region; identifying at least one other spatial feature corresponding to said at least one candidate spatial feature, said at least one other spatial feature and said at least one candidate spatial feature as a whole constituting matching spatial features; processing said matching
spatial features; and updating the database of spatial features in dependence on the processing of said matching spatial features. This allows spatial features of an indoor region to be identified from unstructured, crowdsourced positioning data from multiple mobile devices moving in the indoor region. The identified spatial features may be areas (or spaces) within the indoor region (such as rooms or corridors), linear features (e.g. walls), gaps in features (e.g. portals such as doors), floor-change features such as elevators, escalators or staircases, turning points, ends of corridors and so on. Generally, the spatial features are (in some cases discrete) areas or spaces within the region in which people change location and/or which people enter and exit. The specific types of the spatial features identified may be stored in the database, together with the locations of the spatial features. Thus, the existence of spatial features, their types and their locations can be identified from unstructured location data crowdsourced from a plurality of mobile devices 1. A principal path 40 (see Figure 3) of the indoor region 20, corresponding to a main route through the main thoroughfare 22, can be identified from location data relating to changes in location of a plurality of mobile devices within the indoor region 20. The principal path 40 can be identified by detecting one or more straight line paths from the said location data. The straight line paths may be correlated to identify straight line paths in common between devices. Detected straight line paths (which may comprise only validated straight line paths which have been detected from more than one device, and may be averaged straight line paths derived from a plurality of similar detected straight line paths) may be concatenated to provide the principal path 40. The principal path typically extends through indoor regions but may extend into outdoor regions, indeed can be preferable for the principal path to extend outdoors, or at least be derived using some measurement of the location of mobile devices which are outdoors, as this may enable better global navigation satellite system position measurements to be used to estimate the absolute position of the principal path. The identification of the principal path 40 may also involve taking into account the volume of traffic following detected straight line paths and a speed of movement of the mobile devices along the detected straight line paths. For example, it may be that only detected straight line paths which have been followed by a number of devices (and/or a number of times) which exceeds a threshold number. It may additionally or
alternatively be that only changes in location by devices changing location at a speed exceeding a threshold speed are taken into account when detecting straight line paths, or only straight line paths detected from location data relating to changes in location of devices changing location at a speed exceeding the threshold speed are considered for correlation and/or concatenation. Respective detected straight line paths may be weighted in dependence on, for example, the number of devices determined to have followed the respective path, and/or on the speed of movement along the path. Such weightings may be taken into account when deriving the principal path 40 from the detected paths. Although the paths are typically straight line paths, they are not necessarily. Straight line paths can be derived using linear regression. Alternatively the principal path 40 may be determined from third party data relating to the indoor region. Figure 4a is a flowchart of a method of generating and adjusting layout data representing the layout of the indoor region 20, typically performed by the processor 10 of the server 8 executing computer program instructions stored in server memory 12. In a first step 60, spatial feature data relating to locations (and preferably also the types) of spatial features of the indoor region 20 is obtained. Typically (but not necessarily), step 60 is performed by the server 8 receiving location data collected and transmitted thereto by mobile devices 1 at a plurality of locations within the indoor region 20 and processing the location data to generate spatial feature data relating to spatial features within the building using the techniques described in WO2016/066987. It will be understood that determining spatial feature data from crowdsourced location data relating to changing locations of a plurality of mobile devices within the indoor region is not an essential feature of the present invention, and that a database of spatial features may already exist (which may have been previously generated for example using the methods of WO2016/066987 or by any other means) in which case it may be that step 60 may involve obtaining the said spatial feature data from a memory. In a next step 62 (or optionally as part of step 60), the principal path 40 is determined or obtained as described above. In a next step 64, for each spatial feature identified in step 60, notional boundaries (typically in the form of polygons) are generated, taking into account the locations of the respective spatial features from the spatial feature data (and, where provided, the types of spatial features - e.g. different spatial features may be provided with different notional boundaries of different shapes and/or sizes). Typically the notional
boundaries are initially relatively small in size (e.g. a rectangle of 1 m by 2m), typically smaller than the spatial features they represent, such that adjusting a notional boundary typically comprises expanding the said notional boundary. In a next step 66, layout data 42 representing the layout of the indoor region 20 is generated as shown in Figure 3 (overlaid on the schematic of Figure 2 for clarity) from the determined principal path 40 and the notional boundaries. In this exemplary embodiment, the layout data 42 comprises a straight line 40 representing the principal path, notional boundaries 42-50 representing the rooms 24-32 respectively and a further notional boundary 52 representing the turning point 34. The boundaries 42-52 extend from the principal path 40. The boundaries 42-52 are of predefined size and shape selected in dependence on the types of spatial feature to which they relate. For example, the boundaries 42-50 relating to the rooms 24-32 are five sided polygons (each having the same size and shape, albeit polygons 44, 48, 50 have different orientations from polygons 42, 46), while the boundary 52 relating to the turning point 34 is a six sided L-shaped polygon. Alternatively, boundaries of the same predetermined size and shape may be generated for each determined spatial feature regardless of type (or in the absence of type information being provided). As shown in Figure 3, the boundaries do not at this stage accurately conform to the shapes or sizes of the spatial features to which they relate. In a next step 68, location data relating to changes in location of a plurality of mobile devices 1 within the indoor region 20 is obtained. This location data may comprise or consist of the same location data used to identify the spatial features; alternatively, this location data may comprise or consist of location data obtained subsequently (or even in some cases prior) to the location data used to identify the said spatial features. As mentioned above, the location data may provide a plurality of locations determined by the respective devices or data from which a plurality of locations of the said respective devices can be determined. In the latter case, step 68 also comprises determining the said locations of the respective devices. Step 68 typically involves deriving respective location sets from the location data and outputting each location set in turn to step 70, steps 70 to 76 being repeated so as to process each of the location sets. Each location set typically comprises a set of locations (e.g. ten consecutive locations) of a single mobile device 1 , but some
location sets may comprise composite location sets made up of locations of a plurality of the said devices in combination. In some embodiments, some or all of the location sets relate to a spatial feature path followed by a device, or by a plurality of devices in combination, extending from outside a said notional boundary to inside the said notional boundary through a portal and subsequently from inside the said notional boundary to outside the said notional boundary through the or another said portal. In the case where all of the location sets relate to such a spatial feature path, step 68 comprises processing the location data to identify such spatial feature paths which are processed in turn by repeated executions of steps 70 to 76. Figure 5 (which omits principal path 40 for clarity) shows paths (determined from the obtained location data) followed by three mobile devices 1 (X, Y and O) through the indoor region 20, with X, Y and O symbols on Figure 5 indicating determined locations of the said devices (either by the devices or by the server 8 using location data received from the devices). Device X changes location along the main thoroughfare 22 towards turning point 34 before turning through 90° and entering into room 24 through a doorway, moving further into the room 24 before turning through 180° within the room 24, walking back towards the main thoroughfare 22, exiting the room 24 through the same doorway through which it entered the room 24 and turning through 90° onto the main thoroughfare 22. Device X then moves further along the main thoroughfare 22 towards the turning point 34 before turning through 90° and entering the room 26 through a doorway. Once it has entered the room 26, device X then stops sending location data to the server 8 (e.g. because device X is switched off, or because location services are switched off on the device for example) and the path followed by device X stops within the room 26. As shown in Figure 5, when device X enters the room 24, it follows a path 80 which is initially within the notional boundary 42 relating to the room 24, but which crosses the notional boundary 42 at an end 82 thereof (on the right hand side of Figure 5) to thereby enter an area of the room outside the notional boundary 42. Device X turns through 180° inside the room 24 but outside of the notional boundary 42 before moving back towards the main thoroughfare 22, thereby crossing the notional boundary 42 again (thereby entering the area of the room around which the notional boundary 42 is provided), and exiting the room 24 and the notional boundary 42 through the doorway to thereby re-enter the main thoroughfare 22.
It will be assumed for the description of step 70 of Figure 4a below that the location set output by step 68 to step 70 is a set of locations relating to the spatial feature path of mobile device X which extends from outside notional boundary 42 to inside the notional boundary 42 through a portal and subsequently from inside the said notional boundary 42 to outside the said notional boundary 42 through the same portal onto the main thoroughfare 22 from point A to point B in Figure 5. Referring back to Figure 4a, in step 70 the location set relating to the device X output by step 68 is processed to determine the most probable spatial features of the indoor region to which the locations of the location set relate, typically using a fuzzy logic system, such as a Fuzzy Interference System (FIS). Figure 4b illustrates the fuzzy logic algorithm executed in step 70 in more detail. In step 70a, locations of the device X provided in the location set are correlated with the principal path 40 to determine a (e.g. 5 or 10 metre long) segment of the principal path 40 which is closest to the locations provided of the location set. The inputs required for this step in the algorithm include: the location set from step 68; and data relating to the location, extent and direction of the principal path 40 determined in step 62. A fuzzy rule is then implemented to determine a point on the principal path 40 which is closest to the path formed together by the locations of the location set. A segment of the principal path 40 of predetermined length (e.g. 5 or 10m) centred on that point is then output by the rule to step 70b. In the exemplary embodiment, the output of step 70a is a (e.g. 5m or 10m long) segment of the principal path 40 roughly extending in a straight line along thoroughfare 22 between points A and point B on Figure 5. Referring back to Figure 4b, in 70b, the fuzzy logic algorithm determines one or more notional boundaries 42-52 near the identified segment of the principal path between points A and B on Figure 5. The inputs required for this step are: data identifying the the segment of the principal path 40 identified in step 70a; and the layout data generated in step 66 relating to locations of the connections of the respective notional boundaries 42-52 relative to the principal path 40. The fuzzy rule applied by the fuzzy logic system at this step determines which of the notional boundaries 42-52 have a connection to the principal path 40 which is less than a predetermined distance (e.g. 10 metres) from the segment of the principal path 40 identified in step 70a. Firstly, the shortest distances of the respective connection points to the principal path 40 of the notional boundaries 42-52 to the segment of the principal path 40 identified in step 70a are calculated. The rule then determines which of those distances are less than the said predetermined distance and identifies one or (typically) more of the said
notional boundaries 42-52 accordingly. In this exemplary embodiment, it will be assumed that notional boundaries 42, 44 are identified by step 70b. In a next step 70c, the fuzzy logic algorithm estimates the probabilities that (functioning as relevance parameters indicative of whether) the locations of the location set are associated with the same spatial features as the respective notional boundaries 42, 44 identified in step 70b. The inputs required for this step are: the shortest distances of the connection points of the notional boundaries identified in step 70b to the segment of the principal path 40 identified in step 70a; the directions of movement of the mobile device(s) along the spatial feature path comprising the locations of the location set; and the respective numbers (or proportions) of locations of the location set which are located within the respective notional boundaries (42, 44) identified in step 70b. The directions of movement of mobile devices 1 may be determined from heading orientation data received from the mobile devices 1 , and/or from the locations of the location set. The number of locations of the location set within the respective boundaries can be determined by comparing the locations of the location set with the locations surrounded by the respective boundaries. The fuzzy logic system implements a fuzzy rule at this stage which calculates a probability value for each notional boundary identified in step 70b. The closer the connection point of a notional boundary to the principal path 40, the higher the number of locations from the location set within the notional boundary and the greater the correlation between the direction changes over the spatial feature path and the location of the notional boundary relative to the principal path 40, the higher the probability value calculated for the notional boundary (and the lower the probability value when the converse is true). In the exemplary embodiment, a higher probability is associated with notional boundary 42 than with notional boundary 44 because notional boundary 42 has a connection point to the principal path 40 closer to the segment of the principal path between points A and B in Figure 5, because the direction changes of the device X in the location set output by step 68 correspond better to the location of notional boundary 42 and because a higher number of locations from the location set are provided within notional boundary 42 than notional boundary 44 (which is provided with a low probability). Not all of the locations of the location set or direction changes of device X correspond to the notional boundary 42, so the probability applied to notional boundary 42 will be less than 100%. A low, but non-zero probability value may be applied to boundary 44 on the basis of it being located relatively close to the
identified segment of the principal path 40, but neither the direction data nor the location data correspond to boundary 44. It can be seen from Figure 5 that the path followed by mobile device X from point A to point B moves through the end 82 of the said notional boundary 42. Referring back to Figure 4a, responsive to that determination, in step 72, the notional boundaries identified in step 70b which have been allocated a probability value greater than a predetermined threshold in step 70c are adjusted. In this exemplary embodiment, only notional boundary 42 has a probability value greater than the threshold and so only notional boundary 42 is adjusted in step 72. As shown in Figure 6, notional boundary 42 is adjusted to become notional boundary 42' which encloses the locations of the device X from the location set in the area of the room 24 outside of the original notional boundary 42. Although it may be that the boundary 42 is expanded (e.g. by the minimum expansion necessary, or by discrete changes in one or more dimensions of the boundary 42) so that the expanded boundary 42' contains all of the locations of the device X from the location set in the area of the room 24 outside of the original notional boundary 42, it will be understood that it is not necessary for the expanded boundary to enclose all of the locations of the location set outside of the original notional boundary 42, but typically the expanded boundary will contain more of the locations of the location set than it did before being expanded. For example, the boundary 42 may be expanded (e.g. by the minimum expansion necessary, or by discrete changes in one or more dimensions of the boundary 42) so that the adjusted boundary 42' contains a number of locations of the location set provided outside of the notional boundary 42 prior to adjustment determined in dependence on the probability calculated for the notional boundary in step 70c. Adjusting the notional boundaries may include adding new edges to existing polygons. This is useful for example to avoid excessively extending a long side of a polygon if new location data is only available along one side of the polygon (for example). In a next step 74, the adjusted notional boundaries, in this case adjusted notional boundary 42', are compared to location specific geographical descriptive data (typically stored in memory 12 of the server 8) to determine whether the adjusted boundaries conflict with any layout restrictions comprised in the location specific geographical descriptive data. In one example, the location specific geographical descriptive data comprises building boundary data 100 containing one or more layout restrictions (see Figure 7) relating to the boundaries of the building comprising the
indoor region 20. This may include or be derived from external mapping data, satellite images of the building, location data relating to the location of roads surrounding the building and so on. The adjusted notional boundary 42' is compared to the building boundary 100 to determine whether any conflicts exist between them, for example using any suitable shape conflict detection algorithm or tool such as a genetic algorithm for polygon fitting (e.g. see "On genetic algorithms for the packing of polygons", Stefan Jokobs, European Journal of Operational Research 88 (1996) 165-181 which is incorporated in full herein by reference), or a suitable topological tool provided by a geographical information system such as QGIS or ArcGIS. In a next step 76, if any conflict is found in step 74, the notional boundary 42' is adjusted to remove the conflict. In this present case, no conflict is found. The method then moves back to step 68 which outputs the next location set to step 70. Steps 70-76 are then repeated for that location set. With each iteration, the shapes and sizes of notional boundaries 42-52 are better refined until ultimately an accurate map of the indoor region is provided (typically after 100-200 location sets for each notional boundary). The iterations may for example take place periodically, or at predetermined times, or when a predetermined amount of path data has been aggregated (e.g. for a region). When devices 1 (e.g. devices X, Y, O) are located within particular notional boundaries 42-52, they receive electromagnetic signals from terrestrial electromagnetic signal sources (which are themselves typically located within the indoor region), such as Wi-Fi access points, Bluetooth beacons and so on (not shown), using their data communications antennas 6. In this case, the device processors 2 are configured to execute computer program instructions which derive signal source data from electromagnetic signals they receive within the said notional boundaries and this signal source data is transmitted to the server 8. The signal source data is typically georeferenced to the location at which the signals from which it is derived were received. The signal source data may comprise received signal strengths and/or timing data (e.g. the times of flight of received signals) and/or angle of arrival data (e.g. the angles or directions of arrival of signals received by the said mobile devices) relating to electromagnetic signals received by the mobile devices within the said respective notional boundaries 42-52 from respective electromagnetic signal sources. It may be that the signal source data comprises identifiers of electromagnetic signal sources detected by one or more said mobile devices within the said respective notional boundaries 42-52.
The server processor 10 typically executes computer program instructions stored on server memory 12 to derive respective signal source profiles for each of the notional boundaries 42-52 from signal source data received from the said mobile devices 1 (e.g. devices X, Y, O) at locations within the said notional boundaries 42-52. Each said signal source profile is associated with a respective notional boundary 42-52. It may be that the signal source profile associated with each notional boundary 42-52 comprises, for each of one or more electromagnetic signal sources detectable in that notional boundary, expected values (e.g. averages, e.g. accumulated means, of previously determined values by one or more said mobile devices) of one or more parameters relating to electromagnetic signals received from the said electromagnetic signal source by said mobile devices within the said notional boundary. For example, it may be that the signal source profile associated with each said notional boundary 42-52 comprises, for each of one or more electromagnetic signal sources, expected signal strengths (e.g. averages, e.g. accumulated means, of previously determined signal strengths), expected timing data, such as times of flight, (e.g. averages, e.g. accumulated means, of previously determined times of flight) or expected angle of arrival data, such as angles or directions of arrival, (e.g. averages, e.g. accumulated means, of previously determined angles or directions of arrival) relating to electromagnetic signals received from the said electromagnetic signal source by said mobile devices within the said notional boundary. It may be that the signal source profile associated with each said notional boundary 42-52 comprises data relating to expected rates of change with respect to location of one or more parameters (e.g. received signal strengths, timing parameters, angle of arrival parameters) of electromagnetic signals received by one or more said mobile devices within the said notional boundary from one or more said electromagnetic signal sources. Signal source data relating to electromagnetic signals received by devices 1 (e.g. devices X, Y, O) in the indoor region can be compared to determined signal profiles associated with notional boundaries 42-52 in order to validate estimated locations of the said devices provided in or estimated from the said location data. For example if it is estimated that a said device is located in a said notional boundary, this can be validated or invalidated by comparing signal source data collected at that location to the signal source profile associated with that notional boundary. Additionally or alternatively, signal source data collected at a location inside or outside of a notional boundary can be compared to the signal source profiles associated with one or more
notional boundaries relating to respective spatial features to determine whether that location is associated with the same spatial feature as one of the said notional boundaries (e.g. if the signal source data conforms to the signal profile). If it is determined that the said location is associated with the same spatial feature as a said notional boundary, that may be an indication that the said notional boundary should be adjusted to include (e.g. enclose or substantially enclose) the said location (in which case the method may comprise determining that the said location is associated with the same spatial feature as a notional boundary, and adjusting the said notional boundary to include (e.g. enclose or substantially enclose) the said location). Alternatively if it is determined that the said location is not associated with the same spatial feature as a notional boundary, that may be an indication that the said notional boundary should be adjusted to exclude the said location or at least should not be adjusted to include said location (in which case the method may comprise determining that the said location is not associated with the same spatial feature as a notional boundary, and responsively adjusting the said notional boundary to exclude the said location or not adjusting the said notional boundary to include said location). For example, before notional boundary 42 is amended in the method of Figure 4a, in Figure 5 device X moves through the end 82 of notional boundary 42 into an area of the room 24 outside of the said notional boundary 42. By determining a similarity between signal source data detected by device X in the area of the room outside of the said notional boundary 42 with a signal profile associated with notional boundary 42, it can be better determined that the notional boundary 42 should be amended to include the area outside of the said notional boundary 42. Conversely, if the signal source data detected by device X in that area was sufficiently different from the signal source profile associated with notional boundary 42, it may be determined that the notional boundary 42 should not be amended to include the said area. In some embodiments, this additional check is implemented in the fuzzy logic system, typically by way of a second rule implemented by the fuzzy logic algorithm in step 70c. As illustrated in Figure 4c (which also illustrates the first rule performed in step 70c described above, together with its inputs), the second rule takes as inputs signal data derived from electromagnetic signals detected by the mobile devices 1 from terrestrial electromagnetic signal sources at the locations of the respective location set and signal profiles relating to the notional boundaries identified in step 70b. In the exemplary embodiment, the signal data includes signal data received from device X relating to electromagnetic signals it receives from terrestrial electromagnetic signal
sources when it moves from point A to point B, and the signal profiles include signal profiles relating to notional boundaries 42, 44. The second rule, when applied in respect of a respective notional boundary, correlates the signal data with the signal profiles associated with the respective notional boundary and provides an output indicative of the probability that the signal data relates to the same spatial feature as the signal profiles associated with the notional boundaries (e.g. the signal data relates to signals detected by the mobile device in the same room as that associated with the signal profile). The correlation may be performed by calculating a Euclidean distance between the signal data and the signal profile. For example, the Euclidean distance in each case may be the square root of the sum of the square of the differences between received signal strengths from particular electromagnetic signal sources (e.g. identified by MAC addresses) and expected received signal strengths from those electromagnetic signal sources as set out in the signal profile. The smaller the Euclidean distance between the signal data and a signal profile, the better the match between them. The outputs of the first and second rules are then combined to provide an output probability or resemblance value which is indicative of the likelihood that the location data relates to the same spatial feature as the respective notional boundaries. When both rules are implemented, this is the output from step 70c (rather than the output from the first rule mentioned above). Referring back to Figure 5, when device X is in the room 26 it stays within the notional boundary 44 relating to the said room 26 until it moves to its final detected location, which movement causes device X to cross an end 86 (on the left hand side of Figure 5) of the notional boundary 44 towards an end 84 of the room 26, thereby moving to an area of the room 26 outside the boundary 44. Device Y begins to transmit to the server 8 location data relating to its changing location within the indoor region 20 when it is within an area of the room 26 outside notional boundary 44 (e.g. because it was switched on at that location, or because location services were switched on at that location on device Y) at a location adjacent to the finally detected location of device X. Device Y initially changes location towards the end 84 of the room 26 before turning through 180° and changing location towards the main thoroughfare 22. This causes the device Y to change location through the end 86 of the notional boundary 44 and into the area around which the notional boundary 44 is provided. Device Y keeps changing location in that direction
until it reaches the main thoroughfare 22, where it turns through 90° and changes location along the main thoroughfare towards the turning point 34. Referring back to Figure 4a, in step 68 the computer program code being executed by the server processor 10 determines from similarity in the signal source data received from devices X and Y at the end and beginning of their paths through the indoor region respectively that the end of the path followed by device X and the beginning of the path followed by device Y were within the same room 26. This determination may comprise a direct comparison of signal source data relating to electromagnetic signals detected by the device X at its last detected location to signal source data relating to electromagnetic signals detected by device Y at its first detected location. More typically, signal source data relating to electromagnetic signals detected by the device X at its last detected location and signal source data relating to electromagnetic signals detected by the device Y at its first detected location may each be compared to the signal source profile associated with notional boundary 44 and it may be responsively determined that the signal source data from devices X and Y relate to the same notional boundary 44. The server 8 then responsively concatenates the paths followed by devices X and Y to provide a composite spatial feature path which extends from the main thoroughfare 20, into the room 26 through a doorway, turns through 180° and extends back out of the room 26 into the main thoroughfare 22 through the said doorway. The locations of this composite path then become the location set processed by steps 70-76 as above in which a high probability is calculated for notional boundary 44 and notional boundary 44 is expanded to become notional boundary 44' (see Figure 6) which encloses the locations of the composite spatial feature path inside room 26 but which were outside of the notional boundary 44 in Figure 5. Referring back to Figure 5, device Y continues to change location along the thoroughfare 22 until it reaches the turning point 34, when it turns through an angle of just over 90°. When the device Y approaches the turning point 34, it follows a route within the notional boundary 52 relating to the turning point 34. However, just after turning through the said angle of just over 90°, the device Y crosses an edge 88 of the notional boundary 52. In one iteration of steps 68-76 of Figure 4a, a location set comprising consecutive locations of the device Y from point C to point D (see Figure 5) is output from step 68 and processed by steps 70-76. In this case, the boundary 52 is adjusted in step 72 to become boundary 52' (see Figure 6) which encloses
locations of the location set which were outside of the boundary 52. However, in step 74 it is determined that the upper edge of the adjusted boundary 52' conflicts with the building boundary 100 (illustrated in Figure 7). Accordingly, the boundary 52' is adjusted in step 76 to overcome the conflict (by moving the upper edge of the boundary 52' to be within the building boundary 100), thereby providing further amended boundary 52" as shown in Figure 8. This provides a more accurate boundary 52" around the turning point 34. As shown by the loop comprising steps 68-76 in Figure 4a, over time further location data is obtained and processed to refine the sizes and shapes of the notional boundaries. Refined notional boundaries are compared to location specific geographical descriptive data describing boundaries of the built environment (typically building) comprising the indoor region and further refined responsive to that comparison. As discussed above, eventually the notional boundaries should converge to the shapes and sizes of the spatial features to which they relate (e.g. rooms 24-32), thereby providing accurate mapping data which can be used by mobile devices to estimate their locations within the indoor region. Referring back to Figure 5, after exiting room 24, device O continues changing location along the main thoroughfare 22 towards turning point 34 until it reaches room 32 where it turns through 90° into room 32. Device O then enters a passageway 89 extending from room 50 to room 48 and changes location through the passageway into room 30 where it stops sending location data to the server 8. When processing the location set relating to changes in location of device O from point E to point F in an iteration of steps 70a, similar probabilities are allocated to notional boundaries 48, 50 and a conflict arises between whether to expand the notional boundary 48 to include the locations in the passageway 89 or whether to expand the notional boundary 50 to include the locations in the passageway 89. When such a conflict is determined, an additional step may be performed in order to resolve the conflict. In this additional step, signal source data relating to electromagnetic signals received by the device O from one or more terrestrial electromagnetic signal sources when in the passageway 89 is compared to signal source profiles associated with the notional boundaries 50, 48 as discussed above. If the signal data sufficiently (and better) matches the profile relating to boundary 48, boundary 48 is expanded to enclose the locations in passageway 89, or if the signal data sufficiently (and better) matches the profile relating to boundary 50, boundary 50 is expanded to enclose locations in passageway 89. However, responsive to a determination that the signal source data
does not sufficiently match the signal source profiles of either notional boundary 50, 48, the server processor 10 determines that the path through passageway 89 is not part of the notional boundary 50 or of notional boundary 48. Further responsive to a determination that the location of the device O changes from notional boundary 50 to notional boundary 48 through a region not within notional boundary 50 or within notional boundary 48, the server processor 10 determines that the path through the passageway 89 is in fact a transition path extending between notional boundaries 50, 48 (and not part of the spatial features (i.e. rooms) to which notional boundaries 50, 48 relate). Recognising that transition paths exist between notional boundaries 50, 48 helps to prevent the server processor 10 from continuously processing conflicting expansions of boundaries 50, 48 as a result of devices moving between them. Figure 9 shows an indoor region 100 being mapped in accordance with the method of Figure 4a, the indoor region 1 10 comprising a corridor 1 12 and two rooms 1 14, 116 connected to and accessible from the said corridor through respective portals. A location set output from step 68 of the method of Figure 4a comprises locations extending from point G to point H, that is from the corridor 1 12 into the room 114 through the portal of room 1 14, from the room 1 14 into room 1 16 and back into the corridor 1 12 through the portal of room 1 16. Layout data comprising a principal path 140 and notional boundaries 142, 144 are determined in step 66 in respect of the corridor 1 12 and rooms 1 14, 1 16. In step 70 the fuzzy logic system determines that more locations of the location set are provided in the notional boundary 144 than notional boundary 142. Accordingly, a greater probability is associated with boundary 144 than boundary 142 by the fuzzy logic algorithm. Even so, a not insignificant probability is associated with notional boundary 142 because of its perceived relevance by the fuzzy rules. Accordingly, both notional boundaries 142, 144 are expanded to incorporate parts of the path extending from point G to point H in step 72. Step 72 uses the relative probabilities determined in step 70 to determine to what extent the notional boundaries 142, 144 are expanded. For example, in the exemplary embodiment, it is determined that approximately three times as much of the path between point G and point H is provided in boundary 144 than in boundary 142. Accordingly, in step 72 it may be that boundaries 142 and 144 are expanded such that expanded boundaries 142' and 144' (see Figure 10) together enclose more of the path from G to H, but that expanded boundary 142' still encloses approximately three times more of the path from G to H than expanded boundary 144'.
The server memory 12 may further comprise computer program instructions executable by the server processor 10 to identify one or more points of interest in the indoor region which can be associated with the indoor region 20, or more preferably with specific notional boundaries 42-52 relating to the spatial features of the indoor region. Points of interest can be identified by comparing one or more locations of the indoor region (or locations of the notional boundaries) with one or more map sources (such as Openstreet maps or Google maps) to identify points of interest associated with those locations. In another example, points of interest can be identified by obtaining one or more images (which may be created by one or more mobile devices and transmitted to the server 8 using one or more said data communications antennas 6) georeferenced to a location within the indoor region (or within a respective notional boundary 42-52); and processing said images to identify one or more points of interest within the indoor region (or determined to be within a respective said notional boundary). For example, optical character recognition can be used to identify text in images, said text being indicative of one or more points of interest (e.g. by being associated with a known brand or text indicative of a type of activity (e.g. gym, cinema) performed at a particular location within the indoor region. Additionally or alternatively, images may be compared to predetermined model images (e.g. stored in a database on the server 8 or on another server accessible to the server 8) to identify objects in said images indicative of one or more points of interest (e.g. gym equipment). LIDAR scans of the indoor region (or of an area within a respective notional boundary) may be processed in a similar way. In another example, points of interest within the indoor region (or within notional boundaries) can be identified by obtaining social media data relating to the indoor region 20 or a notional boundary 42-52 (e.g. submitted by a user from a mobile device 1 within the indoor region or notional boundary); and processing the said social media data to identify one or more points of interest within the indoor region (or within a respective said notional boundary 42-52). Said social media data may comprise any one or more of: text data; audio data; image data; video data (for example). Text, image or video data can be processed as set out above. In another example, points of interest can be identified by obtaining audio data (which may be for example social media data (e.g. audio data uploaded to social media) or data recorded by the mobile device 1 and transmitted to the server 8) relating to the indoor region or notional boundary 42-52 (e.g. detected by one or more mobile devices 1 in the indoor region or in a respective notional boundary 42-52); and
processing the said audio data to identify one or more points of interest within the indoor region or notional boundary 42-52. Said audio data may be audio data georeferenced to a location within the indoor region 20 or within a respective said notional boundary 42-52 (e.g. by virtue of having been recorded at or streamed from a location within the indoor region 20 or notional boundary 42-52). It may be that points of interest are determined by identifying one or more patterns in said audio data to thereby identify one or more points of interest within the indoor region 20 or notional boundary 42-52, e.g. by comparing one or more patterns in said audio data to one or more models to thereby identify one or more points of interest within the indoor region or notional boundary 42-52. Alternatively, speech may be identified from audio data and processed to identify brands or categories of activity which may be performed in the indoor region or in respective notional boundaries 42-52. The audio data may be converted to text data, and the text data then processed as above to determine points of interest. Further modifications and variations may be made within the scope of the invention herein disclosed. For example, the determination of the principal path 40 may be omitted, in which case the layout data 42 may comprise only the boundaries 42-52, 42'-52', 52". It will also be understood that the methods described herein are not limited to the use of principal paths or boundaries, and any form of layout data which can be refined using location data relating to changes in location of a plurality of devices within the indoor region (and/or signal source data collected thereby in the said indoor region) may be generated and adjusted using the methods described herein. Although the notional boundaries shown in the above examples are polygons with straight edges, it will be understood that the notional boundaries may additionally or alternatively be provided with one or more curved edges. The steps performed by the server 8 may alternatively be performed by a plurality of servers in combination and/or by one or more mobile devices (e.g. one or more mobile devices 1).
Claims
Claims 1. A method of mapping an indoor region, the method comprising: obtaining spatial feature data identifying locations of one or more spatial features of the indoor region; generating layout data relating to the indoor region in dependence on the obtained spatial feature data; obtaining location data relating to changes in location of a plurality of mobile devices within the said indoor region; and adjusting the said layout data in dependence on the obtained location data.
2. The method of claim 1 wherein the layout data comprises boundary data representing one or more notional boundaries, each of the said notional boundaries relating to a respective said spatial feature.
3. The method of claim 2 wherein the step of adjusting the said layout data in dependence on the obtained location data comprises adjusting the notional boundaries in dependence on the obtained location data.
4. The method of claim 2 or claim 3 wherein the method comprises determining from the location data a plurality of location sets, each location set of the said plurality of location sets comprising a plurality of locations, the said plurality of locations being locations of a mobile device of the said plurality or of a plurality of the said mobile devices in combination.
5. The method of claim 4 wherein the step of adjusting the said layout data in dependence on the obtained location data comprises adjusting one or more or each of the said notional boundaries in dependence on the location sets.
6. The method of claim 4 or claim 5 wherein one or more or each of the said location sets comprise locations adjacent to a said notional boundary and/or within a said notional boundary and/or crossing a said notional boundary.
7. The method according to any one of claims 4 to 6 wherein one or more or each of the said location sets comprise a spatial feature path, each said spatial feature path extending from outside a said notional boundary to inside the said notional boundary through a portal and subsequently from inside the
said notional boundary to outside the said notional boundary through the or another said portal.
8. The method according to claim 7 wherein one or more of the said spatial feature paths comprise a composite spatial feature path comprising locations of a plurality of said mobile devices in combination.
9. The method according to any one of claims 4 to 8 wherein the said boundary data represents a plurality of notional boundaries, each of the said notional boundaries relating to a respective said spatial feature, the method further comprising, for one or more or each said location set and for one or more or two or more of the said notional boundaries, determining respective relevance parameters indicative of whether the locations of the said location set relate to the same spatial features as the said respective one or more or two or more notional boundaries.
10. The method according to claim 9 wherein the step of determining respective relevance parameters indicative of whether the locations of the said location set relating to the same spatial features as the said respective one or more or two or more notional boundaries is performed by fuzzy logic.
1 1. The method according to claim 9 or claim 10 comprising adjusting one or more of the said one or more or two or more notional boundaries in dependence on the said determined relevance parameters.
12. The method according to claim 1 1 comprising adjusting the size and/or shape of one or more of the said one or more or two or more notional boundaries in dependence on the determined relevance parameter(s) associated with that notional boundary relative to the determined relevance parameter(s) associated with the other notional boundaries of the said one or more or two or more notional boundaries.
13. The method of any one preceding claim further comprising obtaining a principal path through the indoor region, wherein the said spatial features extend from the said principal path.
14. The method of claim 13 wherein the said principal path is determined from location data relating to changes in location of a plurality of mobile devices within the said indoor region by detecting one or more paths from the said location data.
15. The method of claim 14 wherein one or more said paths are composite paths formed by changes in location of a plurality of devices in combination.
16. The method of any one of claims 13 to 15 as dependent on any one of claims 9 to 12 wherein the method comprises, for one or more or each said location set, identifying the said one or more or two or more notional boundaries by: determining a segment of the said principal path meeting one or more proximity criteria with respect to the locations of the location set; and identifying which of the notional boundaries represented by the boundary data meet one or more proximity criteria with respect to the said segment of the said principal path.
17. The method according to any one of claims 2 to 16 further comprising obtaining signal source data relating to electromagnetic signals detected by one or more of the said plurality of mobile devices at one or more locations within the indoor region, or within one or more said notional boundaries, from one or more electromagnetic signal sources.
18. The method of claim 17 comprising obtaining signal source data relating to electromagnetic signals detected by one or more of the said plurality of mobile devices within each of one or more said notional boundaries from one or more electromagnetic signal sources, and deriving a signal source profile for each of the said one or more notional boundaries from said signal source data.
19. The method of claim 18 wherein the said boundary data represents a plurality of notional boundaries each of which relates to a respective said spatial feature, wherein the method further comprises obtaining, for each of the said notional boundaries, signal source data relating to electromagnetic signals detected by one or more said mobile devices at one or more locations determined to be within the said notional boundary from one or more electromagnetic signal sources; and deriving respective signal source profiles for each of the said notional boundaries from said signal source data.
20. The method according to any one preceding claim comprising: obtaining signal source data relating to signals received by a first mobile device at one or more locations within the indoor region from one or more electromagnetic signal sources; obtaining signal source data relating to signals received at one or more locations within the indoor region by a second mobile device from one or more electromagnetic signal sources; and comparing said signal source data relating to said signals received by the first mobile device to said signal source data relating to said signals received by the second mobile device to thereby determine whether the said locations of the first and second mobile devices relate to the same said spatial feature.
21. The method of claim 20 as dependent on claim 8 further comprising determining a said composite spatial feature path comprising locations of a plurality of devices in combination in dependence on said determination that said locations of the first and second mobile devices relate to the same said spatial feature.
22. The method according to claim 18 or claim 19, or claim 20 or claim 21 as dependent on claim 18 or 19, as dependent on any one of claims 9 to 12 comprising, for one or more or each said location set: obtaining signal source data relating to electromagnetic signals received by the said one or more mobile devices at the locations of the location set from one or more electromagnetic signal sources; comparing the said signal source data to the signal source profiles associated with the said one or more or two or more notional boundaries; and determining the said respective relevance parameters associated with the said respective one or more or two or more notional boundaries in dependence on the said comparison between the signal source data and the respective signal source profiles.
23. The method according to claim 18 or claim 19, or on claim 20 or claim 21 as dependent on claim 18 or claim 19, wherein the layout data comprises boundary data representing a plurality of notional boundaries of the indoor region each of which relates to a respective said spatial feature, the method further comprising: obtaining and processing signal source data relating to electromagnetic signals received within the indoor region by one or more mobile devices from one or more electromagnetic signal sources; and
identifying in dependence on the said signal source data a transition path extending between a pair of said notional boundaries.
24. The method according to claim 23 comprising comparing the said signal source data to signal source profiles associated with the said pair of notional boundaries and identifying a said transition path extending between a pair of said notional boundaries responsive to a determination that the signal source data meets one or more difference criteria with respect to the signal profiles associated with the said notional boundaries.
25. The method according to claim 2 or on any of claims 3 to 24 as dependent on claim 2 wherein the layout data comprises boundary data representing a plurality of notional boundaries each of which relates to a respective said spatial feature, the method further comprising: obtaining and processing location data relating to changes in location of one or more mobile devices within the said indoor region; and identifying in dependence on the said location data a transition path extending between a pair of said notional boundaries.
26. The method of any one preceding claim further comprising: obtaining location specific geographical data relating to the indoor region, the location specific geographical data comprising one or more layout restrictions; and adjusting the layout data in dependence on the said layout restrictions.
27. The method of claim 26 as dependent on claim 2 wherein the step of adjusting the layout data in dependence on the said layout restrictions comprises adjusting the said boundary data representing the said notional boundaries in dependence on the said layout restrictions.
28. The method of claim as dependent on claim 27 comprising adjusting a said notional boundary represented by the said boundary data responsive to the said location data; determining a conflict between the adjusted boundary and the said layout restrictions; and adjusting the said adjusted notional boundary in dependence on the said layout restrictions.
29. The method of any one preceding claim further comprising: obtaining further location data relating to changes in location of a plurality of mobile devices
within the said indoor region; and adjusting the said adjusted layout data in dependence on the said obtained further location data.
30. The method according to any one preceding claim comprising determining one or more points of interest in the indoor region and storing data associating the said one or more determined points of interest with the indoor region.
31. The method according to claim 30 as dependent on claim 2 comprising determining one or more points of interest associated with one or more or each said notional boundary and storing data associating the said one or more determined points of interest with the respective notional boundary.
32. The method according to any one preceding claim comprising determining a location of a mobile device in dependence on the adjusted layout data.
33. A computer processing system comprising one or more computer processors, the computer processing system being configured to perform a method comprising: obtaining spatial feature data identifying locations of one or more spatial features of the indoor region; generating layout data relating to the indoor region in dependence on the obtained spatial feature data; obtaining location data relating to changes in location of a plurality of mobile devices within the said indoor region; and adjusting the said layout data in dependence on the obtained location data.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GBGB1707787.6A GB201707787D0 (en) | 2017-05-15 | 2017-05-15 | Method of mapping indoor region |
| GB1707787.6 | 2017-05-15 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2018211261A1 true WO2018211261A1 (en) | 2018-11-22 |
Family
ID=59201614
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/GB2018/051312 Ceased WO2018211261A1 (en) | 2017-05-15 | 2018-05-15 | Method of mapping indoor region |
Country Status (2)
| Country | Link |
|---|---|
| GB (1) | GB201707787D0 (en) |
| WO (1) | WO2018211261A1 (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10708718B1 (en) | 2019-02-28 | 2020-07-07 | At&T Intellectual Property I, L.P. | Space characterization using electromagnetic fields |
| US20210220197A1 (en) * | 2020-01-22 | 2021-07-22 | Toyota Motor North America, Inc. | Mapping and data collection of in-building layout via mobility devices |
| CN113188546A (en) * | 2021-04-30 | 2021-07-30 | 成都市微泊科技有限公司 | Indoor positioning navigation method based on image recognition and pedestrian dead reckoning |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8386422B1 (en) * | 2011-07-08 | 2013-02-26 | Google Inc. | Using constructed paths to supplement map data |
| US20140278060A1 (en) * | 2007-05-31 | 2014-09-18 | Trx Systems, Inc. | Collaborative creation of indoor maps |
| US20160084658A1 (en) * | 2014-09-24 | 2016-03-24 | Qualcomm Incorporated | Method and apparatus for trajectory crowd sourcing for updating map portal information |
| WO2016066987A1 (en) | 2014-10-27 | 2016-05-06 | Sensewhere Limited | Processing spatial features |
| US20170032787A1 (en) * | 2014-01-14 | 2017-02-02 | Toyota Motor Engineering & Manufacturing North America, Inc. | Smart necklace with stereo vision and onboard processing |
-
2017
- 2017-05-15 GB GBGB1707787.6A patent/GB201707787D0/en not_active Ceased
-
2018
- 2018-05-15 WO PCT/GB2018/051312 patent/WO2018211261A1/en not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20140278060A1 (en) * | 2007-05-31 | 2014-09-18 | Trx Systems, Inc. | Collaborative creation of indoor maps |
| US8386422B1 (en) * | 2011-07-08 | 2013-02-26 | Google Inc. | Using constructed paths to supplement map data |
| US20170032787A1 (en) * | 2014-01-14 | 2017-02-02 | Toyota Motor Engineering & Manufacturing North America, Inc. | Smart necklace with stereo vision and onboard processing |
| US20160084658A1 (en) * | 2014-09-24 | 2016-03-24 | Qualcomm Incorporated | Method and apparatus for trajectory crowd sourcing for updating map portal information |
| WO2016066987A1 (en) | 2014-10-27 | 2016-05-06 | Sensewhere Limited | Processing spatial features |
Non-Patent Citations (1)
| Title |
|---|
| STEFAN JOKOBS: "On genetic algorithms for the packing of polygons", EUROPEAN JOURNAL OF OPERATIONAL RESEARCH, vol. 88, 1996, pages 165 - 181 |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10708718B1 (en) | 2019-02-28 | 2020-07-07 | At&T Intellectual Property I, L.P. | Space characterization using electromagnetic fields |
| US11070950B2 (en) | 2019-02-28 | 2021-07-20 | At&T Intellectual Property I, L.P. | Space characterization using electromagnetic fields |
| US20210220197A1 (en) * | 2020-01-22 | 2021-07-22 | Toyota Motor North America, Inc. | Mapping and data collection of in-building layout via mobility devices |
| US11642257B2 (en) * | 2020-01-22 | 2023-05-09 | Toyota Motor North America, Inc. | Mapping and data collection of in-building layout via mobility devices |
| CN113188546A (en) * | 2021-04-30 | 2021-07-30 | 成都市微泊科技有限公司 | Indoor positioning navigation method based on image recognition and pedestrian dead reckoning |
Also Published As
| Publication number | Publication date |
|---|---|
| GB201707787D0 (en) | 2017-06-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11199412B2 (en) | Collaborative creation of indoor maps | |
| CN110856112B (en) | Crowd-sourcing perception multi-source information fusion indoor positioning method and system | |
| CN108351217B (en) | Navigation, tracking and positioning of mobile devices that deny access to GPS | |
| US9661473B1 (en) | Methods and apparatus for determining locations of devices in confined spaces | |
| US9961508B1 (en) | Systems and methods for determining indoor location and floor of a mobile device | |
| US9541404B2 (en) | System for determining the location of entrances and areas of interest | |
| US10415978B2 (en) | Landmark location determination | |
| US9949090B2 (en) | Location tracking system and method | |
| JP2015531053A (en) | System, method, and computer program for dynamically creating a radio map | |
| CN107110652B (en) | Processing spatial features | |
| Yang et al. | DeepWiPos: A deep learning-based wireless positioning framework to address fingerprint instability | |
| CN105635956B (en) | One kind is based on indoor virtually target localization method and device | |
| Lee et al. | An indoor localization solution using Bluetooth RSSI and multiple sensors on a smartphone | |
| Wang et al. | An adaptive indoor positioning method using multisource information fusion combing Wi-Fi/MM/PDR | |
| WO2018211261A1 (en) | Method of mapping indoor region | |
| Török et al. | Drear-towards infrastructure-free indoor localization via dead-reckoning enhanced with activity recognition | |
| CN108139458A (en) | Method, device and system for determining indoor orientation | |
| KR20230114218A (en) | A method and an apparatus for providing guide services in subway station using artificial intelligence neural network-based positioning system built on the basis of sensor map image of multi-signal environment data | |
| Wang et al. | Indoor PDR Positioning Assisted by Acoustic Source Localization, and Pedestrian Movement Behavior Recognition, Using a Dual‐Microphone Smartphone | |
| GB2570853A (en) | Identifying sites visited by a user device | |
| Gu et al. | Integration of positioning and activity context information for lifelog in urban city area | |
| EP3538929B1 (en) | Systems and methods of determining an improved user location using real world map and sensor data | |
| KR102765275B1 (en) | Indoor positioning method and apparatus | |
| KR101621839B1 (en) | Method and system for position-measuring by using moving pattern database | |
| KR102483251B1 (en) | Apparatus and method for indoor positioning based on clustering |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18732853 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 18732853 Country of ref document: EP Kind code of ref document: A1 |