Client-server approach for indoor-outdoor detection of electronic device, and associated systems and methods

JP2025041600AInactive Publication Date: 2025-03-26GOOGLE LLC
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2024204077
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-11-22
Publication Date
2025-03-26
Estimated Expiration
Not applicable · inactive patent

Smart Images

  • Figure 2025041600000001_ABST
    Figure 2025041600000001_ABST
Patent Text Reader

Abstract

To provide a client-server approach for indoor-outdoor detection of an electronic device, and associated systems and methods.SOLUTION: A server (104) collects crowdsourced information (140) from devices that have detected a plurality of access points. An electronic device (102) performing a wireless network scan detects access points (122) within a range and detects sensor data (126) from other sensors (124). The server accesses the crowdsourced information to determine, per access point detected in the scan, a percentage of the total number of the detected access points that are accompanied by a GPS signal of a device that has detected the access point, and an RSS value below which such a GPS signal does not accompany the detection. The percentage and the RSS value enable a determination of a probability indicating whether the electronic device is located outdoors, slightly indoors, or deeply indoors.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Background technology]

[0001] background Many users carry electronic devices (e.g., smartphones) virtually everywhere they go. These devices can perform various functions based on information corresponding to the device's location. However, certain functions may continuously or frequently search or scan for signals even when not necessary, draining valuable battery power. For example, when a device is inside a building, a Global Positioning System (GPS) signal may be weak (or not detectable) due to interference from the building itself. Continuously relying on GPS detection when the GPS signal is weak or not detectable makes the GPS data unreliable for some applications and consumes power unnecessarily, especially when other sources of location data are more accurate than GPS in indoor environments.

[0002] Another problem may arise when a user enters or exits a building while using a mixed reality application. For example, some such applications may operate in 3D (three-dimensional) mode outdoors and display a "street view" of virtual building images for visual navigation, but when the user enters a building, these applications may erroneously continue to display such a "street view" instead of a corresponding view of the building's interior. The reverse may occur when the user leaves a building, causing the mixed reality application to continue to display a view of the building's interior even though the user and device are outside the building. These situations result in a poor user experience.

[0003] Thus, there is a problem in determining whether an electronic device is indoors or outdoors. Summary of the Invention [Problem to be solved by the invention]

[0004] overview This specification describes a client-server approach and related systems and methods for indoor / outdoor detection of electronic devices. The server collects crowdsourced information (e.g., raw signals) from devices that have detected multiple access points. Electronic devices performing wireless network scans detect access points that are within range and detect signals from other sensors. The electronic devices transmit such information to the server. The server accesses the crowdsourced signals to determine, for each access point detected in the scan, (i) a percentage of the total detections of the access point with GPS signals of the device that detected the access point, and (ii) an RSS (Received Signal Strength) value below which detections do not involve such GPS signals. The percentage and RSS value enable the determination of a probability that the location of the electronic device is in a particular category (e.g., indoor or outdoor). For example, the percentage and RSS value may enable the determination of a probability indicating whether the electronic device is located outdoors, indoors, and if indoors, whether the electronic device is located in the near or far side of the room. The probability may enable the electronic device to trigger a corresponding function.

[0005] In one aspect, a method for indoor / outdoor detection of an electronic device is disclosed that is performed by a server. The method includes receiving a request from the electronic device for location information corresponding to an access point detected within range of the electronic device and identified in the request. The request includes sensor data detected by the electronic device at the location of the electronic device. The method also includes receiving a request from the electronic device for location information corresponding to an access point detected within range of the electronic device and identified in the request. The method includes, in response to receiving the request, accessing stored crowdsourced signals including detections of access points and corresponding sensor data previously received from a plurality of electronic devices observing the plurality of access points. The accessing step is for locating a subset of the stored crowdsourced signals that correspond to the access points identified in the request. In addition, the method includes determining, for each access point identified in the request, a percentage of detections of the access point accompanied by a Global Positioning System (GPS) signal of the device that detected the access point based on the stored crowdsourced signals. Furthermore, the method includes determining, for each access point identified in the request, a value, a received signal strength, RSS, below which detection of the access point is not accompanied by a GPS signal, based on the stored crowdsourced signals. The method also includes, for each access point identified in the request, transmitting the percentage and RSS value to the electronic device to enable the electronic device to determine whether the location of the electronic device is an outdoor location or an indoor location and triggering a corresponding function.

[0006] In another aspect, a method for indoor / outdoor detection of an electronic device is disclosed, the method including performing a scan of wireless networks within range of the electronic device, detecting a plurality of location-related signals using a sensor of the electronic device, and transmitting the plurality of location-related signals and a list of identified access points to a server. The method also includes receiving information from the server corresponding to each of the identified access points. The received information corresponds to crowdsourced signals collected at the server from a plurality of electronic devices observing the identified access points. The received information also includes an indication of a proportion of detections of the identified access points with GPS signals in the crowdsourced signals, and a received signal strength, an RSS (received signal strength) value below which detections of the identified access points are not with GPS signals.

[0007] This summary is provided to introduce a brief concept of the client-server system for indoor / outdoor detection of electronic devices. The client-server system for indoor / outdoor detection of electronic devices is further described in the detailed description and drawings. This summary is not intended to determine essential features of the claimed subject matter, nor is it used to determine the scope of the claimed subject matter.

[0008] The details of one or more aspects of a client-server approach for indoor / outdoor detection of electronic devices and related systems and methods are described herein with reference to the accompanying drawings, in which like features and components are numbered the same throughout. [Brief description of the drawings]

