AUTOMATIC DETERMINATION OF THE ENVIRONMENTAL CONDITIONS OF A DEVICE INDOOR OR OUTDOOR AREA

A system using sensor data and machine learning models accurately determines a device's indoor or outdoor location with confidence scores, addressing motion-induced inaccuracies and enabling applications like home automation and regulatory compliance.

DE102023113147B4Active Publication Date: 2025-12-04HEWLETT PACKARD ENTERPRISE DEV LP
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
DE102023113147
Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
Priority Date
2022-06-13
Filing Date
2023-05-17
Publication Date
2025-12-04
Estimated Expiration
2043-05-17

AI Technical Summary

Technical Problem

Existing systems struggle to accurately determine whether a computer device is located indoors or outdoors, especially when in motion, due to the time lag in sensor data processing, leading to unreliable environmental detection.

Method used

A system utilizing a combination of sensor data analysis, including GNSS-RSL, ambient light, temperature, humidity, and radio signal patterns, along with machine learning models, to estimate the environment with confidence scores, enabling real-time recalculations and adjustments based on motion and environmental changes.

Benefits of technology

The system provides precise environmental perception, enhancing data processing accuracy and enabling applications such as home automation, regulatory compliance, and user interface adjustments based on indoor or outdoor conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Computer device (102) for determining whether an environment of the computer device (102) is indoors or outdoors, comprising: a memory (105); and one or more processors (104) configured to execute machine-readable instructions stored in memory (105) to perform a procedure comprising the following: Collecting sensor data from a variety of sensors (132) connected to the computer device (102); Upon reaching a threshold time period in which the computer device (102) is stationary, determine a confidence value that is associated with the sensor data collected by each of the plurality of sensors (132); Determine whether the computer device (102) is located indoors or outdoors, based on the sensor data and the confidence value when the confidence value meets or exceeds a first threshold, wherein the confidence value is associated with the probability that the computer device (102) is located indoors or outdoors; when it is determined that the confidence value associated with the sensor data is below a second threshold, determine that the computer device (102) is entirely indoors or outdoors, regardless of whether the confidence value meets or exceeds the first threshold; and the determination that the computer device (102) is located in an indoor or outdoor area, and the triggering of an action in an external system.
Need to check novelty before this filing date? Find Prior Art

Description

background

[0001] Today's wireless devices are capable of performing many tasks that were previously impossible for devices in existing computing environments. Thanks to technological advancements, both stationary and mobile devices can determine their location using a global navigation satellite system (GNSS) or, for example, directly detect and quantify other phenomena in the local environment to adjust device functions, such as brightening or dimming a screen in response to ambient light conditions. However, there is an increasing need for devices to make decisions based on environmental conditions that cannot be directly measured.An example of this is the question of whether a device is located indoors or outdoors, including situations where a device is physically "inside" a building or structure but, due to an open atrium ceiling, open windows, open hangar doors, and the like, should be considered "outside" for certain purposes. Knowledge of this condition could be used with a high degree of certainty to determine, for example, whether the device is permitted to use certain radio frequency bands for data transmission if a government regulatory agency has imposed restrictions based on whether a device is indoors or outdoors. A car in a garage with the door closed could automatically shut off its gasoline engine to prevent accidental carbon monoxide poisoning, and so on.

[0002] US patent 2019 / 0385452A1 discloses a method for vehicle tracking that includes the determination of vehicle information and can enable the location of the vehicle. In various versions, the method can guide the user through the general vehicle environment by displaying an inaccurate vehicle location and then guide the user to the vehicle using vehicle information.

[0003] WO 2017 / 048415 A1 discloses methods, systems, computer-readable media, and devices for determining the indoor / outdoor state of a mobile device. In some embodiments, a sensor value is retrieved from a sensor accessible to the mobile device. Current information about the local conditions in the vicinity of the mobile device is collected. The sensor value serves as input for an indoor / outdoor detection model, which is selected from several trained models chosen based on the information about the local conditions. Based on the model's output, the mobile device is classified as being indoors or outdoors.

[0004] US Patent 2022 / 0128399 A1 discloses a computer-implemented method for indoor / outdoor detection by an electronic device, which includes receiving light intensity data from an ambient light sensor in the electronic device. Based on the light intensity data, the electronic device determines an indoor / outdoor indicator. Using this indicator, the electronic device detects whether it is located indoors or outdoors.

[0005] US 9,255,983 B2 discloses techniques for determining a user's location. According to various embodiments, an ambient noise signal near a user device is captured using a microphone. Audio sample information can be accessed. This information identifies various audio samples and, for each sample, its source. Subsequently, a specific audio sample corresponding to the ambient noise signal can be identified. Furthermore, the current location of the user device can be determined based on the source of the specific audio sample.

[0006] US 9,759,561 B2 discloses a method for calculating a compass correction for a portable device worn by a user. The method includes determining the device's compass direction from the compass reading, acquiring data from one or more sensors, determining whether the device is indoors or outdoors, and correcting the compass direction based on the determined position.

[0007] CN 11 3 176 587 A discloses a method and system for detecting indoor and outdoor environments, electronic devices, and a computer-readable medium. The method comprises the following steps: assessing the motion state of the electronic device; if the electronic device is moving, determining information about the ambient temperature change during the movement; if the ambient temperature change exceeds a preset temperature difference, initiating GPS positioning and determining information about the change in GPS signal intensity during the movement; and assessing whether the electronic device is located indoors or outdoors based on the information about the change in GPS signal intensity. According to the invention, the information about temperature changes and the information about the change in GPS signal intensity are integrated.The ambient temperature is continuously recorded during movement from outside to inside and vice versa. The change between the indoor and outdoor environments is assessed based on a combination of the temperature change value, the intensity of the GPS satellite search signal, the temperature change value, and the GPS satellite signal.

[0008] US 9,706,364 B2 discloses a method for determining whether a mobile computing device is located indoors or outdoors, taking into account various factors to enable efficient and accurate determination of indoor / outdoor location. Such a status can be useful in conjunction with location services. Features such as boundary frames, activity detection, and similar functions can be used to balance power consumption and accuracy. Brief description of the drawings

[0009] The present disclosure is described in detail in accordance with one or more different embodiments with reference to the following figures. The figures serve only for illustration and represent only typical or exemplary embodiments. Fig. shows a computer device for determining the environmental conditions in the vicinity of a device according to some examples of the disclosure. Fig. shows illustrative GNSS-RSL measurements. Fig. shows a computer device or sensor in the environment according to some examples of disclosure. Fig. shows the data from environmental sensors from two different floors in a building over time, as illustrated in some examples of the disclosure. Fig. shows the data from environmental sensors at a second location over time, in accordance with some examples of disclosure. Fig. displays sensor data at a third location over time, according to some examples of disclosure. Fig. shows the data from environmental sensors over time according to some examples of disclosure. Fig. shows light spectral diagrams of intensity and wavelength that characterize different types of lighting sources, in accordance with some examples of the revelation. Fig. shows a process flow for initializing sensor measurements in accordance with some examples from the disclosure. Fig. shows a process flow for determining a confidence value over time according to some examples of disclosure. Fig. is an example of a computer component that can be used to implement various features of the embodiments described in the present disclosure. Fig. is an example of a computer component that can be used to implement various features of the embodiments described in the present disclosure. Fig. shows a block diagram of an example computer system in which various of the embodiments described here can be implemented.

[0010] The illustrations are not exhaustive and do not limit the present disclosure to the exact form that is disclosed. Detailed description

[0011] Several existing systems attempt to infer the indoor or outdoor environment of a computer device by relying on a combination of device location estimates and / or 2D map data to assess whether the device's location corresponds to a point on the map (e.g., an indoor location within a building or another location in the surrounding environment). These existing systems may, for example, augment GNSS (Global Navigation Satellite System) data with sensor data to determine the computer device's geolocation. Some systems may also compare this estimated geolocation with a 2D map and determine further information about the environment depicted on the map. In this way, existing systems may attempt to determine, using a combination of GNSS, sensor, and map data, whether the computer device is located within a building's footprint.However, such tests cannot reliably determine whether the device is actually located in an indoor or outdoor environment. For example, a car might be parked in a multi-story, above-ground ramp with open walls and a rooftop parking area, or a user might be standing well inside an open balcony door. There are many situations in which such a device would be considered to be outdoors. For instance, US radio regulations in the 6 GHz frequency band explicitly prohibit any form of transmission directly outdoors, including devices that, while located inside a building, are nevertheless directly exposed to outdoor conditions.

[0012] Existing indoor / outdoor detection systems become increasingly inaccurate when the computer is in motion. This can be attributed to the fact that the mobile computer's data processing capabilities require more time for its environmental sensors to determine its indoor / outdoor status than is the case with geolocation, which can be performed in real time with modern devices. For example, using GNSS data, the computer's location at a specific point in time can be estimated with high spatial and temporal accuracy as it moves from one environment to another.However, since sensors important for indoor detection, such as temperature, humidity, light intensity, spectral signature of lighting and / or emitted radio signals, can take several minutes to several hours to arrive at a reliable estimate of the environment, environmental detection on mobile platforms may not achieve the level of statistical reliability available to stationary devices with comparable sensor capabilities.

[0013] Implementations of the application can deterministically estimate whether the location of a stationary or mobile computer device is within a fully enclosed building (e.g., fully or partially indoors / outdoors). Determining the environment at the stationary or mobile location may be required within a specific timeframe (e.g., 4, 12, or 24 hours) to achieve a desired minimum confidence level for a particular use case (e.g., a 95% confidence level for a trained machine learning model), although specific time and accuracy constraints are not required in all implementations. For moving devices, low or moderate confidence may be the best that can be expected, with the potential maximum confidence limit being inversely proportional to the speed of the device.Since the speed itself can be determined using widely available and inexpensive sensors, this adjustment of the confidence levels compared to the fixed case can be calculated using the examples discussed in the disclosure.

[0014] Various environments are supported by the content of the revelation, including fully or partially indoor and outdoor environments. For example, a first set of computer equipment and sensors may be located entirely inside a building at a first location, and a second set of computer equipment and sensors may be located entirely outdoors next to the building at a second location. The locations may be both inside and outside a building that has movable components, such as a roof (e.g., a professional sports stadium that can be opened and closed depending on local weather conditions), sliding doors or walls (e.g., an aircraft hangar or a warehouse with a movable wall to allow easy access for vehicles), or other types of structures. If the structure is completely enclosed (e.g., a building with a roof), the revelation may be located outside the building.The computer devices and sensors can capture typical environmental conditions and sensor data associated with a controlled indoor environment (e.g., the roof, sliding doors, or walls). In contrast, the computer devices and sensors can detect an outdoor environment when the building's environmental conditions have changed (e.g., when the retractable roof or sliding doors are open). In these cases, the computer devices and sensors may remain stationary, but the surrounding environment has changed. In these instances, the computer devices and sensors can detect the altered or current environment.

[0015] As defined herein, “fully housed” can refer to a computer or sensor located within a constructed structure. The structure may have walls on all sides, some type of engineered flooring system, and / or a roof structure that provides protection against most weather conditions. The structure may have doors and windows that open from time to time, the opening width of which is small in relation to the size of the structure. It can be assumed that the doors and windows are generally closed for security, climate control, or other reasons. A widely understood purpose of such structures is to provide the occupants with a controlled environment that is measurably different from the conditions outside.For this reason, a car parked in a multi-story concrete parking garage, where the parking garage is open to the outside, cannot be considered "fully inside the building", even if the computer device or sensor temporarily located in the parking garage may be within the physical footprint of the parking garage as represented on a map or in a building database.

[0016] The fully enclosed structure can be either permanent or temporary. If the structure is temporary, it can be designed to be generally closed to the outside, as described above. As a vivid example, a fully enclosed structure could be a large, air-conditioned tent. The tent could be used in various situations, such as accommodating large groups of people during a sporting event, being set up by a team and taken down afterward. However, a camping tent does not necessarily meet the requirements of a fully enclosed structure, as it may have, for example, weak walls, a permanently open window or door, breathable but not moisture-resistant material, and similar features, making it difficult to accurately determine the difference from outdoor conditions.

[0017] As defined here, “wholly or partially outdoors” can refer to a computer or sensor located outside a constructed and enclosed structure, or to a location that is not “wholly indoors” as defined above. For example, locations within fixed structures that are directly exposed to the outside conditions on one or more sides during normal operating hours are considered “wholly outdoors.” Examples include a car repair shop with roller doors that are normally in the up position during working hours, an aircraft hangar, or a stadium locker room that is normally open to the pitch during a game (with the stadium itself being open).

[0018] In some examples, from an algorithmic perspective, any device whose estimated probability (including the confidence level) of being indoors is below a threshold defined for a particular use case can be considered to be outdoors. In other examples, a device whose estimated probability (including the confidence level) of being outdoors is above a defined threshold can be considered to be outdoors, regardless of its indoor probability.

[0019] Despite these illustrative examples, computer equipment and sensors can also be "partially indoors or outdoors" in various environments. For instance, the computer equipment might be partially indoors if the roof or large sliding door is half open. The system (located, for example, some distance from the environment containing the computer or sensor) can receive sensor data from the computer or sensors in the environment and estimate or deduce the probabilities that the computer or sensors are entirely indoors, entirely outdoors, or partially indoors or outdoors.

[0020] The disclosed system can identify these and other environments of the computer device using sensor data analysis, as described throughout the disclosure, based on simple if / then / else threshold comparisons, pattern or signature recognition based on curve fitting or other techniques, linear programming, or a trained machine learning (ML) model. Each of these approaches can determine a confidence score corresponding to the computer device's environment and specify whether the location and confidence score should be recalculated in real time if the device moves or the environment changes (e.g., the roof shifts, the walls change, etc.). Data can be generated from various sensor types, including but not limited to radio signal receivers, timers and clocks, pressure, airborne particles and trace gases, radiological, inertial, and vibration sensors (e.g.,These sensors are piezoelectric, optical, acoustic, electrical, or magnetic, embedded in or communicating with the computer device or its environment. In some examples, multiple devices can provide sensor data to a remote device or system to determine the environment of each of them. The estimated environment and confidence score can then be passed to other systems to, for example, activate home automation devices or automatically adjust neighboring devices based on the determined environment.

[0021] Disclosure leads to technical improvements. For example, the disclosed system can more accurately perceive the environment of the computer device and sensors, enabling more precise data processing. Furthermore, the use of this more accurate data and environmental information can be implemented in external systems to enhance home automation tasks, adjust image parameters in a security system, modify radio emissions to comply with applicable rules based on open or closed environments, report patterns of environmental changes over time, or perform other automated processes that rely on determining environmental characteristics.

[0022] Fig. Figure 102 shows a computer device for determining the environmental state of a device, as shown in some examples of the disclosure. The computer device 102 includes a processor 104, memory 105, and machine-readable medium 106. The computer device 102 can communicate via a network 140 with one or more locations 130, which comprise a set of computer devices and sensors 132. In some examples, the network 140 is an internal network (e.g., LAN or WAN), the public internet, or a public cloud computing environment.

[0023] The processor 104 can be one or more central processing units (CPUs), semiconductor-based microprocessors, containers, virtual machines, and / or other hardware devices capable of retrieving and executing instructions stored on computer-readable media 106. The processor 104 can retrieve, decode, and execute instructions to control processes or operations for creating and implementing the described analysis algorithms and / or trained machine learning models. Alternatively or additionally to retrieving and executing instructions, the processor 104 can include one or more electronic circuits containing electronic components for performing the functionality of one or more instructions, such as a graphics processing unit (GPU), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), or other electronic circuits.

[0024] The memory 105 can include random access memory (RAM), non-volatile RAM (NVRAM), a cache, and / or other dynamic memory devices for storing information and instructions to be executed by the processor 104. The memory 105 can also be used to store temporary variables or other intermediate information during the execution of instructions to be carried out by the processor 104. Such instructions, stored on computer-readable media 106 accessible to the processor 104, make the computer device 102 a specialized machine adapted to perform the operations specified in the instructions.

[0025] Memory 105 can include read-only memory (ROM) or other static storage devices for storing static information and instructions for the processor 104. Memory 105 can include a magnetic disk, an optical disk, a solid-state drive (SSD), non-volatile memory express (NVMe), or a USB flash drive, etc., for storing information and instructions. In some examples, the information and instructions can be stored in a variety of data stores, including the sensor rule data store 118 and the time-series data store 120.

[0026] The computer-readable media 106 can be any electronic, magnetic, optical, or other physical storage device that contains or stores executable instructions. For example, the computer-readable media 106 can be an electrically erasable programmable solid-state memory (EEPROM), a storage device, an optical disk, or the like. In some embodiments, the computer-readable media 106 can be a non-transitory storage medium, the term "non-transitory" excluding the transitive transmission signals. As detailed below, the computer-readable media 106 can be encoded with executable instructions implemented by a variety of modules, circuits, and engines, including the sensor monitoring module 108, the sensor event handler module 110, the reliability score engine 112, the machine learning (ML) engine 114, and the interaction engine 116.

[0027] The sensor monitoring module 108 is configured to receive sensor data from one or more computer devices and sensors 132 from different locations 130. The sensor data, along with the corresponding timestamp and device identifier that generated the sensor data, can be stored in the time-series data memory 120 of the computer device 102.

[0028] Various sensor data can be received and used to create one or more sensor rules, which are stored in sensor rule data memory 118. For example, a rule might state that if a measurement of the GNSS received signal level (RSL) is equal to or within a certain range of the expected power spectral density at sea level (approximately -130 dBm / MHz), the confidence level corresponding to "completely outdoors" is set above a defined threshold. In another example, if the GNSS RSL is significantly below the expected value for sea level, the outdoor probability is not increased, and additional data sources can be evaluated for further disambiguation.

[0029] Fig. This shows illustrative 24-hour GNSS-RSL measurements for two receivers, one located outdoors and the other entirely indoors. In this example, receiver 210, located outdoors, corresponds to approximately -130 dBm / MHz, and receiver 220, located indoors, corresponds to approximately -160 dBm / MHz. The measurable 30 dB drop in signal power is due to attenuation by the building walls and roof.

[0030] In some examples, GNSS RSL measurements can be performed over time in correlation with the orbits of individual satellites. From the patterns of appearance and absence across the arc of the orbit, it can be deduced whether a missing, attenuated, or reflected signal is temporary or permanent and may represent a temporary or local obstruction, or a large ceiling or wall in the vicinity of the sensor. Because GNSS signals are right-circularly polarized (RHCP), polarized antennas can be used to determine whether the received signals are on the line of sight (LOS) or reflected. These RSL measurements can be used regardless of whether the receiver is able to determine its location.

[0031] In some examples, the brightness and / or color temperature and / or spectral signature of the ambient light detected by the computer or sensor can correlate with the device's environment, as in Fig. This is illustrated and described here. For example, if the detected light has a state that deviates from expectations (e.g., dark when it is daytime; bright when it is nighttime), then the sensor rule can increase the confidence level that the device is indoors. Similarly, frequent large changes in illumination or sunlight intensity during the daytime hours, corresponding to human activity during the day, can be associated with a rule that increases the confidence level associated with the probability that the device is indoors.

[0032] In some examples, temperature patterns can be observed over time. For instance, the temperature patterns may fall within narrow ranges consistent with climate control for the comfort of living beings in an enclosed space (e.g., indicating an entirely indoor environment). Conversely, temperature patterns that vary in a cyclical pattern over a large amplitude within a daily cycle may be consistent with an outdoor environment. If this cyclical pattern matches telemetry data from an independent temperature monitoring station near the device location (determined by GNSS or other means), the confidence level for an outdoor condition can be further increased.

[0033] In some examples, the humidity patterns monitored by the computer or Sensor 132 can be used instead of, or in conjunction with, temperature. Humidity cycles consistent with air-conditioned environments can be categorized into bands, just like temperature, whereas in outdoor environments they may fluctuate cyclically over 24-hour intervals. Humidity typically moves inversely to outdoor temperature and has opposite minima and maxima, so a combined rule is possible, which can increase confidence even further than either measurement alone.