[0009] [Figure 1] 1 illustrates an example environment for a client-server approach for indoor / outdoor detection of electronic devices and associated systems and methods. [Diagram 2] 2 illustrates an exemplary implementation of the electronic device of FIG. 1. [Diagram 3]2 illustrates an exemplary implementation of a client-server approach for indoor / outdoor detection of the electronic device of FIG. 1. [Figure 4] 1 illustrates a method performed by a server for enabling indoor / outdoor detection of an electronic device. [Diagram 5] 1 illustrates a method performed by an electronic device for enabling indoor / outdoor detection of the electronic device. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0010] Detailed Description overview Aspects of a client-server approach and related systems and methods for indoor / outdoor detection of electronic devices are described. The client operates on the electronic device and the server operates in the backend. The server may compute some indication or signal that may be used to indicate whether the electronic device is deep indoors. In some aspects, the server may utilize a crowdsourced approach in which signals are collected from sensors (e.g., GPS, Wi-Fi, inertial sensors) of multiple electronic devices. Using the collected signals, information may be obtained that indicates that a particular access point is in a location that falls into a particular category (e.g., outdoor or indoor). In some cases, the indoor category may be further differentiated as deep indoors or near indoors. Such a determination may be utilized by the electronic device to distinguish whether its own location falls into one of these categories (e.g., outdoor or indoor). If indoors, the electronic device may further distinguish whether its location is deep indoors or near indoors. In response to this determination, the electronic device may trigger one or more corresponding functions to improve performance and / or reduce power consumption.

[0011] In general, the term "near indoor" or "near indoor location" may refer to a location near a building perimeter that interferes with GPS signals such that the signal strength of the GPS signal is low, and the term "deep indoor" or "deep indoor location" may refer to an area deep inside a building, away from the perimeter of the building or structure. The deep indoor may include an area in a building or structure far from windows, balconies, and glass curtain walls, and the near indoor may include an area near windows, balconies, and glass curtain walls. In some cases, a building may interfere with the GPS or GNSS signal such that the GPS or GNSS signal is not detectable (e.g., no GPS or GNSS satellites are in view). The near indoor may be characterized by a weak GPS signal (e.g., not enough satellites for positioning) of the electronic device 102 when observing the wireless network access point, and the far indoor may be characterized by no GPS signal (no GPS signal detected) when observing the wireless network access point. This and other aspects are further described in more detail below.

[0012] In one embodiment, these signals can be sent in raw format to the electronic device, and the electronic device can process the raw signals, allowing each client (e.g., application specific client, system specific client) to build their own scheme for how to use this raw data to determine whether the electronic device is within a category such as outdoors, near indoors, or far indoors.

[0013] In another embodiment, the server may provide, for each access point observed by the electronic device, a probability that the access point is, for example, deep indoors. The server may then transmit this probability for each access point observed by the electronic device to the client of the electronic device. The client may then compile these probabilities (e.g., combine the probabilities of access points in range of the electronic device) to estimate or calculate a probability that the location of the electronic device (and the user of the electronic device) is likely to fall into a given category (i.e., deep indoors, near indoors, or outdoors). In yet another embodiment, the server, rather than the client device, may determine the probability that the location of the electronic device is likely to fall into a given category from signals received from the client device.

[0014] In some embodiments, the electronic device can use a determination that its location is within a category, such as far indoors, near indoors, or outdoors ("indoor / outdoor determination") to conserve power by automatically turning off one or more sensors. If the slave device is indoors (where GPS signals are typically weak due to interference from buildings or structures), GPS scanning can be turned off. GPS scanning is known to be an expensive sensor in terms of power consumption, so disabling GPS scanning can help reduce power consumption.

[0015] In some aspects, the electronic device can also use the indoor / outdoor determination to allocate resources. For example, the electronic device can use the indoor / outdoor determination to improve location accuracy when indoors by using different location sensors (e.g., using Wi-Fi signals rather than GPS signals) or by assigning weights to different relative location signals (e.g., assigning a smaller weight to GPS signals and a larger weight to Wi-Fi signals).

[0016] In yet another aspect, some applications running on the electronic device can use the indoor / outdoor determination to switch modes. For example, an augmented reality application may use a 3D mode outdoors to display 3D images of objects in the field of view of the electronic device's camera. When a user brings the electronic device into a building or structure, the augmented reality application automatically switches from a 3D mode corresponding to the electronic device being outdoors to a 2D (two-dimensional) mode corresponding to the electronic device being indoors so as not to display 3D images related to outdoors. The reverse can occur when the user leaves the building or structure, allowing the augmented reality application to seamlessly switch from the 2D mode to the 3D mode. In this manner, the augmented reality application can switch from a first mode to a second mode based on the current location of the electronic device being different from a previously determined location of the electronic device. Thus, the application can provide a different user experience based on whether the electronic device is outdoors or indoors.

[0017] These are just a few examples of how the described techniques and devices can be utilized to enable a client-server approach for indoor / outdoor detection of electronic devices and related systems and methods. Other examples and implementations are described throughout this specification. This specification will now describe an exemplary system, followed by an exemplary method.

[0018] Exemplary System 1 illustrates an example environment 100 of a client-server approach and associated systems and methods for indoor / outdoor detection of electronic devices. The client-server approach includes an electronic device 102 (e.g., a portable electronic device) and a server 104 that communicate with each other over a network 106, such as a cellular network or other wireless network. The electronic device 102 is brought into various environments by a user 108, such as outdoors 110 or indoors 112 (e.g., within a building 114 or structure, within a tunnel, cave, subway).

[0019] The electronic device 102 may include a client application 116. The client application 116 implements an indoor detection module 118 to determine the likelihood (e.g., probability) that the electronic device 102 is outdoors 110 or indoors 112 based on information received from the server 104. As described further below, the determination of indoors 112 may be enhanced by distinguishing whether the electronic device 102 is near indoors or far indoors (i.e., by distinguishing subcategories within the category "indoors").