[0034] In some examples, the presence and fluctuation of oxygen and carbon dioxide levels (or other atmospheric gases) can correspond to an enclosed or open space. For instance, the complete absence of airborne particles larger than a certain diameter (e.g., in microns) in an environment might correspond to a rule for increasing confidence in an indoor environment assessment associated with the presence of an HVAC system. In other examples, the presence of airborne particles above an environment might correspond to a rule for increasing confidence in an outdoor environment assessment associated with the absence of an HVAC system. Such digital particle size counters can be derived from sensors installed in commercial properties to collect this data.

[0035] In some examples, the barometric pressure data may correspond to an atmospheric pressure that differs significantly from the values ​​expected under outdoor conditions at a given location. The barometric pressure data can be combined with other data sources to increase confidence. For example, repeated measurable pressure changes may be due to mechanical systems (e.g., HVAC) that, over time, indicate that the computer device or sensor 132 is located in a climate-controlled area. Alternatively, the pressure data can be combined with other sensor data (e.g.,geolocation and a terrain model) indicate that the computer device or sensor 132 is located in a basement at a height below the local ground level or at a height much higher than the ground level, which may indicate that the computer device or sensor is located on an upper floor of a building.

[0036] In some examples, the detection of wireless radio signals can be used as sensor data. For instance, a routine channel scan according to the IEEE 802 local area network technical standards (e.g., Wi-Fi) might only indicate the presence of certain types of computer equipment. Based on information signaled in Wi-Fi beacons, the sensor rule can increase the confidence score of the computer equipment as likely being in an indoor or outdoor environment, depending on the type of device detected. For example, the rules for the 6 GHz frequency band require computer equipment to detect wirelessly whether it is in a state corresponding to a "Low Power Indoor" flag. Another example: If the expected received signal reference power (RSRP) of a macro cellular network for a given location is known and consistent with the values ​​measured by the device, this can confirm the determination of an outdoor location.Various other radio signals can enhance confidence in a completely outdoor environment, including a near field communication protocol or Bluetooth. ®, where the observation of a constantly changing sequence of devices may indicate an open public space. In some examples, the absence of devices and / or the relatively static appearance of a small group of devices may indicate an environment that is entirely indoors, and a rule may identify it as such. Other public RF transmissions, including the RSL of AM / FM radio stations, the RSL of television stations, the RSL of low Earth orbit satellite internet services, or other generally identifiable radio devices, may also be determined. The presence, absence, or degradation of such signal data may help to confirm the reliability of computer equipment known to be either indoors or outdoors.

[0037] In some examples, accelerometer data can be used to complement and improve confidence estimates based on other sensor types. For example, if a velocity reading is above a threshold (e.g., if it matches a vehicle or motorized vehicle), the confidence level indicating that the computer device or sensor 132 is completely outdoors can be increased. Alternatively, accelerometer data can detect vibration patterns or signatures over time that correspond to a pattern of movement. In some examples, accelerometer data corresponding to movement can trigger a re-evaluation and recalculation of the indoor or outdoor status and confidence levels. In some applications and use cases, a computer device located inside an otherwise enclosed and climate-controlled vehicle (e.g., a car) may be able to determine the indoor or outdoor status and confidence levels.(e.g., in a car or a train) are subject to certain legal restrictions that exclude some or all modes of operation. For example, the operation of certain electronic devices at altitudes below 10,000 feet or in the 6 GHz frequency band is prohibited in vehicles of any kind. In such a use case, accelerometer data could be used to decode an otherwise unambiguous environmental signal for interior conditions and avoid a false result.

[0038] In some examples, distance data can be obtained from optical (e.g., laser), acoustic, ultrasonic, or other integrated rangefinders capable of measuring distances from a computer device in various directions. The distance can be measured in the cardinal directions, around the entire azimuth, and / or vertically to measure the distance between a wall and the floor. For example, if a horizontal and vertical path is unobstructed on all sides, the confidence level can increase to indicate that the computer device or sensor 132 is located entirely outdoors. In another example, if a horizontal path is obstructed on one or more sides (e.g., within 20 meters or less), the confidence level can increase to indicate that the computer device or sensor 132 is located entirely indoors.In another example, if a vertical sensor is obstructed in the upward and / or downward direction, the confidence level may increase to the extent that the computer device or sensor 132 is located entirely indoors. In another example, if more than two sides are obstructed and one or two sides are not obstructed, the confidence level may increase to the extent that the computer device or sensor 132 is located entirely outdoors (e.g., location 130 may be an aircraft hangar, an auto repair shop, a skybox in a stadium, etc.).

[0039] In some examples, the compass data can be determined. For instance, the detection of the magnetic deviation characteristic of the indoor environment can be compared with a base value of the known local magnetic declination.

[0040] In some examples, audio or acoustic data (used interchangeably) can be determined (e.g., from a combined loudspeaker-microphone computer). The audio data can, for example, identify a frequency response to an impulse signal that corresponds to a room shape or size.

[0041] In some cases, radiological data can be determined. For example, the detection and determination of alpha, beta, gamma-ray, or neutron signatures can be compared with known background values ​​indoors or outdoors. The discrepancy between the two signatures can increase or decrease the confidence level for the indoor or outdoor environment.

[0042] In some examples, third-party data from data storage 142 can be received by the computer device 102 (via the network 140) and stored in the time-series data storage 120. For example, online information sources can store real-time data (e.g., weather data, solar radiation, or irradiance, etc.). The third-party data can be compared with the local sensor readings. This comparison can help shorten the minimum observation period for the sensor data by adding patterns and additional data over time.

[0043] Further images of the sensor data from Fig. are in the Fig. to see.

[0044] All of these and other data discussed in the disclosure can be received and processed by the Sensor Monitoring Module 108. For example, the Sensor Monitoring Module 108 can receive a minimum amount of sensor data for a minimum sampling time. Certain sensor types, for instance, are capable of making an initial determination, within very short time periods (e.g., a few minutes or even a few seconds), as to whether a computer or Sensor 132 is outdoors or not. Another example: If a GNSS-equipped device cannot receive signals for a few minutes, then the computer device may not be "outdoors." In general, a minimum threshold of sensor data can be collected to detect patterns over time (e.g., daily, weekly, monthly, etc.). In these examples, the initial confidence level can improve by a predictable amount upon repetition over time.

[0045] The sensor event handler module 110 is configured to receive an event from a computer device or sensor 132 and determine one or more actions to be performed in response to the received event. The action might, for example, involve re-evaluating the predicted environment of the computer device or sensor 132 (e.g., based on motion, time delay between two sensor measurements, an automatic trigger for re-executing the machine learning model, etc.). The criteria used to determine the indoor or outdoor status of the computer device or sensor 132 may differ from and / or be independent of those used to determine that such a state might have changed and warrants re-evaluation.

[0046] In addition to updated motion data, gyroscope data, or GNSS location data, other sensor event data types can also be used to trigger a reassessment of the predicted environment of computer device or sensor 132. For example, a power outage or change in the power supply to computer device or sensor 132 can trigger the recalculation. Another example: If GNSS RSL, solar irradiance, or compass data are all unavailable, computer device or sensor 132 can be determined with a high degree of confidence to be entirely indoors. In some cases, patterns in the data can also trigger a recalculation of the predicted environment of computer device or sensor 132.

[0047] The Reliability Score Engine 112 is configured to receive or determine a reliability score associated with a computer device or sensor 132. Determining a score allows tracking of sensor data received over time. If the time span exceeds a threshold, the identified sensor may meet an initial reliability score. Over time, the sensor's reliability score can increase as the sensor provides additional data.

[0048] In some examples, the Reliability Value Machine 112 can analyze the sensor signals. For instance, uniform sensor signals may have a constant amplitude (e.g., plus or minus a value of approximately 1-2% within the local geographic region). The values ​​can be measured at one location, such as an airport weather station, to allow extrapolation to other areas (e.g., within 100 km). 2using GNSS signals, local temperature, local humidity, local solar radiation, barometric pressure, etc.).

[0049] In some examples of the disclosure, a machine learning (ML) model can be trained and implemented, although this is not required in every embodiment. When an ML model is used, the machine learning (ML) machine is configured to analyze sensor data to determine patterns indicative of environmental conditions without training a machine learning model. The use of a trained ML model is not required in every embodiment described herein.

[0050] The Machine Learning (ML) 114 is also configured to train an ML model. For example, it can receive sensor data to detect a specific environment, such as one that is entirely indoors, entirely outdoors, or partly indoors and outdoors. These sensor data and environment pairs can be provided to the ML model during the training process to aid in the detection of similar environmental data in the future.