[0020] The electronic device 102 may include a network scanner 120 that can be used to scan for nearby wireless networks provided by one or more access points 122. In addition, the electronic device 102 may be configured to determine the location of the device. The device may include various sensors 124 that detect sensor data 126 that can be used to assist in determining the location of the device. Any suitable sensor(s) 124 may be used. Examples include GPS sensors, Global Navigation Satellite System (GNSS) sensors, barometric pressure sensors, inertial sensors, temperature sensors, humidity sensors, light sensors, or any combination thereof. The sensor data 126 may include any suitable sensor data that can be used to assist in determining the location of the device. Examples include GPS data, GNSS data, barometric pressure, inertial data, ambient temperature, humidity, light intensity of the device's environment, or any combination thereof.

[0021] The electronic device 102 may also include a communications module 128 for communicating with the server 104. In some aspects, the client application 116 may utilize the communications module 128 to transmit the sensor data 126 along with an indication of the observed access points 122 to the server 104.

[0022] The server 104 operates in the backend and includes an AP (Access Point) positioning API (Application Programming Interface) 130 (AP positioning API 130), a crowdsourcing module 132, a communication module 134, and a storage 136. In some aspects, the server 104 also includes an indoor probability module 138. The crowdsourcing module 132 is configured to collect information (e.g., sensor data 126, ID of the access point, ID of the wireless network) from a plurality of electronic devices that have observed the access point 122 by wireless network scanning (e.g., Wi-Fi scanning) for a certain period of time. The server 104 stores the collected information (e.g., crowdsourced information 140) in the storage 136. The storage 136 may include cloud storage or other backend storage. The crowdsourced information 140 may be stored in a model format, for example, a different model format for each access point from which the server 104 has received a crowdsourced signal from the electronic device.

[0023] The AP positioning API 130 can be called by the electronic device 102 to access crowdsourced information 140 regarding signals or data corresponding to each access point 122 observed by the electronic device 102. The AP positioning API 130 can return information for each access point 122 observed by the electronic device 102 that can be used to determine the likelihood that the access point 122 is outdoors, near indoors, or far indoors. In some aspects, the returned information includes a portion of the crowdsourced information 140 in raw data or raw signal format. The indoor detection module 118 of the electronic device 102 can combine these raw data or raw signals to compute a probability that a recent wireless network scan performed by the electronic device 102 was collected from an outdoor location, a near indoor location, or a far indoor location. Alternatively, the indoor probability module 138 at the server 104 can compute such a probability for the electronic device 102, and the communication module 134 can transmit the probability to the electronic device 102.

[0024] 2 is a diagram illustrating an example implementation 200 of the electronic device 102 of FIG. 1 in further detail in accordance with one or more aspects. The electronic device 102 is illustrated with various non-limiting example devices including a smartphone 102-1, a tablet 102-2, a laptop 102-3, a desktop 102-4, a wearable computing device 102-5 (e.g., a smart watch), a digital camera 102-6, computing glasses 102-7 (e.g., smart glasses), and a portable media player 102-8. The electronic device 102 includes a computer processor(s) 202 and a computer-readable memory 204. 1. The computer-readable medium 204 includes a computer-readable medium 204 that includes a memory medium 206 and a storage medium 208. Applications and / or an operating system (not shown) embodied as computer-readable instructions on the computer-readable medium 204 may be executed by the processor(s) 202 to provide some of the functionality described herein. The computer-readable medium 204 also includes a client application 116. The client application 116 may communicate with the server 104 of FIG. 1 utilizing a communication module 128. The client application 116 may also utilize an indoor detection module 118 to detect the probability that the electronic device 102 is in an outdoor location, an indoor near location, or an indoor far location.

[0025] The electronic device 102 may also include a sensor(s) 124, a network scanner 120, an I / O port 210, and a network interface 212. The I / O port 210 may be, by way of example only, a High-Definition Multimedia Interface (HDMI), a Digital Video Interface (DVI), a DisplayPort, a fiber-optic or optical-based audio port (e.g., analog, optical, or digital), a Universal Serial Bus (USB), or a USB-C port. The electronic device 102 may include various ports, such as, but not limited to, a Serial Bus port, a Serial Advanced Technology Attachment (SATA) port, a Peripheral Component Interconnect (PCI) Express-based port or card slot, a serial port, a parallel port, or other legacy port. The electronic device 102 may also include a network interface(s) 212 for communicating data over a wired, wireless, or optical network. By way of example, but not limited to, the network interface 212 may communicate data over a LAN (local area network), a WLAN (wireless local area network), a PAN (personal area network), a WAN (wide area network), an intranet, the Internet, a peer-to-peer network, a point-to-point network, a mesh network, or the like.

[0026] 3 is a diagram illustrating an example implementation 300 of a client-server approach for indoor / outdoor detection of the electronic device 102 of FIG. 1. In the illustrated example, the electronic device 102 performs a Wi-Fi scan to detect a first access point (AP-1 302), a second access point (AP-2 304), and a third access point (AP-3 306) within range of the electronic device 102. In addition, the electronic device 102 collects sensor data 126, including any suitable location-related signals. Some examples of the sensor data 126 include a current GPS location 308 of the electronic device 102, air pressure 310 of the air surrounding the electronic device 102, an inertial signal 312 corresponding to the electronic device 102, ambient light 314, ambient temperature 316, and a Wi-Fi signal 318.

[0027] The sensor data 126 (each including a different combination) may indicate that the electronic device 102 is indoors. For example, if the electronic device 102 utilizes a barometer and the barometric pressure 310 indicates that the electronic device 102 has changed altitude (e.g., changed floors), then the electronic device 102 may be more likely to be indoors. If the electronic device 102 detects a Wi-Fi signal 318 at a particular access point while changing altitude, such a combination of signals may indicate that the particular access point is indoors and not outdoors. In another example, if the electronic device 102 measures its GPS location 308 with strong signal strength, then the observed access point is more likely to be outdoors or nearby outdoors, since GPS signals generally have weaker signal strength indoors.

[0028] The electronic device 102 sends a request 320 to the server 104 for information that can be used to estimate whether the electronic device 102 is currently located in an outdoor location, a near indoor location, or a far indoor location. The electronic device 102 includes in the request 320 the IDs of each observed access point (e.g., AP-1 ID 322, AP-2 ID 324, and AP-3 ID 326).

[0029] The server 104 accesses the crowdsourced information 140 and uses the IDs of the observed access points included in the request to locate data or signals collected from other electronic devices that previously detected these observed access points (e.g., AP-1 302, AP-2 304, and AP-3 306). The crowdsourced information 140 may include raw or processed sensor information (e.g., GPS location 308, ambient air pressure 310, inertial signal 312, ambient light 314, ambient temperature 316, and Wi-Fi signal 318) for each electronic device that detected the observed access points at the time and location of detection, similar to the sensor data 126. Other raw or processed sensor information that can be used to indicate whether the electronic device 102 is indoors or outdoors can also be used, including activity recognition, speed and direction of movement, and the type of active application (e.g., exercise application, augmented reality application, navigation application) running on the device.

[0030] The server 104 may add the sensor data 126 for each access point (AP-1 302, AP-2 304, and AP-3 306) identified in the request 320 to the crowdsourced information 140. Using the crowdsourced information 140, the server may determine, for each access point, a percentage P of the detection of the access point with a GPS signal of the detecting device. In some aspects, the percentage P indicates the number of times other devices detected a GPS signal while observing the access point relative to the total number of detections of the access point in the crowdsourced information 140. The percentage P may represent a part or fraction of a set or whole, including a value determined by x÷100. The server 104 may also use the crowdsourced information 140 to determine an RSS value S below which detections do not involve a GPS signal of the detecting device (e.g., a minimum RSS value with a GPS signal of an electronic device that detected the access point relative to the total number of detections of access points with the corresponding RSS value in the crowdsourced information 140).

[0031] The server 104 may send a response 328 that includes the percentage P and the RSS value S for each access point in the request 320. For example, the response 328 may be (P,S) AP-1 330 and (P,S) AP-2 332 and (P,S) AP-3 334. The server 104 can also transmit other information for each access point, such as the GPS location of the access point and / or the probability that each access point is indoors (or the probability that each access point is located outdoors), calculated from the crowdsourced information 140.

[0032] The electronic device 102 can then use this information in the response 328 to estimate, for each access point (AP-1 302, AP-2 304, and AP-3 306), the probability that the access point is located deep indoors (or outdoors or near indoors). By combining the probabilities of the observed access points (AP-1 302, AP-2 304, and AP-3 306), the electronic device 102 can estimate the likelihood that the electronic device 102's own location is deep indoors (or outdoors or near indoors). This and other features are described in more detail in an exemplary manner below.

[0033] Exemplary Methods 4 and 5 illustrate methods 400 and 500. Although methods 400 and 500 are illustrated as a series of blocks detailing operations performed, the order or combination for performing the operations of the respective blocks is not necessarily limited to the order or combination shown. Moreover, any one or more of these operations may be repeated, combined, rearranged, or related to provide various additional and / or alternative methods. While some of the following description may refer to entities or processes detailed in the example environment 100 of FIG. 1 and in FIGS. 2 and 3, such references are by way of example only. The techniques are not limited to operations by one entity or multiple entities operating on one device.

[0034] 4 illustrates a method for enabling indoor / outdoor detection of an electronic device, performed by a server. The server may be the server 104 of FIG. 1, and the electronic device may be the electronic device 102 of FIG. 1. The server 104 may communicate with the electronic device 102 via a network 106.

[0035] At 402, a server receives crowdsourced signals from a plurality of portable electronic devices observing an access point. For example, the server receives and processes the crowdsourced signals including GPS signals, Wi-Fi signals, barometric pressure signals, inertial sensor signals, and other location-related signals detected by the plurality of portable electronic devices when detecting the access point.

[0036] At 404, the server stores the crowdsourced signals in storage in a raw format. In some aspects, the server can aggregate the crowdsourced signals by access point. Storing the crowdsourced signals in a raw format allows the server to provide the raw signals to a requesting client application, which allows the client application to use its own application-specific or system-specific models, algorithms, parameters, settings, and requirements on the raw signals to determine whether the electronic device on which the client application is running is likely to be outdoors or indoors.

[0037] At 406, the server receives a request from the electronic device for location information corresponding to the access point(s) detected within range of the electronic device. For example, the server receives information related to a wireless network scan (e.g., Wi-Fi scan) performed by the electronic device 102, such as request 320 of FIG. 3. The scan includes an identification of one or more access points detected by the electronic device 102. The request may also include other location-related signals detected by the electronic device 102, such as a GPS signal corresponding to a GPS location (e.g., longitude location, latitude location) of the electronic device 102 at the time and location at which the electronic device 102 performed the scan. Such other location-related signals may include signals indicative of the amount or level of ambient light around the electronic device 102, the air pressure of the surrounding environment around the electronic device 102, an RSS value corresponding to the access point relative to the electronic device 102, the ambient temperature, etc.

[0038] At 408, the server, in response to the request, accesses the stored crowdsourced signals to locate a subset of the stored crowdsourced signals that correspond to the access points identified by the electronic device. In addition, the server may combine the signals received from the electronic device 102 with the stored crowdsourced signals that correspond to the access points identified in the scan.

[0039] At 410, the server determines a percentage of detections involving GPS signals for each access point identified by the electronic device. The detections are determined from the stored crowdsourced signals and include detections of the access point by a subset of the plurality of portable electronic devices. In this way, a distinction is made between (i) detection of an access point without a corresponding GPS signal of each electronic device observing the access point (e.g., Wi-Fi observation) and (ii) detection of an access point with a GPS signal of each electronic device. For example, if the ratio of detection of an access point with a GPS signal is high (e.g., about 75% or more), it is highly likely that the access point is outdoors. If the ratio of detection of an access point with a GPS signal is low (e.g., about 25% or less), or conversely, if the ratio of detection of an access point without a GPS signal is high (e.g., about 75% or more), it is highly likely that the access point is located at the back of the building. If the ratio is moderate (e.g., between about 25% and 75%), indicating that some electronic devices among the electronic devices detecting the access point also detect a GPS signal and some electronic devices among the electronic devices detecting the access point do not detect a GPS signal, it is likely that the access point is located at the front of the building (e.g., located near the perimeter (inside or outside) of the building).