[0051] The machine learning (ML) 114 can determine the confidence and the value(s) associated with the output of the ML model (e.g., the probability that the computer equipment and sensors 132 are located wholly or partially indoors or outdoors). For example, the confidence value can indicate a 90% probability that the computer equipment or sensor 132A at the first location 130A and the provided sensor data are located in an environment that is partially outdoors (e.g., the stadium's retractable roof is open).

[0052] In some examples, the confidence score, which corresponds to the probability that computer device or sensor 132 is located in an indoor or outdoor environment, can be increased or decreased based on a reliability score of the data source that generates the sensor data (e.g., according to the origin of the sensor data at sensor or computer device 132). The confidence score associated with the environment determination can be adjusted to rely more or less on this specific data source. In some examples, the weighting and / or the reliability score can be determined through an iterative training process for the machine learning model (e.g., by identifying the deterministic relationship between the specific sensor and the determined environment).

[0053] The ML engine 114 can be configured to run a supervised ML model with a linear or non-linear function. For example, the trained ML model might include a decision tree that accepts one or more input features associated with the sensor data to provide a confidence score that correlates the input with an output (e.g., that the computer device or sensor 132 is located in a specific environment).

[0054] In some examples, the ML model may include a neural network that measures the relationship between the dependent variable (e.g., the logic or action implemented by the device) and the independent variables (e.g., the sensor data) by using multiple layers of processing elements that detect nonlinear relationships and interactions between the independent variables and the dependent variable.

[0055] In some examples, the ML model may include a Deep Learning Neural Network, which consists of more than one layer of processing elements between the input layer and the subsequent output, or a Convolutional Neural Network, in which successive layers of processing elements contain certain hierarchical patterns of connections with the previous layer.

[0056] The ML engine 114 can determine an output from the ML model, where the output estimates the probability that the computer device or sensor 132 is located indoors or outdoors. For example, the confidence value can be compared to one or more thresholds indicating that the device is entirely indoors (e.g., more than 90%), without relying on the reliability of the data-generating device or sensor. If the determined confidence value exceeds the first confidence threshold, it can be determined that the computer device is entirely indoors. If the confidence value is within a reduced threshold range (e.g., between 10% and 90%), the computer device can be classified as being partially indoors or outdoors (and each associated reliability value for an individual sensor may be more important to the algorithm or the ML model).If the confidence level is below a second threshold (e.g., below 10%), the computer device can be classified as being entirely outdoors. In other examples, any computer device with an estimated confidence level greater than the confidence threshold can be considered outdoors, regardless of the indoor probability. These values ​​and ranges are for illustrative purposes only and are not intended to limit disclosure.

[0057] In some examples, the confidence threshold or value range can be adjusted based on the external system. For instance, different applications and use cases might differentiate between indoor and outdoor areas, with wider or narrower defined ranges, or the confidence values ​​might need to be higher or lower. The ML Engine 114 can adjust these values ​​by creating application-specific profiles that evaluate the inputs when determining and reporting the indoor or outdoor status.

[0058] In some examples, the calculated confidence score can be increased by combining a number of computer devices or sensors 132 to provide many sensor data sources over a larger area. This can improve the probability of detection with more sensors, computer devices, and / or external databases. For example, a computer with two or more sensors (e.g., GNSS, gyroscope, and microphone) may have greater indoor / outdoor confidence than a device with only one sensor (e.g., GNSS). Likewise, a computer device with coarse geolocation detection and internet access may further improve its confidence and reliability estimates by comparing data from one or more sensors with access to even more data signatures via third-party data repositories (142).

[0059] The ML-Engine 114 can transmit output, environmental states, and confidence values ​​to external systems, including operating system software, user applications, and other electronic programs. In some examples, transmission can occur via a Software Development Kit (SDK) Application Programming Interface (API) call, a data register, network broadcast or multicast, or other technical means.

[0060] The interaction machine 116 is configured to trigger an action in an external system at one or more locations 130. The action can be selected, for example, based on the determination of whether the computer equipment is located indoors or outdoors (e.g., partially or completely), and in some examples, based on the corresponding confidence score determined by the trained ML model.

[0061] Various actions in external systems are also described. For example, the action in the external system can activate lighting, water features, or other automated processes that correspond to a home automation system at a first location 130A. The sensor data characteristics can detect when the computer device 132 moves with the user from inside a house to the outside, with the computer device 102 recognizing that the user has moved from a fully indoor environment to a fully outdoor environment. The action can then correspond to the activation of lighting in the outdoor environment, which is connected to the computer device 102, in accordance with this movement.

[0062] In another example, the action in the external system can automatically adjust the image parameters associated with a security camera (e.g., turning on a spotlight in a dimly lit environment, etc.). In another example, the action in the external system can change radio emission settings, open or close doors and windows, or turn particle filters in ventilation systems on or off. In yet another example, patterns detected by the external system, whether fully or partially indoors or outdoors, can be tracked and used to generate a report on environmental patterns for historical reporting and analysis. The report can be delivered to one or more computer devices in the external system or to an administrative user.In each of these actions, the computer equipment performing the actions may be separate from the computer equipment and sensors 132A at the first location 130A that provided the original sensor data.

[0063] Another example: In the context of regulatory compliance, certain legal provisions or market requirements may restrict the operation of certain types of computer equipment. This may include prohibiting the operation of computer equipment 132 in certain modes or requiring adherence to specific regulations or rules, depending on whether the computer equipment 132 is located in an indoor or outdoor environment. For example, different and specific limits for radio emissions apply to the 6 GHz band and other frequency bands, depending on whether the equipment is located indoors or outdoors.

[0064] In another example, the external system may be related to a user's personal health. The computer device or sensor 132, from which the sensor data originates, may provide the sensor data to a smartphone application that attempts to track environmental characteristics over time. This may include exposure to untreated ambient air or the measurement of particle exposure. The sensor data cannot be obtained simply by knowing the physical location (e.g., latitude, longitude, and altitude) but may rely on additional characteristics of the indoor or outdoor environment, as described in the disclosure.

[0065] In another example, the external system might encompass the operation of enterprise devices. For devices that can be used both indoors and outdoors, the interfaces and other user experiences can be adapted to the respective environment. For instance, a high-definition (HD) security camera could automatically adjust its image parameters to the outdoor environment. In another example, an audio microphone or sensor could automatically select a specific acoustic configuration based on its assessment of the environment's characteristics.

[0066] In some examples, computer device 102 can communicate with several other computer devices connected to a common computer system, either directly or via application programming interface (API) 117. API 117 can, for example, help publish the estimated environment and trust level to other systems by providing a set of functions and procedures that enable the creation of applications that access the functions or data of computer device 102. API 117 can be used, for example, to activate home automation devices or to automatically synchronize neighboring devices based on the determined environment. These and other examples, discussed throughout the application, can be isolated from a public data network and from all publicly accessible databases.In other words, the computer environment depicted is not limited to a single device that independently performs an indoor / outdoor determination, but can be implemented as multiple devices, each with its own sensors, which exchange this sensor data with each other or with a central computer system that determines the environment of one or more locations of the other computer devices.

[0067] A vivid example is in Fig. The diagram shows that the computer device 102 can communicate with one or more computer devices or sensors 132 at different locations 120 via a network 140. The network 140 can include a connection via a local area network to a host computer or to data devices operated by an Internet service provider (ISP) and / or the internal networks of a cloud computing provider. The ISP, in turn, provides data communication services over the global packet data communication network (e.g., the "Internet") to transmit data packets between the computer device 102 and the computer devices or sensors 132. The network 140 can use electrical, electromagnetic, or optical signals to transmit the digital data streams.

[0068] Multiple locations 130 can include indoor or outdoor areas. For example, the computer equipment and sensors 132A can be placed entirely indoors within a building that is statically located at the first location 130A, and the computer equipment and sensors 132B can be placed entirely outdoors within the building that is statically located at the second location 130B.

[0069] Various environments are supported by the content of the revelation. For example, a first location 130A may be inside a building with a retractable roof, including a professional sports stadium. The computer equipment and sensors 132A may technically be located inside the professional sports stadium (e.g., physically within the building's footprint), but they are exposed to environmental conditions when the retractable roof is open that differ from the environmental conditions when the retractable roof is closed. The computer equipment and sensors 132A may remain fixed within the first location 130A, but they may detect that they are partially outdoors or partially indoors when the retractable roof is open, and they may detect that they are entirely indoors when the retractable roof is closed.In comparison, the computer equipment and sensors at the second location, 130B, can remain outside the professional sports stadium and will not detect any change in their environment while the movable roof is open or closed.

[0070] The computer devices and sensors 132 may include radio receivers, timers and clocks, pressure, air particle and trace gas sensors, radiological, inertial, vibration (e.g., piezoelectric), optical, acoustic, electrical, or magnetic sensors. The computer devices and sensors 132 may be embedded in a computer device or in the environment; they may be fixed or mobile, battery-powered or dependent on external power sources. Each of these computer devices and sensors 132 may contribute to determining the internal / external state of the device and the associated confidence level, either alone or in combination with others embedded in a computer device or in one or more other computer devices whose internal / external state may be known or unknown.

[0071] Computer devices and sensors 132 can generate various types of sensor data (e.g., depending on the type of sensor). This sensor data can be used individually or in combination with other local or remote sensors or indicators to detect environmental conditions, correlations, or concurrent or sequential patterns in reported or observed values. For example, sensor data might include the absence of expected data (e.g., a negative signal), the observation of data exceeding one or more graded thresholds, the observation of data changes over time or of aggregated state patterns over recurring intervals (e.g., hour, day, month, year), or the observation of data changes indicating that the device has moved from a location where its indoor / outdoor status was previously established.

[0072] The sensor data can be converted into one or more probabilities using computer device 102, which are expressed as a value with an associated confidence level. If a machine learning (ML) model is implemented in an embodiment of the disclosure, the ML model can assign weights to each type of sensor data input that is correlated and / or convolutional in some way. In some examples, the environmental determinations can be an estimate that the sensor or computer device 132 is located in a partially indoor / outdoor environment. Based on the determined confidence level and the predicted environment, various actions can be triggered.

[0073] Fig. shows a possible embodiment of the in Fig. The conceptual machine described is in accordance with some examples of the disclosure. Various sensors are shown for illustration purposes, but are not intended to limit certain embodiments of the disclosure. The computer device 300 can be used in accordance with the one described in Fig. The computer device 102 shown may be similar if the machine learning and processing are performed remotely from the sensors, or as described in Fig. depicted computer device or sensors 132, if the machine learning and / or processing is performed in the device that also collects the sensor data. In some examples, the computer device that analyzes and determines the environment of the in Fig. The computer devices and sensors shown in 132 perform the form of the in Fig. computer device 102 or computer device 300 shown in Fig. assume.

[0074] In Fig. The computer device 300 comprises the sensor monitor and event handler in block 1, a probability estimation engine in block 2, a sensor rule database in block 3, a time series database in block 4, a network interface in block 5A, a public data network in block 5B, a GNSS receiver in block 6A, a public GNSS ephemeris database in block 6B, a temperature sensor in block 7A, a relative humidity sensor in block 7B, a barometric pressure sensor in block 7C, a public weather database in block 7D, a solar irradiance sensor in block 8A, a public solar irradiance database in block 8B, a sensor radio complex for inline monitoring in block 9A, a public radio signal signature database in block 9B, a primary device radio complex in blocks 9C / 9D, other public datasets in block 10, and the operating system on the device in block 11., which may contain machine-readable instructions for retrieving and publishing the indoor / outdoor state for applications), and other applications in Block 12 (which, for example, may retrieve the indoor / outdoor state directly or via the operating system).

[0075] The computer setup 300 in Fig. can be used with computer setup 102 in Fig. They correlate in various ways. For example, the sensor monitoring module 108 and the sensor event handling module 110 can be in Fig. as a sensor monitoring and event handling module in Block 1 in Fig. to be implemented. The reliability value module 112, the machine learning (ML) module 114 and the interaction module 116 in Fig. can in Block 2 in Fig. be implemented as a probability estimation module. The sensor rule data store 118 in Fig. can be used as a sensor rule database in block 3 in Fig. be implemented. The time series data storage 120 in Fig. can be used as a time series database in block 4 in Fig. be implemented. The network 140 in Fig. can be used as a public data network in Block 5B in Fig. be implemented. Computer devices or sensors 132 in Fig. can be used as one or more GNSS receivers in block 6A, as a temperature sensor in block 7A, as a relative humidity sensor in block 7B, as an air pressure sensor in block 7C, as a solar radiation sensor in block 8A, and as a radio measurement complex for inline monitoring in block 9A. Fig. be implemented. The third-party storage 142 in Fig. can be one or more public GNSS ephemeris databases in Block 6B, public weather databases in Block 7D, public solar irradiance databases in Block 8B, public radio signal signature databases in Block 9B, and other public datasets in Block 10. Fig. be implemented. Processor 104, memory 105 and machine-readable media 106 in Fig. can be listed as the operating system on the device in block 11 and as other application(s) in block 12. Fig. be implemented.

[0076] The computer device 300 in Fig. or the computer device 102 in Fig. It can receive various sensor data. Different sensor data are used for illustration in the... Fig. shown and previously with Fig. This was discussed. The illustrative examples can help demonstrate the impact of indoor and door environment measurements on sensor data over time. The data (e.g., with highly reliable estimates of the indoor versus outdoor state) can exhibit predictable and easily identifiable variations over different time periods (e.g., between 12 and at most 24 hours, or a daily cycle). These variations can be transformed into recognizable data signatures. In some examples, 4 to 6 hours may be more than sufficient for an algorithm to make an unambiguous prediction of the indoor or outdoor state, especially when multiple such sensor feeds are available. For example, some signals may achieve 95% reliability halfway through a daily cycle, and continued observation beyond 24 hours can further improve reliability.

[0077] Sensor signals can undergo various changes when observed locally indoors compared to their outdoor signals, e.g., loss of amplitude hop, amplitude banding, and time domain banding.

[0078] One type of environmental influence is the loss of amplitude continuity. For certain signal types, such as RF transmissions or sunlight, a building or other structure can significantly reduce or completely block the signal. This discontinuity can generally be negative, meaning the signal amplitude indoors may be lower than the measured signal amplitude outdoors.

[0079] For example, the frequency-dependent RF entry loss into a building can correspond to a range of building types and manifest as a sudden drop measured on the inside of the building wall. In some examples, other signals (e.g., acoustic signals or heat) may originate locally and propagate more rapidly in an unenclosed environment (e.g., partially indoors with open ceilings or walls, or partially outdoors with thin tent walls). This effect on the inside of the building wall may be typical for signals originating in a larger environment or from other local external sources. Other signals (e.g., acoustic signals or heat) may originate locally and decay more rapidly in an unenclosed environment. This attenuation effect may be less pronounced at lower frequencies than at higher frequencies.A GNSS, AM, FM, or television signal can suffer loss across a discontinuity, as in . Fig. As illustrated, in the visible light spectrum, sunlight can be completely blocked by opaque materials. With glass windows, the overall intensity can be reduced, and this reduction can be amplified at certain wavelengths due to the design (e.g., to block ultraviolet light).

[0080] Another type of environmental effect is amplitude scattering, as seen in the colored horizontal boxes in Fig. This is illustrated by the fact that fully enclosed buildings can provide controlled environments for the comfort and productivity of their inhabitants. Therefore, certain signals that may exhibit large amplitude variations outdoors may be confined to a relatively narrow band when measured indoors. Temperature and relative humidity are some examples of this.

[0081] Amplitude band signals can differ from discontinuity loss signals in several respects. For example, the signal may be amplified rather than attenuated indoors, as in an HVAC system raising the temperature on a cold day. Secondly, the amplitude jitter may be confined to a narrow band, depending on the function of the area. Some examples include: indoor temperature for humans (e.g., 65–72°C and relative humidity between 30–60%), cold storage (e.g., 1.7–12.8°C (35–55°F)) and relative humidity (e.g., between 60–95% depending on the item), and deep-freeze storage (e.g., -10–0°C (14–32°F) with high relative humidity between 90–95%). In contrast to external signals, whose value generally “floats” or is not restricted by these value ranges, the “banded” values ​​may mean that the measurement lies within a certain expected sub-range.The exact range may vary for each building, but its minimum, maximum and / or median can be determined algorithmically (e.g., over a period of several days of observation).

[0082] Another type of environmental effect is temporal dispersion, which is also represented by the vertical gray boxes in Fig. This is represented. For example, commercial and residential buildings may have predictable occupancy schedules, which in turn can lead to easily recognizable signatures in the way sensor signals change over culturally defined intervals (e.g., over a 24-hour cycle or a 5-day work week). Residential buildings may be occupied from late afternoon until early morning, while commercial buildings may have loosely or firmly defined work shifts. These repeating patterns can form bands in the time domain.

[0083] In some examples, there may also be weekly and seasonal ranges for certain signals. For instance, commercial properties are often empty on days considered "weekends" in a given country, while conversely, residential properties are heavily occupied on such days. On an annual basis, some signal patterns vary with the seasons, such as solar irradiance, which differs considerably in amplitude, onset time, peak time, and duration in each hemisphere between winter and summer. These two longer-term measurements can further enhance the reliability of indoor and outdoor estimates.

[0084] The Fig. Examples of sensor data from a commercial office site over time are shown, in accordance with some examples from the disclosure. Various sensor data are shown, including absolute temperature data (410) and relative humidity data (420). Fig. and barometric pressure 610, outdoor humidity and temperature 620, and solar radiation and illuminance 630 in Fig. .

[0085] These diagrams depict different sensor locations. For example, an indoor sensor, generating the first sensor data 430 (represented as temperature sensor data 430A and relative humidity data 430B), is located in the southeast corner inside the building. The second sensor location, generating the second sensor data 440 (represented as temperature sensor data 440A and relative humidity data 440B), is located outside the same building.

[0086] In these depictions of Fig. The sensor data acquired by a computer device or a sensor located outdoors (e.g., a second sensor location generating second sensor data 440) can be characterized by patterns that repeat on a daily, monthly, and yearly basis. The amplitude of these changes (e.g., temperature changes of 40° or relative humidity of 50%), as well as their rate of change and the time at which the peaks and troughs occur, can be used to create rules or program pattern-matching algorithms. In other words, it is expected that the machine learning model rules associated with an outdoor location will be characterized by similar patterns that repeat over time. The rules can be stored in the sensor rule data memory 118.

[0087] In some examples, the sensor data acquired by a computer or an indoor sensor (e.g., first and second sensor positions generating first sensor data 430 and second sensor data 440, respectively) may also exhibit patterns. For instance, the sensor data may show relatively stable values ​​with respect to both relative amplitude and time of day, reflecting both amplitude and temporal variation. The absolute magnitude of the mean feature may also conform to a recognizable pattern. Certain temporal patterns may be characteristic of indoor environments, such as predictable warm-cold cycles on weekdays that are absent or less pronounced on weekends.

[0088] Fig. This figure shows data from environmental sensors over an extended period, consistent with some examples from the disclosure. Cyclical signals are collected and recorded in this figure. The first Fig. shows the cyclical patterns when comparing indoor and outdoor temperatures, and the second Fig. Figure 510 shows an enlarged view of the same data, revealing clear cyclical patterns when comparing indoor temperatures at different indoor locations 530 and 540. The outdoor location 550 shows the actual local temperature, measured by the local weather station and collected via a public internet database (e.g., a third-party data repository 142).

[0089] In some examples, this type of sensor signal varies cyclically within a period of time (e.g., 24 hours). Each cycle can differ from the previous one in amplitude and overall shape, although the pattern may be similar over a certain period. The cyclical signals can vary at any value, including negative values, depending on the measurement system and units used.

[0090] In both Fig. The occupancy status of the different floors affects the data. For example, the first floor (530) might be occupied and have an HVAC system that sets the temperature to 22.8°C (73°F). The faster cycles in the data row could be related to the HVAC system cooling the floor back down to this value if the temperature exceeds the setpoint by more than about 1 degree. The second view (540) shows an unoccupied floor in the same building with a relaxed target temperature of about 21.8°C (71°F). The HVAC system behaves differently on this floor to conserve energy, as it is unoccupied and therefore not actively heated or cooled.

[0091] The second Fig. With an enlarged Y-axis, a clear cyclical pattern is shown (e.g., approximately 6 cycles per day of about 4 hours each), which is not apparent from the larger view in Figure 510. Each sensor in the first elevation (530) and the second elevation (540) can correspond to a variance of 3% on either side of the mean, which may represent narrow, flowing signatures. The third environment (550), captured by a completely external sensor, may represent a broad, flowing signature where there is a large variation in the environment.

[0092] Another type of environmental effect is amplitude scattering, as seen in the colored horizontal boxes in Fig. This is illustrated by the fact that fully enclosed buildings can provide controlled environments for the comfort and productivity of their inhabitants. Therefore, certain signals that may exhibit large amplitude variations outdoors may be confined to a relatively narrow band when measured indoors. Temperature and relative humidity are some examples of this.

[0093] Amplitude band signals can differ from discontinuity loss signals in several respects. For example, the signal may be amplified rather than attenuated indoors, as in an HVAC system raising the temperature on a cold day. Secondly, the amplitude jitter may be confined to a narrow band, depending on the function of the area. Some examples include: indoor temperature for humans (e.g., 18.3–22.2°C (65–72°F) and relative humidity between 30–60%), cold storage (e.g., 1.7–12.8°C (35–55°F)) and relative humidity (e.g., between 60–95% depending on the item), and deep-freeze storage (e.g., -10–0°C (14–32°F) with high relative humidity between 90–95%). In contrast to external signals, whose value generally “floats” or is not restricted by these value ranges, the “banded” values ​​may mean that the measurement lies within a certain expected sub-range.The exact range may vary for each building, but its minimum, maximum and / or median can be determined algorithmically (e.g., over a period of several days of observation).

[0094] Another type of environmental effect is temporal dispersion, which is also represented by the vertical gray boxes in Fig. This is represented. For example, commercial and residential buildings may have predictable occupancy schedules, which in turn can lead to easily recognizable signatures in the way sensor signals change over culturally defined intervals (e.g., over a 24-hour cycle or a 5-day week). Residential buildings may be occupied from late afternoon until early morning, while commercial buildings may have loosely or firmly defined work shifts. These repeating patterns can form bands in the time domain.

[0095] In some examples, there may also be weekly and seasonal ranges for certain signals. For instance, commercial properties are often vacant on days considered "weekends" in a given country, while conversely, residential properties are heavily occupied on such days. On an annual basis, some signal patterns vary with the seasons, such as solar irradiance, which differs significantly in amplitude, onset time, peak time, and duration in each hemisphere between winter and summer. These two longer-term measurements can further enhance the reliability of indoor and outdoor estimates.

[0096] Fig. shows sensor data that correspond to correlated movements of discrete values. In this figure, data on barometric pressure (610), outdoor humidity and temperature (620), and solar radiation and illumination (630) are plotted over time. It should be noted that in these figures, the amplitude changes of temperature and relative humidity (in example 620) have opposite phases, although both correspond to the daily pattern. The computer device 102 in Fig. can (e.g., via the ML model 114) determine a higher confidence level or probability that the sensor was located indoors or outdoors by identifying multiple signatures that behave as expected for certain values ​​(even in the absence of other data).

[0097] In some examples, the sensor data may correspond to uncorrelated movements of values. For example, the indoor and outdoor values ​​may be essentially uncorrelated. The computer setup 102 in Fig. (e.g., via the ML model 114) can initiate one or more data queries regarding the expected weather conditions in its area and would be able to detect such differences between the environmental conditions determined by the computer device or the sensors 132 and the environmental conditions in the database. The computer device 102 in Fig. (For example, via the sensor monitoring module 108) the system can compare the data sources of the two sensors and determine that the signatures of two values ​​do not match, or perform a numerical subtraction to generate a new synthetic value that reflects a difference comparison. In some examples, the difference value may have its own data signature, which can be important for analyzing indoor and outdoor environments.

[0098] In some examples, the sensor data can correspond to the geolocation of a computer device or sensor 132 to query a third-party dataset for location comparison. For example, a computer with internet access can determine its location with very coarse accuracy (e.g., at the county or postal code level) and query a variety of datasets to support the analysis process. The publicly available weather station data (e.g., the third sensor location generating the third sensor data 640) may only be available at the local density of station locations and / or the nearest airport.

[0099] In some examples, the similarities and differences between the data sources and data types can be determined once a certain amount of sensor data (e.g., three consecutive days) has been received. In this figure, the barometric pressure (BP) is recorded and displayed in Fig. depicted, showing these similarities and differences over time.

[0100] By incorporating air pressure or other additional sensor data into the reliability analysis, the computer device or sensor can be identified based on its location above ground, which corresponds to the floor in the building. In some locations, air pressure drops at a rate of approximately 0.011 in Hg per 10 feet, which can be detected in the differences between sensor locations on different floors of the building. Once the floor height is determined, the computer device can be identified. Fig. (e.g., via the ML model 114) correlate the position above the ground with a higher or lower confidence level for a complete interior (e.g., reducing the probability of being outdoors for common mid- or high-rise building types).

[0101] In Example 630, one or more sensors can include an illumination or solar irradiance meter, and solar illumination or solar irradiance data are generated. As can be seen from the initial sensor data 640, the sensors can determine solar irradiance values, which vary depending on whether it is a clear or cloudy day, as well as a hypothetical indoor value using the amplitude of the ambient light at the sensor. As with the temperature readings, the shape of a measured curve could be determined over a specific period (e.g., a 24-hour day or from month to month), with the confidence score increasing over time based on the machine learning model (e.g., via the machine learning model 114) or the reliability score of the respective sensors (e.g., via the reliability score engine 112).

[0102] Actual solar radiation can be displayed according to a predefined schedule (e.g., hourly). In contrast, Example 630 shows a hypothetical office with a second sensor 650, where employees arrive at 6:30 a.m. and depart at 6:30 p.m. with a constant amplitude. This likely corresponds to an indoor environment.

[0103] Other sensors can be used for similar conditions. For example, a sensor that can analyze the spectral signature of light or its color temperature can distinguish between natural sunlight and different types of artificial indoor light, as in Fig. depicted.

[0104] In some examples, the attributes of uniformity and decay may apply indoors, but they have different meanings. For instance, a uniform indoor measurement can be a good indicator of a human-related process, such as temperature or humidity, which is scattered in both amplitude and time. Such ranges should be approximately constant in a given building with a single owner. In contrast, certain signals that are uniform outside a building (e.g., GNSS L1 / L5 signal strength or solar radiation) may decay indoors with increasing distance from exterior walls. Both uniform and decaying indoor signals can be algorithmically useful techniques for identifying the device's environment.

[0105] Indoors, there may be no sensor signal that could definitively determine the indoor environment's condition in a single measurement or within a few minutes. A GNSS L1 or L5 signal that is 20 dB lower than the uniform outdoor level (see Fig. ), could, for example, be the result of attenuation by the building envelope, but could also be caused by other factors. A light spectrum or color temperature that strongly suggests artificial lighting is not, in itself, proof that a device is located inside a building. Similarly, a spectrum intended for outdoor use is not necessarily a guarantee that one is outdoors, as so-called "full-spectrum" indoor luminaires exist. A clear example of sensor data from artificial lighting is shown in Fig. depicted.

[0106] Fig. This shows a process flow for initializing sensor readings in accordance with some examples from the disclosure. The in Fig. The computer device 102 shown can implement the steps described here. In some examples, data acquisition can include sensor data from computer devices that can be registered on the network.

[0107] In block 910, the computer device or sensor 132 can be turned on. In some examples, the computer device 102 can send a signal to turn on the computer device or sensor 132 remotely. In other examples, the data processing device or sensor 132 can be turned on at a specific time or manually.

[0108] In some examples, each of the 132 computer devices or sensors can be weighted from the moment it is powered on, based on the device's manufacturer profile. The profile can also help establish specific rules for determining indoor or outdoor areas. A particular combination of sensor type, sensor quality, or other factors can increase or decrease the probability weighting for the device.

[0109] In block 915, the computer device 102 can determine the position of the device (e.g., the geolocation) and / or obtain a local date / time of the device.

[0110] In block 920, the computer device 102 can determine the available sensors for indoor or outdoor detection. In some examples, the device's geolocation and / or local date / time can be provided as input parameters to determine the confidence value associated with the indoor or outdoor detection.

[0111] In block 930, computer device 102 can set a schedule for querying the day and time using the operating system's event manager.

[0112] In block 940, the computer device can read 102 previous probability bins for the detection state and / or initialize probability bins.

[0113] In block 950, the computer device can trigger 102 processes to handle asynchronous sensor triggers or state changes.

[0114] Fig. This shows a process flow for determining a confidence level over time, based on some disclosure examples. In some examples, the confidence level can be determined without using a reliability score. The in Fig. The computer device 102 shown can implement the steps described here, for example to implement a process based on discrete sensor triggers.

[0115] In some examples, the readings from one or more sensors can be compared to expected values. These expected values ​​can be determined by known correlations, historical data, data from reference stations or databases, or other sources. If a predefined threshold is exceeded, or if the confidence levels are increased or decreased, the system can perform additional data measurements. In some examples, data measurements can also be triggered at regular intervals or when certain values ​​are expected, in order to increase or decrease the confidence level by facilitating comparisons with expected values ​​at those times or under those conditions.

[0116] In block 1010, the computer device 102 can receive a trigger. The trigger can include, for example, a time or day schedule, a sensor activation or state change, or a programmatic call.

[0117] In block 1020, the computer device 102 can initiate data acquisition from the sensor based on the trigger.

[0118] In block 1030, the computer device can read 102 sensor data, states, or other information.

[0119] In block 1040, the computer device 102 can store the sensor data with timestamps in a time series database (TSDB), including the time series data storage 120. The computer device 102 can store various sensor log data in the TSDB.

[0120] In block 1050, the computer device can perform 102 sensor-related internal or external weight assessments for immediate measurements.

[0121] In block 1060, the data processing device 102 can update the probability ranges based on the instantaneous values.

[0122] In block 1070, the computer device 102 can perform sensor-specific internal or external weight assessments for the time series measurements.

[0123] In block 1080, the computer device 102 can update the probability bins from the time series measurements.

[0124] In some examples, the periodicity can vary based on feedback loops, time of day, day of the week, or other factors that can continuously update the inside or outside probability bins over different time periods (e.g., 1 minute, 5 minutes, 30 minutes, 60 minutes, 4 hours, 12 hours, 24 hours, 7 days).

[0125] In some examples, the computer setup 102 can apply all sensor rules and weights to all sensor values ​​to generate a cumulative determination of the inside or outside state in each bin.

[0126] In some examples, computer device 102 may trigger requests for additional sensor data or measurements by certain sensors for disambiguation (e.g., based on the way computer device 102 is running).

[0127] In some examples, the computer device 102 can perform an asynchronous and trigger-based (e.g., including scheduled measurements) determination of an indoor or outdoor environment. Each trigger event can end with a "refresh" of the probability ranges. This can mean that instead of an absolute value in each field, a relative weighting of each field is adjusted based on new information with each trigger call. For example, the "High Probability Outdoors" range could be set slightly higher or lower in each iteration loop, up to a maximum or minimum value. This process does not require complicated, nested if-then-else forests in machine-executable instructions to capture all sensor combinations and values. Each trigger can adjust for changing environmental characteristics as needed.Over time, the ML model can converge to a stable set of bins that remains more or less unchanged.

[0128] It should be noted that the terms "optimize," "optimal," and the like, as used here, can be interpreted as making or achieving performance as effective or perfect as possible. However, as any professional reading this document will recognize, perfection cannot always be achieved. Accordingly, these terms can also mean making or achieving performance as good or effective as possible or practical under the given circumstances, or making or achieving performance better than that which can be achieved with other settings or parameters.

[0129] Fig. This shows an example of a computational component that can be used to deterministically estimate whether the location of a stationary or mobile computer device is within a fully enclosed building (e.g., completely or partially indoors / outdoors), in accordance with various embodiments. As shown in Fig. As shown, computer component 1100 could be, for example, a server computer, a controller, or another similar computer component capable of processing data. In the example implementation of Fig. The computer component 1100 comprises a hardware processor 1102 and a machine-readable storage medium 1104.

[0130] The hardware processor 1102 can consist of one or more central processing units (CPUs), semiconductor-based microprocessors, and / or other hardware devices capable of retrieving and executing instructions stored in the machine-readable storage medium 1104. The hardware processor 1102 can retrieve, decode, and execute instructions, such as instructions 1106-1112, to control processes or operations to deterministically estimate whether the location of a stationary or mobile computer device is within a fully enclosed building (e.g., completely or partially indoors / outdoors). Alternatively or additionally to retrieving and executing instructions, the hardware processor 1102 can include one or more electronic circuits containing electronic components for performing the functionality of one or more instructions, such as...a Field Programmable Gate Array (FPGA), an application-specific integrated circuit (ASIC), or other electronic circuits.

[0131] A machine-readable storage medium, such as the machine-readable storage medium 1104, can be any electronic, magnetic, optical, or other physical storage device that contains or stores executable instructions. For example, the machine-readable storage medium 1104 can be RAM (Random Access Memory), NVRAM (Non-Volatile RAM), EEPROM (Electrically Erasable Programmable Read-Only Memory), a storage device, an optical disk, or the like. In some embodiments, the machine-readable storage medium 1104 can be a non-transitory storage medium, the term "non-transitory" excluding the transitive transmission signals. As described in detail below, the machine-readable storage medium 1104 can be encoded with executable instructions, such as instructions 1106 through 1112.

[0132] The 1102 hardware processor can execute the 1106 command to collect data from a variety of sensors connected to the computer device.

[0133] The hardware processor 1102 can execute instruction 1108 to determine a confidence level associated with the data collected by each of the multiple sensors. For example, the confidence level can be determined when a threshold time period is reached during which the computer device is stationary.

[0134] The hardware processor 1102 can execute instruction 1110 to determine whether the computer device is located indoors or outdoors, based on the collected sensor data and the confidence level. Collected sensor data with a low confidence level cannot be used to determine whether the portable device is located indoors or outdoors.

[0135] The hardware processor 1102 can execute command 1112 to determine whether the computer device is located indoors or outdoors and trigger an action in an external system.

[0136] Fig. This shows an example of a computer component that can be used to deterministically estimate whether the location of a stationary or mobile computer is within a fully enclosed building (e.g., completely or partially indoors / outdoors), in accordance with various embodiments. As shown in Fig. As shown, the computer component 1200 could be, for example, a server computer, a controller, or another similar computer component capable of processing data. In the example implementation of Fig. The computer component 1200 comprises a hardware processor 1202 and a machine-readable storage medium 1204.

[0137] The hardware processor 1202 can be one or more central processing units (CPUs), semiconductor-based microprocessors, and / or other hardware devices capable of retrieving and executing instructions stored in the machine-readable storage medium 1204. The hardware processor 1202 can retrieve, decode, and execute instructions, such as instructions 1206-1212, to control processes or operations to deterministically estimate whether the location of a stationary or mobile computer device is within a fully enclosed building (e.g., completely or partially indoors / outdoors). Alternatively or in addition to retrieving and executing instructions, the hardware processor 1202 can include one or more electronic circuits containing electronic components for performing the functionality of one or more instructions, such as...a Field Programmable Gate Array (FPGA), an application-specific integrated circuit (ASIC), or other electronic circuits.

[0138] A machine-readable storage medium, such as the machine-readable storage medium 1204, can be any electronic, magnetic, optical, or other physical storage device that contains or stores executable instructions. The machine-readable storage medium 1204 can be, for example, random-access memory (RAM), non-volatile RAM (NVRAM), electrically erasable programmable solid-state memory (EEPROM), a storage device, an optical disk, or the like. In some embodiments, the machine-readable storage medium 1204 can be a non-transient storage medium, the term "non-transient" excluding the transitive transmission signals. As described in detail below, the machine-readable storage medium 1204 can be encoded with executable instructions, such as instructions 1206-1212.

[0139] The 1202 hardware processor can execute instruction 1206 to collect data and a sensor reliability value from a variety of sensors connected to the computer device.

[0140] The hardware processor 1202 can execute instruction 1208 to determine a confidence score associated with the data collected by each of the multiple sensors. The confidence score can be determined based on the sensor reliability score for the corresponding sensor from among the multiple sensors.

[0141] The 1202 hardware processor can execute the 1210 instruction to determine whether the computer device is located indoors or outdoors, based on the collected sensor data and the confidence level. Collected sensor data with a low confidence level cannot be used to determine whether the portable device is located indoors or outdoors.

[0142] The hardware processor 1202 can execute command 1212 to determine whether the computer device is located indoors or outdoors and trigger an action in an external system.

[0143] Fig. Figure 1 shows a block diagram of an exemplary computer system 1300, in which various embodiments described here can be implemented. The computer system 1300 comprises a bus 1302 or other communication mechanism for transmitting information, and one or more hardware processors 1304 connected to the bus 1302 for processing information. The hardware processor(s) 1304 can, for example, be one or more general-purpose microprocessors.

[0144] The Computer System 1300 also includes main memory 1306, such as random access memory (RAM), a cache, and / or other dynamic memory devices connected to bus 1302 to store information and instructions to be executed by processor 1304. Main memory 1306 can also be used to store temporary variables or other intermediate information during the execution of instructions to be carried out by processor 1304. When such instructions are stored in memory media accessible to processor 1304, the Computer System 1300 becomes a specialized machine adapted to perform the operations specified in the instructions.

[0145] The Computer System 1300 also includes a read-only memory (ROM) 1308 or other static storage device connected to the bus 1302 to store static information and instructions for the processor 1304. A storage device 1310, such as a magnetic disk, an optical disk, or a USB flash drive, etc., is provided and connected to the bus 1302 to store information and instructions.

[0146] The computer system 1300 can be connected via bus 1302 to a display 1312, such as a liquid crystal display (LCD) (or a touchscreen), to show information to a computer user. An input device 1314, including alphanumeric and other keys, is coupled to bus 1302 to transmit information and command selections to the processor 1304. Another type of user input device is the cursor control 1316, such as a mouse, trackball, or cursor direction keys, for transmitting directional information and command selections to the processor 1304 and for controlling cursor movement on the display 1312. In some embodiments, the same directional information and command selections as with cursor control can be implemented by receiving touch inputs on a touchscreen without a cursor.

[0147] The Computer System 1300 can include a user interface module for implementing a graphical user interface, which can be stored on a mass storage device as executable software code that is executed by the computer device(s). This and other modules can include components such as software components, object-oriented software components, class components and task components, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables.

[0148] In general, the words "component," "engine," "system," "database," "data store," and the like, as used here, can refer to logic embodied in hardware or firmware, or to a collection of software instructions that may have entry and exit points and are written in a programming language such as Java, C, or C++. A software component may be compiled and linked into an executable program, installed in a dynamic link library, or written in an interpreted programming language such as BASIC, Perl, or Python. It is clear that software components can be called by other components or by themselves, and / or invoked in response to detected events or interruptions. Software components configured to run on computer devices may be stored on a computer-readable medium, such as...Software code can be provided on a compact disc, digital video disc, flash drive, magnetic disk, or other tangible medium, or as a digital download (and may initially be stored in a compressed or installable format that requires installation, decompression, or decryption before execution). Such software code may be stored partially or entirely in the memory of the executing computer device so that it can be executed by the computer device. Software instructions may be embedded in firmware, such as an EPROM. Furthermore, the hardware components may consist of interconnected logic units such as gates and flip-flops, and / or programmable units such as programmable gate arrays or processors.

[0149] The computer system 1300 can implement the techniques described herein using custom hard-wired logic, one or more ASICs or FPGAs, firmware, and / or program logic, which, in combination with the computer system, make the computer system 1300 a specialized machine or program it. According to one embodiment, the techniques described herein are executed by the computer system 1300 in response to the processor(s) 1304, which executes one or more sequences of one or more instructions contained in the main memory 1306. Such instructions can be read into the main memory 1306 from another storage medium, such as the storage device 1310. The execution of the instruction sequences contained in the main memory 1306 causes the processor(s) 1304 to perform the process steps described herein.In alternative embodiments, hard-wired circuits can be used instead of, or in combination with, software instructions.

[0150] The term "non-volatile media" and similar terms as used here refer to all media that store data and / or instructions that make a machine operate in a particular way. Such non-volatile media can include both non-volatile and volatile media. Non-volatile media include, for example, optical or magnetic disks, such as the Storage Device 1310. Volatile media include dynamic storage devices, such as the Main Memory 1306. Common forms of non-volatile media include, for example, floppy disks, flexible disks, hard disks, solid-state drives, magnetic tapes or other magnetic data storage media, CD-ROMs, other optical data storage media, physical media with hole patterns, RAM, PROM and EPROM, FLASH-EPROM, NVRAM, other memory chips or cartridges, and their networked versions.

[0151] Non-transitory media differ from transmission media but can be used in conjunction with them. Transmission media are involved in the transfer of information between non-transitory media. Examples of transmission media include coaxial cable, copper wire, and fiber optic cable, including the wires that make up the 1302 bus. Transmission media can also take the form of sound or light waves, such as those generated in radio and infrared data communication.

[0152] The 1300 computer system also includes a communication interface 1318, which is connected to the 1302 bus. The communication interface 1318 establishes a two-way data communication connection to one or more network connections that are connected to one or more local area networks (LANs). For example, the communication interface 1318 could be an ISDN (Integrated Services Digital Network) card, a cable modem, a satellite modem, or a modem to establish a data communication connection to a corresponding type of telephone line. Alternatively, the communication interface 1318 could be a LAN (Local Area Network) card to establish a data communication connection to a compatible LAN (or a WAN component for communication with a WAN). Wireless connections can also be implemented.In each of these implementations, the 1318 communication interface sends and receives electrical, electromagnetic, or optical signals that transmit digital data streams with various types of information.

[0153] A network connection typically enables data communication over one or more networks to other data devices. For example, a network connection can establish a connection over a local area network to a host computer or to data devices operated by an Internet service provider (ISP). The ISP, in turn, provides data communication services over the worldwide packet data communication network, commonly known today as the "Internet." Both the local area network and the Internet use electrical, electromagnetic, or optical signals to transmit digital data streams. The signals in the various networks and the signals on the network link and across the communication interface 1318, which transmit digital data to and from the computer system 1300, are examples of transmission media.

[0154] The computer system 1300 can send messages and receive data, including program code, via the network(s), network connection, and communication interface 1318. In the internet example, a server could transmit requested code for an application program via the internet, the ISP, the local network, and communication interface 1318.

[0155] The received code can be executed by the processor 1304 as soon as it is received, and / or stored in the memory device 1310 or other non-volatile memory for later execution.

[0156] Each of the processes, methods, and algorithms described in the preceding sections can be embodied in code components and fully or partially automated by them, which are executed by one or more computer systems or computer processors with computer hardware. The one or more computer systems or computer processors can also be operated in such a way as to support the execution of the corresponding operations in a cloud computing environment or as Software as a Service (SaaS). The processes and algorithms can be partially or fully implemented in application-specific circuits. The various features and procedures described above can be used independently or combined in various ways.Various combinations and subcombinations are said to fall within the scope of this disclosure, and certain procedural or process blocks may be omitted in some implementations. The methods and processes described herein are also not restricted to a particular order, and the associated blocks or states may be executed in other suitable orders, in parallel, or otherwise. Blocks or states may be added to or removed from the disclosed examples. The execution of certain operations or processes may be distributed across computer systems or computer processors, not just within a single machine, but distributed across a number of machines.

[0157] A circuit can be implemented in any form of hardware, software, or a combination thereof. For example, one or more processors, controllers, ASICs, PLAs, PALs, CPLDs, FPGAs, logic components, software routines, or other mechanisms can be implemented to form a circuit. In implementation, the various circuits described here can be implemented as discrete circuits, or the described functions and features can be partially or completely distributed across one or more circuits. Even if various features or functional elements are individually described or claimed as separate circuits, these features and functions can be shared by one or more common circuits, and such a description is not intended to require or imply that separate circuits are necessary to implement these features or functions.If a circuit is implemented wholly or partly with software, this software can be implemented in such a way that it works with a computer or processing system capable of performing the functionality described in relation to it, such as the 1300 computer system.

[0158] As used herein, the term "or" can be understood in both an inclusive and an exclusive sense. Furthermore, the singular description of resources, processes, or structures is not to be understood as excluding the plural. Conditional expressions such as "may," "could," "might," or "can," unless expressly stated otherwise or understood differently in context, are generally intended to express that certain embodiments include certain features, elements, and / or steps, while other embodiments do not.

[0159] Unless explicitly stated otherwise, the terms and expressions used in this document, as well as their variations, are to be understood as open and not restrictive. Adjectives such as "conventional," "traditional," "existing," "normal," "standard," "known," and terms of similar meaning are not to be understood as limiting the described subject matter to a specific period or to an item available at a particular time, but should be understood as encompassing conventional, traditional, existing, normal, or standard technologies that may be available or known now or at any time in the future.The presence of expansive words and phrases such as "one or more", "at least", "but not limited to" or similar phrases in some cases is not to be understood as meaning that the narrower case is intended or required when such expansive phrases are not present.

Claims

[1] Computer device (102) for determining whether an environment of the computer device (102) is indoors or outdoors, comprising: a memory (105); and one or more processors (104) configured to execute machine-readable instructions stored in memory (105) to perform a procedure comprising the following: Collecting sensor data from a variety of sensors (132) connected to the computer device (102); Upon reaching a threshold time period in which the computer device (102) is stationary, determine a confidence value that is associated with the sensor data collected by each of the plurality of sensors (132); Determine whether the computer device (102) is located indoors or outdoors, based on the sensor data and the confidence value when the confidence value meets or exceeds a first threshold, wherein the confidence value is associated with the probability that the computer device (102) is located indoors or outdoors; when it is determined that the confidence value associated with the sensor data is below a second threshold, determine that the computer device (102) is entirely indoors or outdoors, regardless of whether the confidence value meets or exceeds the first threshold; and the determination that the computer device (102) is located in an indoor or outdoor area, and the triggering of an action in an external system. [2] Computer device (102) according to claim 1, wherein the plurality of sensors (132) comprises at least two of radio receivers, timers and clocks, pressure, air particles and trace gases, radiological, inertial, piezoelectric, optical, acoustic, electrical or magnetic sensors (132). [3] Computer device (102) according to claim 1, wherein the plurality of sensors (132) are embedded in the computer device (102) or in the environment of the computer device (102). [4] Computer device (102) according to claim 1, wherein the action in the external system activates lighting or water features and the external system is a component of home automation. [5] Computer device (102) according to claim 1, wherein the action in the external system automatically sets image parameters and the external system includes a security camera. [6] Computer device (102) according to claim 1, wherein the action in the external system automatically adjusts the operating emission characteristics of a radio device. [7] Computer device (102) according to claim 1, wherein the action in the external system automatically generates electronic communication on a second protocol based on the determination that the computer device (102) is located in an indoor or outdoor area. [8] Computer device (102) according to claim 1, wherein the action in the external system automatically generates a report that describes in detail an operating pattern of sensor data indicating that the computer device (102) is operated indoors or outdoors in the environment. [9] Computer device (102) for determining whether an environment of the computer device (102) is indoors or outdoors, comprising: a memory (105); and one or more processors (104) configured to execute machine-readable instructions stored in the memory (105) to perform a procedure comprising: Collecting sensor data and a sensor reliability value from a large number of sensors (132) connected to the computer device (102); Determining a confidence value associated with sensor data collected from each of the plurality of sensors (132), wherein the confidence value is determined on the basis of the sensor reliability value for the corresponding sensor (132) from the plurality of sensors (132); Determine whether the computer device (102) is located indoors or outdoors, based on the sensor data and the confidence value when the confidence value meets or exceeds a first threshold, wherein the confidence value is associated with the probability that the computer device (102) is located indoors or outdoors; when it is determined that the confidence value associated with the sensor data is below a second threshold, determine that the computer device (102) is entirely indoors or outdoors, regardless of whether the confidence value meets or exceeds the first threshold; and Providing the determination that the computer device (102) is located indoors or outdoors and triggering an action in an external system. [10] Computer device (102) according to claim 9, wherein the plurality of sensors (132) comprises at least two of radio receivers, timers and clocks, pressure, air particle and trace gas sensors, radiological, inertial, piezoelectric, optical, acoustic, electrical or magnetic sensors (132). [11] Computer device (102) according to claim 9, wherein the plurality of sensors (132) are embedded in the computer device (102) or the environment of the computer device (102). [12] Computer device (102) according to claim 9, wherein the action in the external system activates the lighting or water features and the external system is a component of the home automation system. [13] Computer device (102) according to claim 9, wherein the action in the external system automatically sets image parameters and the external system includes a security camera. [14] Computer device (102) according to claim 9, wherein the action in the external system automatically adjusts the operating emission characteristics of a radio device. [15] Computer device (102) according to claim 9, wherein the action in the external system automatically generates electronic communication on a second protocol based on the determination that the computer device (102) is located indoors or outdoors. [16] Computer device (102) according to claim 9, wherein the action in the external system automatically generates a report that describes in detail an operating pattern of sensor data indicating that the computer device (102) is operated indoors or outdoors in the environment. [17] Computer-implemented method for determining whether an environment of the computer device (102) is indoors or outdoors, comprising: Collecting (1206) sensor data from a variety of sensors (132) connected to the computer device (102); Upon reaching a threshold time period in which the computer device (102) is stationary, determine a confidence value that is associated with the sensor data collected by each of the plurality of sensors (132); Determine whether the computer device (102) is located indoors or outdoors, based on the sensor data and the confidence value when the confidence value meets or exceeds a first threshold, wherein the confidence value is associated with the probability that the computer device (102) is located indoors or outdoors; when it is determined that the confidence value associated with the sensor data is below a second threshold, determine (1210) that the computer device (102) is entirely indoors or outdoors, regardless of whether the confidence value meets or exceeds the first threshold; and the determination that the computer device (102) is located in an indoor or outdoor area, and the triggering (1212) of an action in an external system. [18] Computer-implemented method according to claim 17, wherein the plurality of sensors (132) comprises at least two of radio receivers, timers and clocks, pressure, air particle and trace gas sensors, radiological, inertial, piezoelectric, optical, acoustic, electrical or magnetic sensors (132). [19] Computer-implemented method according to claim 17, wherein the plurality of sensors (132) are embedded in the computer device (102) or the environment of the computer device (102). [20] Computer-implemented method according to claim 17, wherein the action in the external system activates the lighting or water features and the external system is a component of the home automation system.

Citation Information

Patent Citations

  • CN000113176587A

  • Method and system for vehicle location

    US20190385452A1

  • Indoor detections based on ambient light

    US20220128399A1

  • Systems and methods for tracking a user's location

    US9255983B2

  • Accounting for indoor-outdoor transitions during position determination

    US9706364B2