[0040] At 412, for each access point identified by the electronic device, the server determines an RSS value below which no GPS signal is received for the access point. For example, using stored crowdsourced signals, the server may determine and / or record the RSS value. Access points for which no GPS location is observed may be assigned a unique RSS value indicating that the access point is deep inside. Similarly, access points for which a GPS location is observed may be assigned a low RSS value. In examples, a low RSS value may be in the range of -105 dBm (decibels milliwatts) to about -80 dBm, a medium RSS value may be in the range of about -80 dBm to about -65 dBm, a strong RSS value may be in the range of about -65 dBm to about -50 dBm, and a very strong RSS value may be greater than about -50 dBm.

[0041] In addition to the RSS value, a CN0 (signal-to-noise density) value may be used to indicate a deep indoor area, a near indoor area, or outdoors. For example, a CN0 signal below about 15 dBHz (decibels of Hertz) may indicate a deep indoor area, a CN0 signal within a range of about 15 dBHz to about 23 dBHz may indicate a near indoor area, and a CN0 signal above about 23 dBHz may indicate outdoors. The ranges of RSS and CN0 values ​​are described as examples only, and the technology described herein is not limited by such examples.

[0042] Table 1 below lists example combinations of signal strength and GPS signal that may indicate whether an access point is located deep indoors, near indoors, or outdoors.

[0043] Table 1: Example combinations of signal strength and GPS signal for indoor and outdoor detection of access points

[0044] [Table 1]

[0045] In one example, the access point may be determined to be in the back of the room based on a combination of (i) detection of an access point with a strong signal strength and no GPS signal, and (ii) detection of an access point with a weak signal strength and no GPS signal. In another example shown in Table 1, if the access point is located in the near side of the room, the electronic device may detect a GPS with a strong signal strength because sometimes a GPS can be detected near the building perimeter. However, if the electronic device 102 is moved away from the access point (e.g., further inside), the electronic device 102 will no longer detect a GPS. In such a case, the access point may be determined to be in the near side of the room based on a combination of (i) detection of an access point with a strong signal strength and a GPS signal, and (ii) detection of an access point with a weak signal strength and no GPS signal, as shown in Table 1.

[0046] In another example shown in Table 1, an access point may be determined to be indoors near based on a combination of (iii) detecting an access point with a strong signal strength and no GPS signal, and (iv) detecting an access point with a weak signal strength and a GPS signal (e.g., a device that has been moved away from an access point to an outdoor location). In some cases, the determination that an access point is indoors near is a determination of (iii) and (iv) in combination with (v) detecting an access point with a weak signal strength and no GPS signal (e.g., a device that has been moved further indoors away from an access point). In yet another example shown in Table 1, an access point may be determined to be outdoors based on a combination of (vi) detecting an access point with a strong signal strength and a GPS signal, and (vii) detecting an access point with a weak signal strength and a GPS signal.

[0047] At 414, the server transmits the rates and RSS values ​​for each access point to the electronic device. The rates and RSS values ​​for each access point observed by the electronic device 102 can enable a client application on the electronic device 102 to determine the probability that the access point is deep indoors, near indoors, or outdoors (the "indoor probability") for each access point. These probabilities can enable the client application to estimate the probability that the electronic device 102 is deep indoors, near indoors, or outdoors.

[0048] Alternatively, at 416, the server estimates the indoor probability for each of the access points identified in the scan. Any suitable aggregation function can be implemented to estimate the probability that an access point is deep indoors.

[0049] At 418, the server transmits the indoor probability to the electronic device. Transmitting the indoor probability for each access point observed by the electronic device 102 may enable the electronic device 102 to combine the observed access point probabilities to determine whether the electronic device 102 is located far indoors, near indoors, or outdoors. Alternatively, rather than transmitting the indoor probability to the electronic device 102, the server 104 may itself combine the observed access point probabilities to determine whether the electronic device 102 is located far indoors, near indoors, or outdoors, and the server 104 may then transmit the results of this process to the electronic device 102.

[0050] 5 illustrates a method for indoor / outdoor detection of an electronic device performed by an electronic device, which may be electronic device 102, in communication with server 104 via network 106.

[0051] At 502, the electronic device performs a scan for wireless networks within range of the electronic device. This scan may include, for example, 802. The Wi-Fi scan may include any suitable Wi-Fi scan for wireless networks served by access points, such as using the .11 standard.

[0052] At 504, the electronic device detects a plurality of location-related signals using sensors of the electronic device. For example, the electronic device 102 may detect a GPS location 308, an ambient air pressure 310, an inertial signal 312, an ambient light 314, an ambient temperature 316, and a Wi-Fi signal 318.

[0053] At 506, the electronic device identifies multiple access points providing wireless network access based on the scan results. For example, the electronic device 102 may detect at least AP-1 302, AP-2 304, and AP-3 306 of FIG. 3. At this point, the electronic device 102 does not know whether the detected access points are located deep indoors, near indoors, or outdoors.

[0054] At 508, the electronic device transmits the plurality of location-related signals and the list of identified access points to the server. For example, the electronic device 102 transmits a request (e.g., request 320 of FIG. 3 ) that may include a call to an API (e.g., AP positioning API 130 of FIG. 1 ) at the server 104.

[0055] At 510, the electronic device receives information from the server corresponding to each of the identified access points. The received information corresponds to crowdsourced signals collected at the server from a plurality of electronic devices observing the identified access points. For each access point identified in the request, the received information may include (i) a proportion P of detections of the access point with a GPS signal in the crowdsourced information, and (ii) an RSS value S below which detections of the access point are not accompanied by a GPS signal. In some aspects, the received information may also include a GPS location in 3D (x, y, z) of each of the identified access points. In one example, the received information may be in the form of a model, e.g., a different model for each access point identified in the request (or a model for each access point stored by the server 104).

[0056] At 512, the electronic device determines whether the electronic device was most likely located at the time the electronic device performed the scan: an outdoor location, a near indoor location, or a far indoor location based on the received information. For example, the electronic device 102 may apply an algorithm based on the response 328 from the server 104 to combine available information for each access point observed in the Wi-Fi scan and calculate the probability that the current Wi-Fi scan was collected from an indoor location (or an outdoor location). An exemplary algorithm may rely on the hypothesis that the more access points in the Wi-Fi scan (i) that are not associated with the presence of a GPS signal and / or (ii) that are associated with a high RSS below which a GPS signal is not received, the higher the probability that the electronic device 102 is indoors.

[0057] To distinguish between outdoors, near indoors, and far indoors, the electronic device 102 (or the client application 116 running on the electronic device 102 shown in FIG. 1) can augment the above algorithm by setting a threshold value for the received information for each access point. For example, a threshold can be set for the number of observed access points without an associated GPS and / or the number of access points with a high RSS value below which GPS is not received. When the electronic device 102 observes, for example, six access points in a Wi-Fi scan, the electronic device 102 can use a threshold value (e.g., 5) to determine that, for example, if five or more of these access points do not have an associated GPS, there is a high probability that the Wi-Fi scan location is a far indoor location. Similarly, if a threshold number of access points (e.g., If the Wi-Fi scanning location is too far away (7 out of 10) and has a high RSS value below which the GPS of the detecting device is not received, then the Wi-Fi scanning location is likely deep inside the building.

[0058] Alternatively or additionally, the electronic device 102 can distinguish between outdoors, near indoors, and far indoors by setting a threshold(s) to the calculated probability. In an exemplary implementation, the electronic device 102 can use the received information to calculate a probability indicating that the electronic device 102 may be far indoors. If the probability is less than a first threshold T1, the electronic device 102 is less likely to be indoors and more likely to be outdoors. If the probability is between the first threshold T1 and a second threshold T2 higher than the first threshold T1, the electronic device 102 may be in a near indoor location, such as near the perimeter of a building. If the probability is greater than the second higher threshold T2, the electronic device 102 may be far indoors.

[0059] Conversely, the electronic device 102 can use the received information to calculate a probability indicating that the electronic device 102 is likely outdoors. For example, if the probability is less than a first threshold T1, the electronic device 102 is unlikely to be outdoors and is likely to be deep indoors. If the probability is between the first threshold T1 and a second threshold T2 higher than the first threshold T1, the electronic device 102 may be in a nearer indoor location, such as near the perimeter of a building. If the probability is greater than the higher second threshold T2, the electronic device 102 may be outdoors.

[0060] The first and second thresholds may be application-specific thresholds, where different applications may use different thresholds to determine whether the electronic device 102 is likely to be outdoors, near indoors, or far indoors. The application-specific thresholds may allow a particular application to trigger location-based features or actions that improve performance, reduce power consumption, or allocate resources. Alternatively, the first and second thresholds may be system-specific thresholds, where the thresholds are specific to the operating system of the electronic device 102 and are defined by the operating system manufacturer. The system-specific thresholds may allow the electronic device 102 to trigger location-based features that improve performance, reduce power consumption, or allocate resources at a system level, regardless of which application is running. In some aspects, the thresholds may be defined by a user of the electronic device 102.

[0061] In some aspects, the server 104 can assign an additional floating point to the model of the access point to indicate that the access point is deep indoors. In one example, a bounding box can be applied to the Wi-Fi scan of the electronic device 102 to increase filtering and refine the determination of which of an outdoor location, a near indoor location, or a deep indoor location is most likely the location of the electronic device 102. In another manner, the server 104 can perform step 512 following the manner described above with respect to the electronic device 102 and then transmit the results to the electronic device 102.

[0062] At 514, in response to this determination, the electronic device triggers a function corresponding to the determined location, which may be an application-specific function (e.g., mode switching, volume control, brightness control) or a system-specific function (e.g., GPS detection on / off, Wi-Fi scanning on / off, Bluetooth on / off, screen brightness control, or other system settings).

[0063] Some examples are described below. Example 1: A method for indoor / outdoor detection of an electronic device, performed by a server, comprising: The method includes receiving a request from the electronic device for location information corresponding to an access point detected within range of the electronic device and identified in the request, the request including sensor data detected by the electronic device at the location of the electronic device, the method further comprising: and in response to receiving the request, accessing stored crowdsourced signals including detections of access points and corresponding sensor data previously received from a plurality of electronic devices observing the plurality of access points, the accessing step being to locate a subset of the stored crowdsourced signals that correspond to the access points identified in the request, the method further comprising: determining, for each access point identified in the request, a percentage of detections of the access point accompanied by a Global Positioning System (GPS) signal of the device that detected the access point based on the stored crowdsourced signals; determining, for each access point identified in the request based on the stored crowdsourced signals, a received signal strength, RSS, below which detection of the access point will not involve a GPS signal; and for each access point identified in the request, sending the percentage and RSS value to the electronic device, enabling the electronic device to determine whether the location of the electronic device is in an outdoor location or an indoor location, and triggering a corresponding function.

[0064] Example 2: The method of Example 1, wherein the transmitting step includes transmitting a subset of the crowdsourced signals in a raw format to the electronic device to enable the electronic device to utilize application-specific or system-specific parameters to distinguish whether the location of the electronic device is an outdoor location or an indoor location.

[0065] Example 3: The method of example 1 or 2, wherein the sensor data includes at least one of a GPS location corresponding to a location of the electronic device, air pressure, an inertial signal corresponding to the electronic device, ambient light, ambient temperature, or a Wi-Fi signal.

[0066] Example 4: The method of any one of the preceding examples, further comprising aggregating the sensor data with the stored crowdsourced signal.

[0067] Example 5: The percentage indicates how many times other devices detected a GPS signal when observing an access point relative to the total number of detections of the access point in the stored crowdsourced signals, A high percentage indicates that the access point may be outdoors. A low percentage may indicate that the access point is located deep inside the building. The method of any one of the preceding examples, wherein a medium percentage indicates that the access point may be located indoors near the near side.

[0068] Example 6: The method of any one of the preceding examples, wherein the RSS value represents a minimum RSS value associated with a GPS signal of a device that detected the access point, the minimum RSS value being the minimum RSS value relative to the total number of detections of access points having corresponding RSS values ​​in the stored crowdsourced signals.

[0069] Example 7: For each access point identified in the request, calculating a probability that the access point is likely to be deep inside the room; The method of any one of the preceding examples, further comprising: transmitting the probability of the access point to the electronic device.

[0070] Example 8: The indoor positions include indoor positions on the front side and indoor positions on the back side, determining a further probability that the location of the electronic device is likely to be a deep indoor location based on the combination of probabilities calculated for the identified access points; determining that the location of the electronic device is an outdoor location if the further probability is less than a first threshold; determining that the location of the electronic device is an indoor near side location if the further probability is between the first threshold and a second threshold greater than the first threshold; and determining that the location of the electronic device is a deep indoor location if the further probability is greater than a second threshold.

[0071] Example 9: For each access point identified in the request, calculating a probability that the access point is likely outdoors; The method of any one of Examples 1 to 6, further comprising the step of transmitting the probability of the access point to the electronic device.

[0072] Example 10: The indoor positions include indoor positions on the front side and indoor positions on the back side, determining a further probability that the location of the electronic device is likely to be an outdoor location based on the combination of probabilities calculated for the identified access points; If the further probability is less than the first threshold, determining that the location of the electronic device is a deep indoor location; determining that the location of the electronic device is an indoor near side location if the further probability is between the first threshold and a second threshold greater than the first threshold; and determining that the location of the electronic device is an outdoor location if the further probability is greater than a second threshold.

[0073] Example 11: A method as described in any one of Examples 7 to 10, wherein the step of transmitting the access point probability to the electronic device enables the electronic device to trigger a function depending on a determination as to which of a deep indoor location, a near indoor location, or an outdoor location corresponds to the location of the electronic device.

[0074] Example 12: The method of any one of the preceding examples, wherein the outdoor location is outside a building or structure.

[0075] Example 13: The method of any one of the preceding examples, wherein an indoor near side location is near the perimeter of a building or structure that interferes with the GPS signal, and the signal strength of the GPS signal is low.

[0076] Example 14: The method of any one of the preceding examples, wherein the deep indoor location includes an area within a building or structure, away from the perimeter of the building or structure, where interference with the GPS signal makes the GPS signal undetectable.

[0077] Example 15: Memory and and a processor configured to execute instructions in the memory to perform a method as recited in any one of the preceding examples.

[0078] Example 16: A method for indoor / outdoor detection of an electronic device, performed by the electronic device, comprising: performing a scan for wireless networks within range of the electronic device; detecting a plurality of position-related signals using a sensor of the electronic device; Based on the scan results, multiple access points offering wireless network access are displayed. identifying an access point; transmitting the plurality of location-related signals and a list of the identified access points to a server; and receiving information from a server corresponding to each of the identified access points, the received information corresponding to crowdsourced signals collected at the server from a plurality of electronic devices observing the identified access points, the received information comprising: an indication of the percentage of detections of identified access points with GPS signals in the crowdsourced signals; and a received signal strength, RSS, a value below which detection of the identified access point does not involve a GPS signal; The method further includes determining, based on the received information, which of the following locations the electronic device was most likely located at the time the electronic device performed the scan: an outdoor location, an indoor near location, or an indoor far location.

[0079] Example 17: The method of Example 16, further comprising determining, for the identified access point, a probability that indicates that the identified access point is located deep indoors based on the received information.

[0080] Example 18: The method of Example 17, wherein the step of determining which location the electronic device was most likely located at when the electronic device performed the scan includes a step of calculating a further probability indicating the likelihood that the electronic device was located deep inside the room when the electronic device performed the scan based on a combination of the probabilities of the identified access points.

[0081] Example 19: The method of example 18, further comprising applying a number of thresholds to the further probabilities to define ranges corresponding to outdoor locations, indoor near locations, and indoor far locations, respectively.

[0082] Example 20: Combining a percentage and an RSS value for each identified access point; and calculating a probability that the scan was performed at a deeper indoor location.

[0083] Example 21: The method of example 16, wherein the location-related signal includes at least one of a GPS position of the electronic device, air pressure, an inertial signal, ambient light, ambient temperature, or a Wi-Fi signal.

[0084] Example 22: The method of Example 16, wherein the step of receiving information from the server includes a step of receiving a subset of the crowdsourced signals in a raw format.

[0085] Example 23: The method of Example 16, further comprising the step of triggering a function corresponding to the determined location in response to the determining step.

[0086] Example 24: The determined position includes a position on the near side of the room or a position on the far side of the room, 24. The method of example 23, wherein the triggered function includes turning off a GPS for location detection.

[0087] Example 25: The method of Example 23, wherein the triggered function includes switching the augmented reality application from a first mode to a second mode based on the determined location being different from a previously determined location of the electronic device.

[0088] Example 26: The determined position is an indoor near side position, and the previously determined position is an outdoor position, 26. The method of example 25, wherein the first mode comprises a three-dimensional mode and the second mode comprises a two-dimensional mode.

[0089] Example 27: The received information includes a probability that the identified access point is located deep inside the room, the probability being calculated by the server based on crowdsourced information; 17. The method of example 16, wherein the determination is based on a combination of the received probability for the identified access point and one or more probability thresholds.

[0090] Example 28: The method of example 27, wherein the one or more probability thresholds include application-specific values.

[0091] Example 29: The method of example 27, wherein the one or more probability thresholds are probability thresholds specific to an operating system of the electronic device.

[0092] Example 30: The method of example 27, wherein the one or more probability thresholds are definable by a user of the electronic device.

[0093] Example 31: Memory and and a processor configured to execute instructions in the memory to perform the method according to any one of Examples 16 to 30.

[0094] summary Although the client-server scheme for indoor / outdoor detection of electronic devices and related systems and methods have been described in language specific to the features and / or methods, the claimed subject matter is not necessarily limited to the specific features or methods described. Rather, these specific features and methods are disclosed as exemplary implementations of the client-server scheme for indoor / outdoor detection of electronic devices and related systems and methods, and other equivalent features and methods are within the scope of the appended claims. Moreover, a variety of different aspects have been described. It will be appreciated that each of the described aspects may be implemented alone or in conjunction with one or more of the other described aspects.

Claims

1. 1. A method for indoor / outdoor detection of an electronic device, performed by a server, comprising: receiving a request from an electronic device for location information corresponding to access points detected within range of the electronic device and identified in the request, the request including sensor data detected by the electronic device at a location of the electronic device, the method further comprising: and in response to receiving the request, accessing stored crowdsourced signals including detections of access points and corresponding sensor data previously received from a plurality of electronic devices observing a plurality of access points, the accessing step being to locate a subset of the stored crowdsourced signals that correspond to the access points identified in the request, the method further comprising: determining, for each access point identified in the request based on the stored crowdsourced signals, a percentage of detections of the access point accompanied by a Global Positioning System (GPS) signal of a device that detected the access point; determining, for each access point identified in the request based on the stored crowdsourced signals, a received signal strength, which is an RSS, below which detection of the access point will not involve a GPS signal; and for each access point identified in the request, transmitting the ratio and the RSS value to the electronic device, enabling the electronic device to determine whether the location of the electronic device is in an outdoor location or an indoor location, and triggering a corresponding function.

2. 2. The method of claim 1, wherein the transmitting step includes transmitting a subset of the crowdsourced signals to the electronic device in a RAW format to enable the electronic device to utilize application or system specific parameters for distinguishing whether the location of the electronic device is at the outdoor location or the indoor location.

3. The method of claim 1 or 2, wherein the sensor data includes at least one of a GPS location corresponding to a location of the electronic device, air pressure, an inertial signal corresponding to the electronic device, ambient light, ambient temperature, or a Wi-Fi signal.

4. 2. The method of any one of the preceding claims, further comprising aggregating the sensor data with the stored crowdsourced signals.

5. the percentage indicating the number of times other devices detected a GPS signal when observing the access point relative to the total number of detections of the access point in the stored crowdsourced signals; A high ratio indicates that the access point may be outdoors; A low ratio indicates that the access point may be located deep inside the building.

2. The method of any one of the preceding claims, wherein a medium percentage indicates that the access point is likely to be indoors near side.

6. The RSS value represents a minimum RSS value associated with a GPS signal of a device that detected the access point, the minimum RSS value being a minimum RSS value relative to a total number of detections of the access point with a corresponding RSS value in the stored crowdsourced signals.

2. The method of claim 1, wherein the value of

7. calculating, for each access point identified in the request, a probability that the access point is likely to be located deep inside the room; 4. The method of claim 1, further comprising the step of: transmitting the probability of the access point to the electronic device.

8. The indoor position includes an indoor front position and an indoor rear position, determining a further probability that the location of the electronic device is likely to be a deeper location in the room based on a combination of the probabilities calculated for the identified access points; if the further probability is less than a first threshold, determining that the location of the electronic device is the outdoor location; determining that the location of the electronic device is a near side location of the indoor location if the further probability is between the first threshold and a second threshold that is greater than the first threshold; The method of claim 7 , further comprising: if the further probability is greater than the second threshold, determining that the location of the electronic device is a deeper location within the room.

9. For each access point identified in the request, calculating a probability that the access point is likely outdoors; The method according to any one of claims 1 to 6, further comprising the step of: transmitting said probability of said access point to said electronic device.

10. The indoor position includes an indoor front position and an indoor rear position, determining a further probability that the location of the electronic device is likely to be the outdoor location based on a combination of the probabilities calculated for the identified access points; If the further probability is less than a first threshold, determining that the location of the electronic device is a deep location in the room; determining that the location of the electronic device is a near side location of the indoor location if the further probability is between the first threshold and a second threshold that is greater than the first threshold; 10. The method of claim 9, further comprising: if the further probability is greater than the second threshold, determining that the location of the electronic device is the outdoor location.

11. A method according to any one of claims 7 to 10, wherein the step of transmitting the probability of the access point to the electronic device enables the electronic device to trigger a function depending on a determination as to which of the following positions corresponds to the position of the electronic device: a rear position in the indoor area, a front position in the indoor area, or an outdoor position.

12. 2. The method of any one of the preceding claims, wherein the outdoor location is outside a building or structure.

13. 2. The method of any one of the preceding claims, wherein the indoor near side location is near a perimeter of a building or structure that interferes with the GPS signal and the signal strength of the GPS signal is low.

14. 10. The method of any one of the preceding claims, wherein the deep indoor locations include areas within a building or structure away from a perimeter of the building or structure where interference with the GPS signal makes the GPS signal undetectable.

15. Memory, A processor configured to execute instructions in the memory to perform the method of any one of the preceding claims.

Citation Information

Patent Citations

  • Positioning method and device and intelligent terminal

    CN106980131A

  • Mobile communication terminal

    JP2003087361A

  • Method and device for discriminating position information of mobile terminal

    JP2012103223A

  • Building specification device, communication terminal, building specification method, and program

    JP2018141721A

  • Position detection system

    JP2019132627A