Angle of arrival capability in electronic devices
By acquiring the channel and angle of arrival information of the wireless signal and smoothing it using a tracking filter, the inaccuracy of electronic devices in judging inside and outside the field of view is solved, improving the accuracy of target device location determination and user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SAMSUNG ELECTRONICS CO LTD
- Filing Date
- 2021-07-30
- Publication Date
- 2026-05-01
AI Technical Summary
When electronic devices determine whether another device is within their field of view, they may have inaccurate angle of arrival and distance determination, which may lead to an inability to correctly determine the location of the device.
By obtaining the channel information, distance information, and angle of arrival information of the wireless signal, a tracking filter is used to smooth this information, generate an initial prediction, and finally determine whether the external device is within the field of view of the electronic device.
It improves the accuracy of electronic devices in determining the target device within the field of view and enhances the user experience in data sharing scenarios.
Smart Images

Figure CN116057408B_ABST
Abstract
Description
Technical Field
[0001] This disclosure generally relates to positioning electronic devices. More specifically, this disclosure relates to angle-of-arrival capabilities in electronic devices. Background Technology
[0002] The use of mobile computing technology has expanded significantly due to its availability, convenience, and computing power. A recent technological advancement has resulted in increasingly compact electronic devices, and a growing number of functions and features that a given device can perform. Some electronic devices can determine whether another device is within their field of view. For example, electronic devices can send and receive signals with other devices and determine the angle of arrival (AoA) of the received signal and the distance between the devices. Signal corruption can occur, leading to inaccurate AoA and distance determination. Inaccurate AoA and distance determination can cause an electronic device to incorrectly determine whether another electronic device is within or outside its field of view. Summary of the Invention
[0003] Technical issues
[0004] This disclosure provides angle of arrival capability in electronic devices.
[0005] In one embodiment, a method is provided. The method includes obtaining channel information, range information, and angle of arrival (AoA) information based on a wireless signal transmitted between an electronic device and an external electronic device. The method further includes generating an initial prediction of the presence of the external electronic device relative to the electronic device's field of view (FoV) based on the channel information and at least one of the range information or AoA information, wherein the initial prediction includes an indication of whether the external electronic device is within or outside the electronic device's FoV. The method further includes performing a smoothing operation on the range information and AoA information using a tracking filter. Additionally, the method includes determining whether the external electronic device is within or outside the electronic device's FoV based on the AoA information, the smoothed AoA information, and the initial prediction of the presence of the external electronic device relative to the electronic device's FoV.
[0006] In another embodiment, an electronic device is provided. The electronic device includes a processor. The processor is configured to obtain channel information, distance information, and AoA information based on wireless signals transmitted between the electronic device and an external electronic device. The processor is further configured to generate an initial prediction of the presence of the external electronic device within the field of view (FoV) of the electronic device relative to the electronic device based on the channel information and at least one of the distance information or AoA information, wherein the initial prediction includes an indication of whether the external electronic device is within or outside the FoV of the electronic device. The processor is further configured to perform a smoothing operation on the distance information and AoA information using a tracking filter. Additionally, the processor is configured to determine whether the external electronic device is within or outside the FoV of the electronic device based on the AoA information, the smoothed AoA information, and the initial prediction of the presence of the external electronic device within or outside the FoV of the electronic device.
[0007] In another embodiment, a non-transitory computer-readable medium containing instructions is provided. When executed, the instructions cause at least one processor to obtain channel information, distance information, and AoA information based on wireless signals transmitted between an electronic device and an external electronic device. When executed, the instructions further cause the at least one processor to generate an initial prediction of the presence of the external electronic device within the field of view (FoV) of the electronic device relative to the electronic device based on the channel information and at least one of the distance information or AoA information, wherein the initial prediction includes an indication of whether the external electronic device is within or outside the FoV of the electronic device. When executed, the instructions further cause the at least one processor to perform a smoothing operation on the distance information and AoA information using a tracking filter. Additionally, when executed, the instructions cause the at least one processor to determine whether the external electronic device is within or outside the FoV of the electronic device based on the AoA information, the smoothed AoA information, and the initial prediction of the presence of the external electronic device within or outside the FoV of the electronic device.
[0008] Other technical features will be apparent to those skilled in the art from the following figures, description and claims.
[0009] Before proceeding with the following “Detailed Description,” it may be advantageous to define certain words and phrases used throughout this patent document. The term “coupled” and its derivatives refer to any direct or indirect communication between two or more elements, regardless of whether those elements are physically in contact with each other. The terms “transmit,” “receive,” and “transmit,” and their derivatives cover both direct and indirect communication. The terms “comprising” and “including,” and their derivatives imply non-limiting inclusion. The term “or” is inclusive, meaning and / or. The phrase “associated with,” and its derivatives mean including, being included within, interconnected with, containing, being contained within, connected to or connected with, coupled to or coupled with, capable of communicating with, cooperating with, interleaving, juxtaposing, proximate, bound to or bound with, having, possessing the properties of, related to, etc. The term “controller” means any device, system, or part thereof that controls at least one operation. Such a controller may be implemented in hardware or a combination of hardware and software and / or firmware. The functionality associated with any particular controller can be centralized or distributed, whether local or remote. The phrase "at least one of..." when used with a list of items means that different combinations of one or more of the listed items can be used, and it is possible that only one item from the list is needed. For example, "at least one of A, B, and C" includes any of the following combinations: A, B, C, A and B, A and C, B and C, and A and B and C.
[0010] Furthermore, the various functions described below can be implemented or supported by one or more computer programs, each computer program being formed by computer-readable program code and embodied in a computer-readable medium. The terms "application" and "program" refer to one or more computer programs, software components, instruction sets, procedures, functions, objects, classes, instances, associated data, or portions thereof suitable for implementation in appropriate computer-readable program code. The phrase "computer-readable program code" includes any type of computer code, including source code, object code, and executable code. The phrase "computer-readable medium" includes any type of media accessible by a computer, such as read-only memory (ROM), random access memory (RAM), hard disk drive, compact disc (CD), digital video disc (DVD), or any other type of storage. "Non-transitory" computer-readable media does not include wired, wireless, optical, or other communication links that transmit transient electrical signals or other signals. Non-transitory computer-readable media includes media that can permanently store data as well as media that can store data and be overwritten later, such as rewritable optical discs or erasable memory devices.
[0011] Definitions for other specific words and phrases are also provided throughout this patent document. Those skilled in the art will understand that, in many (if not most) cases, such definitions apply to the prior and future use of the words and phrases defined in this way. Attached Figure Description
[0012] To gain a more complete understanding of this disclosure and its advantages, the following description is now taken in conjunction with the accompanying drawings, in which the same reference numerals denote the same parts:
[0013] Figure 1 An example communication system according to an embodiment of the present disclosure is shown;
[0014] Figure 2 An example electronic device according to an embodiment of the present disclosure is shown;
[0015] Figure 3 An example network configuration according to an embodiment of this disclosure is shown;
[0016] Figure 4A An example diagram is shown illustrating how to determine whether a target device is within the field of view (FoV) of an electronic device according to an embodiment of the present disclosure;
[0017] Figure 4B An example coordinate system according to an embodiment of the present disclosure is shown;
[0018] Figure 5A , Figure 5B and Figure 5C A signal processing diagram for field of view determination according to an embodiment of the present disclosure is shown;
[0019] Figure 6 An example channel impulse response (CIR) plot for initial FoV determination according to an embodiment of the present disclosure is shown;
[0020] Figure 7 An example process for selecting a classifier for initial FoV determination according to an embodiment of this disclosure is shown;
[0021] Figure 8A and Figure 8B An example moving average filter for initial FoV prediction according to an embodiment of this disclosure is shown;
[0022] Figure 9A , Figure 9B , Figure 9C and Figure 9D Example methods for various tracking filter operations according to embodiments of the present disclosure are shown;
[0023] Figure 10An example method for determining whether a target device is within the Field of Value (FoV) of an electronic device, according to embodiments of the present disclosure, is shown.
[0024] Figure 11 An example method for performing a reset due to motion, according to embodiments of the present disclosure, is shown; and
[0025] Figure 12 An example method for FoV determination according to an embodiment of this disclosure is shown. Detailed Implementation
[0026] The following discussion Figures 1 to 12 The various embodiments used to describe the principles of this disclosure in this patent document are merely exemplary and should not be construed in any way as limiting the scope of this disclosure. Those skilled in the art will understand that the principles of this disclosure can be implemented in any suitably arranged system or device.
[0027] According to embodiments of this disclosure, electronic devices may include personal computers (such as laptops, desktop computers), workstations, servers, televisions, electrical appliances, etc. In some embodiments, electronic devices may be portable electronic devices, such as portable communication devices (such as smartphones or mobile phones), laptops, tablets, e-book readers (such as e-readers), personal digital assistants (PDAs), portable multimedia players (PMPs), MP3 players, mobile medical devices, virtual reality headsets, portable game consoles, cameras, and wearable devices, etc. Additionally, an electronic device may be at least one of a piece of furniture or part of a building / structure, an electronic board, an electronic signature receiving device, a projector, or a measuring device. An electronic device is one or a combination of the devices listed above. Furthermore, the electronic devices disclosed herein are not limited to those listed above and may include new electronic devices depending on technological advancements. Note that, as used herein, the term "user" may refer to a human using an electronic device or another device (such as an artificial intelligence electronic device).
[0028] In some embodiments, the electronic device may include a receiver (or transceiver), and one or more target devices may include a transmitter (or transceiver). The receiver (or transceiver) of the electronic device may be an ultra-wideband (UWB) receiver (or UWB transceiver). Similarly, the transmitter (or transceiver) of the target device may be a UWB transmitter (or UWB transceiver). The electronic device may measure the angle of arrival (AoA) of the UWB signal transmitted by the target device. UWB signals provide centimeter-level ranging. For example, if the target device is within the line of sight (LOS) of the electronic device, the electronic device can determine the distance (spacing) between the two devices with an accuracy of within ten centimeters. Alternatively, if the target device is not within the LOS of the electronic device, the electronic device can determine the distance between the two devices with an accuracy of within fifty centimeters. Furthermore, if the target device is within the LOS of the electronic device, the electronic device can determine the AoA between the two devices with an accuracy of within three degrees.
[0029] Embodiments of this disclosure provide systems and methods for determining whether a target device is within the field of view (FoV) of an electronic device. UWB measurements are negatively affected by the environment in which the electronic device and the target device are located. Based on this environment, the position of the target device relative to the electronic device may be difficult to determine, such as when the electronic device cannot determine whether the received signal is directly from the target device or a reflection from an object in the environment.
[0030] Embodiments of this disclosure recognize and consider that, without post-processing, an electronic device may be unable to determine whether a received signal originates directly from a target device or whether the signal is a reflected signal (referred to as a multipath effect). Accordingly, embodiments of this disclosure provide systems and methods for improving the quality of measurements enabling an electronic device to determine whether a target device is within its Field of View (FoV). When the electronic device determines that a target device is within its FoV, the user experience regarding data sharing in scenarios such as peer-to-peer file sharing can be improved.
[0031] Embodiments of this disclosure provide systems and methods for post-processing received signals. The received signals may include imperfect UWB measurements. Post-processing can be used to identify whether the presence of a target device (such as an external electronic device) is within the field of view (FoV) of the electronic device. Accordingly, embodiments of this disclosure provide systems and methods for performing an initial prediction of whether a target device is within the FoV of the electronic device. The initial prediction may be based on received distance information representing the distance between the target device and the electronic device. The initial prediction may also be based on the AoA of the signal received from the target device. The initial prediction may also be based on channel impulse response (CIR) characteristics. Embodiments of this disclosure also provide systems and methods for smoothing distance and AoA measurements. Embodiments of this disclosure also provide systems and methods for performing a final FoV classification. The final FoV classification is partly based on the initial prediction and smoothed distance and AoA measurements. The final FoV classification can output a FoV determination and a confidence level for that determination. Additionally, embodiments of this disclosure provide systems and methods for detecting abrupt or sudden movement of an electronic device. This movement can trigger a reset of the state of a tracking filter by the electronic device. In some embodiments, detecting a motion also triggers the electronic device to reset a buffer used to store the initial prediction, the final FoV classification, or both.
[0032] Figure 1 An example communication system 100 according to an embodiment of the present disclosure is shown. Figure 1 The embodiment of the communication system 100 shown is for illustrative purposes only. Other embodiments of the communication system 100 may be used without departing from the scope of this disclosure.
[0033] Communication system 100 includes network 102, which facilitates communication between various components within communication system 100. For example, network 102 can transmit IP packets, Frame Relay frames, Asynchronous Transfer Mode (ATM) cells, or other information between network addresses. Network 102 includes all or part of one or more local area networks (LANs), metropolitan area networks (MANs), wide area networks (WANs), global networks (such as the Internet), or any other communication system(s) at one or more locations.
[0034] In this example, network 102 facilitates communication between server 104 and various client devices 106-114. Client devices 106-114 may be, for example, smartphones, tablets, laptops, personal computers, wearable devices, head-mounted displays, etc. Server 104 may represent one or more servers. Each server 104 includes any suitable computing or processing device that can provide computing services to one or more client devices (such as client devices 106-114). Each server 104 may, for example, include one or more processing devices, one or more memories storing instructions and data, and one or more network interfaces facilitating communication via network 102.
[0035] In some embodiments, server 104 is a neural network configured to extract features from received signals. In some embodiments, the neural network is included in any of the client devices 106-114. When a client device includes a neural network, it can use the neural network to extract features from the received signals without having to transmit content over network 102. Similarly, when a client device includes a neural network, it can use the neural network to identify whether another client device is within the Field of View (FoV) of the client device including the neural network.
[0036] Each of client devices 106-114 represents any suitable computing or processing device that interacts with at least one server (such as server 104) or (multiple) other computing devices via network 102. Client devices 106-114 include desktop computer 106, mobile phone or mobile device 108 (such as smartphone), PDA 110, laptop computer 112, and tablet computer 114. However, any other or additional client devices may be used in communication system 100. A smartphone refers to a class of mobile devices 108 that are handheld devices with a mobile operating system and integrated mobile broadband cellular network connectivity for voice, short message service (SMS), and Internet data communication. In some embodiments, any client device of client devices 106-114 may transmit and collect radar signals via a measurement transceiver. In some embodiments, any client device of client devices 106-114 may transmit and collect UWB signals via a measurement transceiver.
[0037] In this example, some client devices 108-114 communicate indirectly with network 102. For example, mobile device 108 and PDA 110 communicate via one or more base stations 116 (such as cellular base stations or eNodeBs (eNBs)). Additionally, laptop computer 112 and tablet computer 114 communicate via one or more wireless access points 118 (such as IEEE 802.11 wireless access points). Note that these are for illustrative purposes only, and each of client devices 106-114 may communicate directly with network 102 or indirectly with network 102 via any suitable intermediary device(s) or network(s). In some embodiments, any client device 106-114 securely and efficiently sends information to another device (e.g., server 104).
[0038] As shown in the figure, a laptop computer 112 can communicate with a mobile device 108. Based on the wireless signals transmitted between the two devices, the devices (such as laptop computer 112, mobile device 108, or another device such as server 104) obtain channel information, distance information, and AoA information. Channel information may include characteristics of the channel impulse response (CIR) of the wireless channel between laptop computer 112 and mobile device 108. Distance may be the variance of the instantaneous distance or spacing between laptop computer 112 and mobile device 108 based on the wireless signals. Similarly, AoA may be an instantaneous AoA measurement or the variance of the AoA measurement between laptop computer 112 and mobile device 108 based on the wireless signals.
[0039] although Figure 1 An example of a communication system 100 is shown, but it is possible to compare it with other systems. Figure 1 Various changes can be made. For example, communication system 100 can include any number of each component in any suitable arrangement. Generally speaking, computing and communication systems have a wide variety of configurations, and Figure 1 This disclosure is not intended to limit the scope to any particular configuration. Although Figure 1 An operating environment in which the various features disclosed in this patent document can be used is shown, but these features can also be used in any other suitable system.
[0040] Figure 2 An example electronic device according to an embodiment of the present disclosure is shown. Specifically, Figure 2 An example electronic device 200 is shown, and electronic device 200 can represent Figure 1 The server 104 or one or more client devices 106-114 are included. Electronic device 200 can be a mobile communication device, such as, for example, a mobile station, subscriber station, wireless terminal, or desktop computer (similar to...). Figure 1Desktop computers 106), portable electronic devices (similar to) Figure 1 Mobile devices 108, PDA 110, laptop computers 112 or tablet computers 114), robots, etc.
[0041] like Figure 2 As shown, electronic device 200 includes transceivers(s) 210, transmit (TX) processing circuitry 215, microphone 220, and receive (RX) processing circuitry 225. The transceivers(s) 210 may include, for example, radio frequency (RF) transceivers, Bluetooth transceivers, WiFi transceivers, ZigBee transceivers, infrared transceivers, and various other wireless communication signals. Electronic device 200 also includes speakers(s) 230, processors(s) 240, input / output (I / O) interfaces(IF) 245, input terminals 250, a display 255, memory 260, and sensors(s) 265. Memory 260 includes an operating system (OS) 261 and one or more applications 262.
[0042] Multiple transceivers 210 may include an antenna array comprising multiple antennas. The antennas of the antenna array may include radiating elements formed of conductive material or conductive patterns formed in or on a substrate. Multiple transceivers 210 transmit or receive signals or power to or from electronic device 200. Multiple transceivers 210 receive incoming signals from an access point (such as a base station, WiFi router, or Bluetooth device) or other devices on network 102 (such as WiFi, Bluetooth, cellular, 5G, LTE, LTE-A, WiMAX, or any other type of wireless network). Multiple transceivers 210 down-convert incoming RF signals to generate intermediate frequency (IF) or baseband signals. The IF or baseband signals are sent to RX processing circuitry 225, which generates a processed baseband signal by filtering, decoding, and / or digitizing the baseband or IF signals. RX processing circuitry 225 sends the processed baseband signal to speaker 230 (e.g., for voice data) or processor 240 for further processing (e.g., for web browsing data).
[0043] TX processing circuit 215 receives analog or digital voice data from microphone 220, or other outgoing baseband data from processor 240. The outgoing baseband data may include web page data, email, or interactive video game data. TX processing circuit 215 encodes, multiplexes, and / or digitizes the outgoing baseband data to generate a processed baseband or intermediate frequency (IF) signal. Multiple transceivers 210 receive the processed baseband or IF signal from TX processing circuit 215 and up-convert the baseband or IF signal into a signal to be transmitted.
[0044] Processor 240 may include one or more processors or other processing devices. Processor 240 may execute instructions (such as OS 261) stored in memory 260 to control the overall operation of electronic device 200. For example, based on well-known principles, processor 240 may control the reception of forward channel signals and the transmission of reverse channel signals via transceiver(s) 210, RX processing circuitry 225, and TX processing circuitry 215. Processor 240 may include any suitable number and type of processors or other devices in any suitable arrangement. For example, in some embodiments, processor 240 includes at least one microprocessor or microcontroller. Example types of processor 240 include microprocessors, microcontrollers, digital signal processors, field-programmable gate arrays, application-specific integrated circuits (ASICs), and discrete circuits. In some embodiments, processor 240 includes a neural network.
[0045] Processor 240 is also capable of running other processes and programs residing in memory 260, such as operations for receiving and storing data. Processor 240 may move data into or out of memory 260 as needed during operation. In some embodiments, processor 240 is configured to run one or more applications 262 based on OS 261 or in response to signals received from external sources or operators(s). For example, application 262 may include a multimedia player (such as a music player or video player), a telephone calling application, a virtual personal assistant, etc.
[0046] The processor 240 is also coupled to an I / O interface 245, which provides the electronic device 200 with the ability to connect to other devices, such as client devices 106-114. The I / O interface 245 is the communication path between these accessories and the processor 240.
[0047] Processor 240 is also coupled to input terminal 250 and display 255. An operator of electronic device 200 can use input terminal 250 to input data or other information into electronic device 200. Input terminal 250 can be a keyboard, touchscreen, mouse, trackball, voice input, or other device capable of acting as a user interface to allow the user to interact with electronic device 200. For example, input terminal 250 may include voice recognition processing, thereby allowing the user to input voice commands. In another example, input terminal 250 may include a touch panel, (digital) pen sensor, button, or ultrasonic input device. Touch panel can recognize touch input, such as at least one scheme (e.g., capacitive, pressure-sensitive, infrared, or ultrasonic). Input terminal 250 may be associated with sensors 265, measurement transceiver 270, camera, etc., that provide additional input to processor 240. Input terminal 250 may also include control circuitry. In a capacitive scheme, input terminal 250 can recognize touch or proximity.
[0048] Display 255 may be a liquid crystal display (LCD), a light-emitting diode (LED) display, an organic LED (OLED), an active-matrix OLED (AMOLED), or other display capable of displaying text and / or graphics such as those from websites, videos, games, images, etc. Display 255 may be a single display or multiple displays capable of creating a stereoscopic display. In some embodiments, display 255 is a head-up display (HUD).
[0049] Memory 260 is coupled to processor 240. A portion of memory 260 may include RAM, and another portion of memory 260 may include flash memory or other ROM. Memory 260 may include any and multiple permanent memories (not shown) representing structures capable of storing and facilitating the retrieval of information such as data, program code, and / or other suitable information. Memory 260 may contain one or more components or devices supporting long-term storage of data, such as read-only memory, hard disk drive, flash memory, or optical disk.
[0050] Electronic device 200 also includes one or more sensors 265, which can measure physical quantities or detect the activation state of electronic device 200 and convert the measured or detected information into electrical signals. For example, sensor 265 may include one or more buttons for touch input, a camera, a gesture sensor, an optical sensor, a webcam, one or more inertial measurement units (IMUs) (such as gyroscopes or gyroscope sensors), and an accelerometer. Sensor 265 may also include barometric pressure sensors, magnetic sensors or magnetometers, grip sensors, proximity sensors, ambient light sensors, biophysical sensors, temperature / humidity sensors, illumination sensors, ultraviolet (UV) sensors, electromyography (EMG) sensors, electroencephalography (EEG) sensors, electrocardiography (ECG) sensors, IR sensors, ultrasound sensors, iris sensors, fingerprint sensors, color sensors (such as red-green-blue (RGB) sensors), etc. Sensor 265 may also include control circuitry for controlling any of the included sensors. Any of these sensors 265 may be located within electronic device 200 or in auxiliary devices operatively connected to electronic device 200.
[0051] In this embodiment, one or more transceivers in transceiver 210 is a measurement transceiver 270. The measurement transceiver 270 is configured to transmit and receive signals for detection and ranging purposes. The measurement transceiver 270 can transmit and receive signals for measuring the distance and angle of an external object relative to the electronic device 200. The measurement transceiver 270 can be any type of transceiver, including but not limited to WiFi transceivers, such as 802.11ay transceivers, UWB transceivers, etc. In some embodiments, the measurement transceiver 270 includes sensors. For example, the measurement transceiver 270 can operate concurrently to measure signals and communication signals. The measurement transceiver 270 includes one or more antenna arrays or antenna pairs, each antenna array or antenna pair including a transmitter (or transmitter antenna) and a receiver (or receiver antenna). The measurement transceiver 270 can transmit signals at various frequencies, such as in UWB. The measurement transceiver 270 can receive signals from an external electronic device (also called a target device) for determining whether the external electronic device is within the FoV of the electronic device 200.
[0052] The transmitter of the measuring transceiver 270 can transmit UWB signals. The receiver of the measuring transceiver can receive UWB signals from other electronic devices. The processor 240 can analyze the time difference based on the timestamps of the transmitted and received signals to measure the distance from the electronic device 200 to the target object. Based on the time difference, the processor 240 can generate positional information indicating the distance of the external electronic device from the electronic device 200. In some embodiments, the measuring transceiver 270 is a sensor capable of detecting the distance and AoA of another electronic device. For example, the measuring transceiver 270 can identify changes in the azimuth and / or elevation angle of another electronic device relative to the measuring transceiver 270. In some embodiments, the measuring transceiver 270 represents two or more transceivers. Based on the difference between the signals received by each transceiver, the processor 240 can determine / identify changes in the azimuth and / or elevation angle corresponding to the AoA of the received signals.
[0053] although Figure 2 An example of an electronic device 200 is shown, but more details can be found on other devices. Figure 2 Make various changes. For example, Figure 2 The various components can be combined, further subdivided, or omitted, and additional components can be added as needed. As a specific example, processor 240 can be divided into multiple processors, such as one or more central processing units (CPUs), one or more graphics processing units (GPUs), one or more neural networks, etc. Furthermore, although... Figure 2 An electronic device 200 configured as a mobile phone, tablet computer, or smartphone is shown, but the electronic device 200 may be configured to operate as other types of mobile or fixed devices.
[0054] Figure 3 An example network configuration according to an embodiment of this disclosure is shown. Figure 3 The network configuration examples shown are for illustrative purposes only. Figure 3 The one or more components shown may be implemented in a dedicated circuit configured to perform the function, or the one or more components may be implemented by one or more processors that execute instructions to perform the function.
[0055] Figure 3 A block diagram illustrating a network configuration including an electronic device 301 in a network environment 300 according to various embodiments is shown. As shown in FIG300, the electronic device 301 in the network environment 300 can communicate with an electronic device 302 via a first network 398 (e.g., a short-range wireless communication network), or with an electronic device 304 or a server 308 via a second network 399 (e.g., a long-range wireless communication network). The first network 398 and / or the second network 399 can be similar to... Figure 1 Network 102. Electronic devices 301, 302, and 304 can be similar to Figure 1 Any of the client devices 106-114, and including those with Figure 2 The components of electronic device 200 are similar to those of server 308. Figure 1 Server 104.
[0056] Electronic device 301 can be one of various types of electronic devices. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer equipment, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. According to embodiments of this disclosure, the electronic device is not limited to those described above.
[0057] According to one embodiment, electronic device 301 can communicate with electronic device 304 via server 308. According to one embodiment, electronic device 301 may include processor 320, memory 330, input device 350, sound output device 355, display device 360, audio module 370, sensor module 376, interface 377, haptic module 379, camera module 380, power management module 388, battery 389, communication module 390, subscriber identification module (SIM) 396, or antenna module 397. In some embodiments, at least one component (e.g., display device 360 or camera module 380) may be omitted from electronic device 301, or one or more other components may be added to electronic device 301. In some embodiments, some components may be implemented as a single integrated circuit. For example, sensor module 376 (e.g., fingerprint sensor, iris sensor, or illuminance sensor) may be implemented as embedded in display device 360 (e.g., display).
[0058] Processor 320 can run, for example, software (e.g., program 340) to control at least one other component (e.g., hardware or software component) coupled to processor 320 of electronic device 301, and can perform various data processing or calculations. According to one embodiment, as at least part of data processing or calculation, processor 320 can load commands or data received from another component (e.g., sensor module 376 or communication module 390) into volatile memory 332, process the commands or data stored in volatile memory 332, and store the resulting data in non-volatile memory 334.
[0059] According to one embodiment, processor 320 may include a main processor 321 (e.g., a central processing unit (CPU) or application processor (AP)) and an auxiliary processor 323 (e.g., a graphics processing unit (GPU), image signal processor (ISP), sensor hub processor, or communication processor (CP)) that is operationally independent of or integrated with the main processor 321. Additionally or alternatively, the auxiliary processor 323 may be adapted to consume less power than the main processor 321, or adapted to specifically perform a designated function. The auxiliary processor 323 may be implemented separately from the main processor 321 or as part of the main processor 321.
[0060] When the main processor 321 is inactive (e.g., in sleep mode), the auxiliary processor 323 may replace the main processor 321 in controlling at least some functions or states associated with at least one component of the electronic device 301 (e.g., display device 360, sensor module 376, or communication module 390). Alternatively, when the main processor 321 is active (e.g., running an application), the auxiliary processor 323 may work with the main processor 321 to control at least some functions or states associated with at least one component of the electronic device 301 (e.g., display device 360, sensor module 376, or communication module 390). According to one embodiment, the auxiliary processor 323 (e.g., an image signal processor or a communication processor) may be implemented as part of another component (e.g., camera module 380 or communication module 390) functionally associated with the auxiliary processor 323.
[0061] The memory 330 may store various data used by at least one component of the electronic device 301 (e.g., processor 320 or sensor module 376). The various data may include, for example, software (e.g., program 340) and input or output data for commands associated with it. The memory 330 may include volatile memory 332 or non-volatile memory 334.
[0062] Program 340 can be stored as software in memory 330. Program 340 may include, for example, an operating system (OS) 342, middleware 344, or application 346.
[0063] Input device 350 can receive commands or data from outside electronic device 301 (e.g., a user) that will be used by other components of electronic device 301 (e.g., processor 320). Input device 350 may include, for example, a microphone, mouse, keyboard, or digital pen (e.g., stylus). In some embodiments, input device 350 includes sensors for gesture recognition. For example, input device 350 may include... Figure 2 The measurement transceiver 270 is similar to other transceivers.
[0064] The sound output device 355 can output sound signals to the outside of the electronic device 301. The sound output device 355 may include, for example, a speaker or a receiver. The speaker can be used for general purposes such as playing multimedia or playing records, and the receiver can be used for incoming calls. According to one embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.
[0065] Display device 360 can visually provide information to the outside of electronic device 301 (e.g., to a user). Display device 360 may include, for example, a display, a holographic device, or a projector, and control circuitry for controlling a corresponding one of the display, holographic device, or projector. According to one embodiment, display device 360 may include touch circuitry adapted to detect touch, or sensor circuitry adapted to measure the intensity of the force caused by the touch (e.g., a pressure sensor). Display device 360 may be similar to... Figure 2 The monitor is 255.
[0066] The audio module 370 can convert sound into electrical signals and vice versa. According to one embodiment, the audio module 370 can acquire sound via an input device 350, output sound via a sound output device 355, or output sound via headphones of an external electronic device (e.g., electronic device 302) directly (e.g., wired) or wirelessly coupled to the electronic device 301.
[0067] Sensor module 376 can detect the operating state of electronic device 301 (e.g., power or temperature) or the environmental state outside electronic device 301 (e.g., user state), and then generate an electrical signal or data value corresponding to the detected state. According to one embodiment, sensor module 376 may include, for example, a gesture sensor, gyroscope sensor, atmospheric pressure sensor, magnetic sensor, accelerometer, grip sensor, proximity sensor, color sensor, infrared (IR) sensor, biometric sensor, temperature sensor, humidity sensor, or illuminance sensor. Sensor module 376 may be similar to... Figure 2 Sensor 265.
[0068] Interface 377 may support one or more specified protocols for enabling electronic device 101 to couple directly (e.g., wired) or wirelessly with external electronic device (e.g., electronic device 302). According to one embodiment, interface 377 may include, for example, a High Definition Multimedia Interface (HDMI), a Universal Serial Bus (USB) interface, a Secure Digital Card (SD) interface, or an audio interface.
[0069] Connection terminal 378 may include a connector via which electronic device 301 can be physically connected to an external electronic device (e.g., electronic device 302). According to one embodiment, connection terminal 378 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).
[0070] The tactile module 379 can convert electrical signals into mechanical stimuli (e.g., vibration or motion) or electrical stimuli, which a user can identify via touch or kinesthesia. According to one embodiment, the tactile module 379 may include, for example, a motor, a piezoelectric element, or an electrical stimulator.
[0071] Camera module 380 can capture still or moving images. According to one embodiment, camera module 380 may include one or more lenses, an image sensor, an image signal processor, or a flash.
[0072] The power management module 388 can manage the power supply to the electronic device 301. According to one embodiment, the power management module 388 can be implemented as at least part of, for example, a power management integrated circuit (PMIC).
[0073] Battery 389 can supply power to at least one component of electronic device 301. According to one embodiment, battery 389 may include, for example, a non-rechargeable primary battery, a rechargeable rechargeable battery, or a fuel cell.
[0074] The communication module 390 can support the establishment of a direct (e.g., wired) or wireless communication channel between the electronic device 301 and an external electronic device (e.g., electronic device 302, electronic device 304, or server 308), and perform communication via the established communication channel. The communication module 390 may include one or more communication processors (e.g., application processors (APs)) that can operate independently of the processor 320, and supports direct (e.g., wired) or wireless communication.
[0075] According to one embodiment, communication module 390 may include wireless communication module 392 (e.g., cellular communication module, short-range wireless communication module, or Global Navigation Satellite System (GNSS) communication module) or wired communication module 394 (e.g., local area network (LAN) communication module or power line communication (PLC) module). A corresponding one of these communication modules may communicate with an external electronic device via a first network 398 (e.g., a short-range communication network such as Bluetooth, Wi-Fi Direct, UWB, or Infrared Data Association (IrDA)) or a second network 399 (e.g., a long-range communication network such as a cellular network, the Internet, or a computer network (e.g., a LAN or a wide area network (WAN))). These various types of communication modules may be implemented as a single component (e.g., a single chip) or as multiple components separate from each other (e.g., multiple chips). Wireless communication module 392 may use subscriber information (e.g., International Mobile Subscriber Identity (IMSI)) stored in subscriber identification module 396 to identify and authenticate electronic device 301 in the communication network (e.g., the first network 398 or the second network 399).
[0076] Antenna module 397 can transmit signals or power to or from the outside of electronic device 301 (e.g., external electronic device). According to one embodiment, antenna module 397 may include an antenna comprising a radiating element made of conductive material or conductive pattern formed in or on a substrate (e.g., PCB).
[0077] According to one embodiment, antenna module 397 may include multiple antennas. In this case, for example, communication module 390 (e.g., wireless communication module 392) can select at least one antenna from the multiple antennas that is suitable for a communication scheme used in a communication network (such as a first network 398 or a second network 399). Signals or power can then be transmitted or received between communication module 390 and an external electronic device via the selected at least one antenna.
[0078] According to one embodiment, another component besides the radiating element (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as part of the antenna module 397.
[0079] At least some of the aforementioned components can be coupled to each other and transmit signals (e.g., commands or data) therebetween via peripheral communication schemes (e.g., bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industrial processor interface (MIPI)).
[0080] According to one embodiment, commands or data can be sent or received between electronic device 301 and external electronic device 304 via server 308 coupled to a second network 399. Each of electronic devices 302 and 304 can be a device of the same or different type as electronic device 301. According to one embodiment, all or some operations to be performed at electronic device 301 can be performed at one or more of the external electronic devices 302, 304, or 308. For example, if electronic device 301 can automatically or in response to a request from a user or another device perform a function or service, then instead of performing those functions or services, or in addition to performing those functions or services, electronic device 301 can also request one or more external electronic devices to perform at least a portion of those functions or services.
[0081] One or more external electronic devices receiving the request may perform at least a portion of the requested function or service, or additional functions or services related to the request, and transmit the result of the performance to electronic device 301. Electronic device 301 may provide the result as at least part of a response to the request, either with further processing or without further processing. For this purpose, cloud computing, distributed computing, or client-server computing technologies may be used, for example.
[0082] although Figure 3 An example of an electronic device 301 in a network environment 300 is shown, but it is possible to compare it with other devices. Figure 3 Make various changes. For example, Figure 3 The various components can be combined, further subdivided, or omitted, and additional components can be added as needed. As a specific example, processor 320 can be further divided into additional processors, such as one or more central processing units (CPUs), one or more graphics processing units (GPUs), one or more neural networks, etc. Furthermore, although... Figure 3 An electronic device 301 is shown that is configured as a mobile phone, tablet computer, or smartphone, but the electronic device 301 can be configured to be used as other types of mobile or fixed devices.
[0083] Figure 4A Example Figure 400 illustrates an embodiment of the present disclosure of determining whether a target device (such as target device 410a or target device 410b) is within the FoV of electronic device 402. Figure 4B An example coordinate system 420 is shown according to an embodiment of this disclosure. Electronic device 402, target device 410a, and target device 410b can be any of client devices 106-114, and may include [other components]. Figure 2 Electronic devices 200 and Figure 3 The internal components of electronic device 301 are similar to those of electronic device 402. The determination of whether target device 410a or target device 410b is within the FoV of electronic device 402 can be made by electronic device 402. Figure 1 The client devices 106-114 or the server 104 may be used to execute this.
[0084] In some embodiments, electronic device 402, target device 410a, and target device 410b may include transceivers, such as UWB transceivers. Any other suitable transceiver, receiver, or transmitter may be used. Distance information and AoA information are obtained based on signal exchange between electronic device 402, target device 410a, and target device 410b.
[0085] like Figure 4A As shown, the size and shape of the FoV determine whether an external electronic device (such as target device 410a or 410b) is within the FoV of another electronic device (such as electronic device 402). A portion of the environment surrounding electronic device 402 is shown as FoV 408a, while another portion of the environment surrounding electronic device 402 is shown as FoV outside 408b. Boundary 404 represents the approximate boundary between FoV 408a and FoV outside 408b. The line of sight 406 is the center of FoV 408a. The line of sight 406 may be the axis of maximum gain (e.g., maximum radiated power) of the antenna (e.g., directional antenna) of electronic device 402. In some cases, the axis of maximum gain coincides with the axis of symmetry of the antenna of electronic device 402. In some embodiments, electronic device 402 includes one or more phased array antennas that can electronically steer the beam, change the angle of the line of sight 406 by shifting the relative phase of radio waves emitted by different antenna elements, radiate the beam in multiple directions, and so on.
[0086] FoV of electronic devices (such as Figure 4AThe FoV 408a of the electronic device 402 is an angular range (e.g., around the line of sight 406) within which a target device (such as target devices 410a and 410b) can be defined as present (e.g., based on UWB measurements). The size and shape of the FoV can vary based on environmental conditions and the hardware of the electronic device itself.
[0087] In some embodiments, if a direct line-of-sight (LOS) exists between electronic device 402 and a target device (such as target device 410a or 410b), and distance and AoA measurements are good, the identification of the presence of a target in the FoV can be performed based on the AoA measurement. However, in many cases, measurements are compromised by multipath and non-line-of-sight (NLOS) scenarios. Anisotropic antenna radiation patterns can also lead to low-quality AoA measurements. For example, when the signal received from the direct path between the target device (such as target device 410b) is weak, the signal received from the reflected path may be strong enough, depending on the environment, to generate distance and AoA measurements. Distance and AoA measurements generated based on reflected signals will give incorrect results regarding the location of the target. For example, target device 410b may send a signal to electronic device 402. If electronic device 402 uses a reflected signal (instead of a direct signal), electronic device 402 may incorrectly determine that target device 410b is within the FoV 408a, rather than its actual location outside the FoV 408b. Therefore, embodiments of this disclosure address the problem of determining whether a target device is in the FoV of an electronic device when UWB measurements between the target device and the electronic device may not be very accurate.
[0088] like Figure 4B As shown, coordinate system 420 can be used to find the distance and relative angle between target device 410a and electronic device 402. The distance and relative angle between target device 410a and electronic device 402 correspond to distance measurement and AoA measurement when target device 410a is within the FoV of electronic device 402. Coordinate system 420 shows the azimuth and elevation angles between the two devices. As shown, the azimuth angle is the horizontal angle between electronic device 402 and target device 410a. Similarly, the elevation angle is the vertical angle between electronic device 402 and target device 410a. Coordinate system 420 shows the distance, r, (distance) between electronic device 402 and target device 410a.
[0089] Figure 5A , Figure 5B and Figure 5C Signal processing diagrams 500a, 500b, and 500c for FoV determination according to embodiments of the present disclosure are shown respectively. In some embodiments, signal processing diagrams 500a, 500b, and 500c may be generated by... Figure 1 The client devices 106-114 or server 104 can be used to perform this, and may include... Figure 2 Electronic devices 200 and Figure 3 The internal components of the electronic device 301 are similar to those of the internal components.
[0090] As described above, post-processing can be performed to improve the quality of measurements received from the transceiver and output FoV decisions for the target device, as well as smoothed distance and AoA. Figure 5A , Figure 5B and Figure 5C Various signal processing diagrams are described to improve the quality of measurements received from the transceiver and to determine whether the target device is within the FoV of the electronic device.
[0091] like Figure 5A As shown, signal processing diagram 500a includes an initial FoV classifier 510, a motion detection engine 520, a tracking filter 530, and a fine FoV classifier 540. In some embodiments, if a motion sensor is unavailable (such as when the electronics 200 does not include sensor 265), the motion detection engine 520 can be removed, such as by... Figure 5B Signal processing diagram 500b and Figure 5C The signal processing is shown in Figure 500c.
[0092] Signal processing diagrams 500a, 500b, and 500c receive inputs 502 and 504. Input 502 includes features (such as UWB features) based on the received signal transmitted between the electronic device and the target device. Input 504 includes measurements (such as distance measurement and AoA measurement) based on the received signal transmitted between the electronic device and the target device.
[0093] In some embodiments, features of input 502 are derived from the CIR. Example features may include, but are not limited to: the signal-to-noise ratio (SNR) of the first peak from the CIR (in dB, in the linear domain or with other relative strength indicators), the SNR of the strongest peak from the CIR (in dB, in the linear domain or with other relative strength indicators), the difference between the SNR of the strongest peak and the first peak (in dB, in the linear domain or with other relative strength indicators), the received signal strength (in dB or dBm), and the time difference between the first peak and the strongest peak (in nanoseconds, time samples, or other time-based metrics). Figure 6 The CIR curves depicting the first peak and the strongest peak are shown.
[0094] For example, Figure 6Example CIR curves 600a and 600b, representing the initial FoV determination according to embodiments of the present disclosure, are shown. In some embodiments, CIR curves 600a and 600b may be determined by... Figure 1 The client devices 106-114 or server 104 can be used to create and may include... Figure 2 Electronic devices 200 and Figure 3 The internal components of the electronic device 301 are similar to those of the internal components.
[0095] Figure 6 CIR plots 600a and 600b represent the CIR from two different antennas of an electronic device. For example, CIR plot 600a represents the CIR from one antenna of the electronic device, and CIR plot 600b represents the CIR from another antenna of the same electronic device. CIR plots 600a and 600b show the signal power of the received signal versus the tap index. Distance and AoA measurements can be calculated based on the earliest peak with sufficient SNR in the CIR plot.
[0096] Features derived from CIR curves 600a and 600b can be used for classification via an initial prediction of whether the target device is in the FoV of the electronic device (via the initial FoV classifier 510). The CIR features of input 502 may include: (i) the absolute intensity of one or more peaks in the CIR, typically represented by SNR, (ii) the signal strength difference between multiple peaks in the CIR, typically represented by SNR, (iii) the time difference between multiple peaks in the CIR, (iv) the phase relationship between multiple antennas used to generate AoA information, (v) other features derived from the amplitude and phase around the peaks, etc.
[0097] In some embodiments, input 502 may include various feature vectors. The initial FoV classifier 510 then uses the feature vectors from input 502 to generate an initial prediction of whether the target device is within the FoV of the electronic device. For example, the feature vector of input 502 may be represented as:
[0098] Feature vector = |SNRFirst, SNRMain, AoA] (1)
[0099] Feature vector = [SNRFirst, SNRMain-SNRFirst, AoA] (2)
[0100] Feature vector = [SNRFirst, SNRMain, ToAGapAoA] (3)
[0101] Feature vector = [SNRFirst, SNRMain-SNRFirst, ToAGap, AoA] (4)
[0102] Feature vector = [SNRFirst, SNRMain, ToAGap, AoA, RSSI (5)]
[0103] Feature vector = [SNRFirst, SNRMain, ToAGap, AoA, variance(AoA), variance(range), variance(SNRFirst)] (6)
[0104] Feature vector = [max(SNRFirst1, SNRFirst2), min(SNRMain1-SNRFirst1, SNRMain2SNRFirst2), AoA] (7)
[0105] Feature SNRFirst corresponds to Figure 6 The first peak intensity 612 (or the first peak intensity 622), and the characteristic SNRMain corresponds to Figure 6 The strongest peak intensity 614 (or strongest peak intensity 624). The feature ToAGap is the difference between the first peak intensity 612 and the strongest peak intensity 614. In some embodiments, the AoA measurement is estimated based on the phase differences from multiple antennas (including but not limited to SNRFirst, SNRMain, and ToAGap). If the electronic device is equipped with a single antenna or operates with only a single antenna, the AoA measurement may not be measured, and only a single CIR plot will be generated. Other features (such as Received Signal Strength Indication (RSSI)) may be included in input 502, such as those described in the feature vector of equation (5).
[0106] The features SNRFirst, SNRMain, and ToAGap correspond to the antennas of the electronic device. Therefore, if measurements of these features exist from multiple antennas, each of these features can be obtained from the same antenna, or it can be a function of these CIR features obtained from different antennas. The antennas using each of these features depend on the corresponding hardware characteristics suitable for classification.
[0107] Equations (2) and (4) describe the feature vector represented by the difference between the first peak intensity 612 (denoted as SNRFirst), the strongest peak intensity 614 (SNRMain), and AoA. Additionally, equation (4) describes the feature vector including features corresponding to the time difference (ToAGap) between the first peak intensity 612 and the strongest peak intensity 614.
[0108] In addition, the eigenvector SNRFirst of equation (7) i and SNRMain i The CIR characteristics are obtained from antenna i. Therefore, if there are two antennas, SNRFirst1 and SNRMain1 correspond to the first antenna, and SNRFirst2 and SNRMain2 correspond to the second antenna.
[0109] Figure 5A , Figure 5B and Figure 5C Input 504 includes measurements based on received signals transmitted between the electronic device and the target device. In some embodiments, input 504 includes UWB measurements. Measurements may include distance (splits in meters, centimeters, or other distance-based metrics) measurements and AoA (degrees, radians, or other angle-based metrics) measurements.
[0110] In some embodiments, the measurements of input 502 are used by the initial FoV classifier 510 for classical machine learning. For example, the measurements of input 502 include statistics such as mean and variance regarding the distance measurement and the original AoA measurement.
[0111] The initial FoV classifier 510 performs an initial FoV or FoV out-of-concept prediction about the target device based on the input 502 (including UWB features). In some embodiments, the initial FoV classifier 510 uses UWB measurements as well as features including distance and AoA, and other CIR features. In some embodiments, the initial FoV classifier 510 includes multiple initial FoV classifiers.
[0112] In some embodiments, the initial FoV classifier 510 uses deterministic logic, classical machine learning classifiers, deep learning classifiers, or combinations thereof to generate an initial prediction of the presence of a target device relative to an electronic device's FoV. In some embodiments, the initial FoV classifier 510 classifies the target device as either "FoV" or "out-of-FoV" based on input 502. Classifiers that can be used in the initial FoV classifier 510 include, but are not limited to, K-Nearest Neighbors (KNN), Support Vector Machines (SVM), Decision Trees, Random Forests, Neural Networks, Convolutional Neural Networks (CNN), Long Short-Term Memory (LSTM), etc.
[0113] Training data for the initial FoV classifier 510 can be collected by obtaining multiple measurements between an electronic device and a target device both within and outside the FoV in both LOS and NLOS scenarios. To add variation to the training data, measurements can be taken at different distances between the electronic device and the target device, up to the maximum usable distance. Furthermore, the data collection environment can be varied. For example, training data can be collected in an open space environment or in a cluttered environment prone to multipath propagation. Additional variation can also be added to the training data, such as by changing the tilt angles of the electronic device, the target device, or both devices. Similarly, the training data can include further variations such as those resulting from rotating the target device at different angles. Measurements can be labeled according to the application, depending on which scenario or setting needs to be labeled as FoV and which scenario or setting should be outside the FoV.
[0114] The initial FoV classifier 510 can use certain features from the input 502 (such as SNRFirst, SNRMain, ToAGap, etc.) in several ways to predict when the target device is in the FoV of the electronic device. For example, when there is a direct signal path between the electronic device and the target device (such as in LOS or FoV scenarios), SNRFirst and SNRMain are close, and ToAGap is close to zero. In contrast, in NLOS or FoV scenarios, the first peak intensity 612 representing the direct signal path is likely to have a lower amplitude and is far from the strongest peak intensity 614 representing the reflected signal path. Therefore, in NLOS or FoV scenarios, SNRFirst is likely to be less than SNRMain, and ToAGap is likely to be larger. In cases of poor signal quality, the first peak intensity 612 and the strongest peak intensity 614 are prone to drift and are likely to have smaller amplitudes, so the difference between SNRFirst and SNRMain, as well as ToAGap, are good indicators of whether the target device is in the FoV of the electronic device.
[0115] The variance of some features over a sliding window (such as the variance of distance, AoA, and SNRFirst) also provides useful information for the initial FoV classifier. For example, if the window size is K, a buffer is maintained to store the first K measurements of the features, the variance of these measurements is calculated, and it is used in the feature vector. In addition to variance, other metrics that can measure the distribution of features can also be used.
[0116] In some embodiments, the initial FoV classifier 510 includes an SVM classifier for classifying the target device as either in FoV or outside FoV using the feature vectors of equation (2). Alternatively, the initial FoV classifier 510 includes an SVM classifier with a Gaussian kernel for classifying the target device as either in FoV or outside FoV using the feature vectors of equation (2).
[0117] SVM training involves finding a hyperplane in an N-dimensional feature space that separates data points from two classes. For data point x... i If y i If ∈{1, -1}, then it represents the corresponding label, where the positive label represents FoV and the negative label represents outside FoV. The optimization problem of SVM is defined as shown in equation (8), such that equations (9) and (10) are satisfied.
[0118]
[0119] y i (w T φ(x i )+b)≥1-ξ i For all i (9)
[0120] ξ i ≥0, for all i (10)
[0121] Here, C > 0 represents the penalty for the error term, and Φ(x) i ) is the data point x i Projection to a higher-dimensional space.
[0122] One way to solve this minimization problem is by solving the dual problem of the following equation (11) such that equations (12) and (13) are satisfied.
[0123]
[0124] ∑ i λ i y i =0 (12)
[0125] 0≤λ i ≤C, for all i (13)
[0126] If the training data in the positive and negative classes are imbalanced, the error between the two classes can be evenly distributed by applying different penalties to the positive and negative classes and modifying the minimization problem as shown in equation (14) so that equations (15) and (16) are satisfied. For example, if the data in the two classes are imbalanced, the error between the two classes can be evenly distributed by penalizing the two classes with a value inversely proportional to the amount of data in each class. One example is using a penalty value as shown in equation (17).
[0127]
[0128] y i (w T φ(x i )+b)≥1-ξ i For all i (15)
[0129] ξ i ≥0, for all i (16)
[0130]
[0131] In some embodiments, if the FoV features in LOS and NLOS are highly different, the initial FoV classifier 510 may use a multi-class classifier that can distinguish the following classes: (i) LOS FoV, (ii) NLOS FoV, (iii) LOS FoV out of range, and (iv) NLOS FoV out of range. In some embodiments, the initial FoV classifier 510 uses a multi-class classifier to label (i) LOS FoV, (ii) NLOS FoV, and (iii) NLOS FoV out of range. In some embodiments, the initial FoV classifier 510 uses a multi-class classifier, as follows: Figure 7 As described in [the text].
[0132] In some embodiments, if outside-FoV data is unavailable or insufficient for training, a classifier, such as a support vector data description (SVDD) classifier, can be trained using only the FoV data.
[0133] If the initial FoV classifier 510 lacks satisfactory performance due to its feature vectors (of input 502) not covering the feature distributions in certain environments (due to distance and variances of SNRFirst, AoA, etc.), a more directional classifier based on additional manual logic can be included in the initial FoV classifier 510 to correct the decisions of the first classifier. The variance of the features can provide information about whether the target is in or outside the FoV. When the target is in the FoV, the features change little or smoothly, while in scenes outside the FoV, these features fluctuate more. Thus, the manual logic can utilize information about the feature distribution to correct the decisions of the initial FoV classifier 510.
[0134] In other words, the initial FoV classifier 510 can determine the decision to change the classifier based on the variance of the input. For example, if the output of the initial FoV classifier 510 is FoV outside, and the variance of AoA is below a threshold when AoA ∈ FoV, then the initial FoV classifier 510 can determine to change the output (from FoV outside) to FoV. Similarly, if the output of the initial FoV classifier 510 is FoV, but the variance of AoA is above a threshold and the variance of the distance is above a distance variance threshold, then the initial FoV classifier 510 can determine to change the output (from FoV outside) to FoV outside.
[0135] For example, if the output of the initial FoV classifier 510 is FoV out of the box, but ToAGap is below a threshold when AoA∈FoV, then the initial FoV classifier 510 can determine to change the output (from FoV out of the box) to FoV. Similarly, if the output of the initial FoV classifier 510 is FoV out of the box, but SNRMain-SNRFirst is below its corresponding threshold when AoA∈FoV, then the initial FoV classifier 510 can determine to change the output (from FoV out of the box) to FoV. Alternatively, if the output of the initial FoV classifier 510 is FoV, but the variance of SNRFirst is above a threshold (or the variance of the distance is above a threshold), then the initial FoV classifier 510 can determine to change the output (from FoV out of the box) to FoV out of the box.
[0136] In some embodiments, the initial FoV classifier 510 uses a sliding window to smooth the classifier's output and remove outliers. For example, the initial FoV classifier 510 may label a target device as within or outside the FoV and generate a probability (confidence score) associated with the label. The sliding window may average the output probabilities and compare this average to a threshold. Based on this comparison, the initial FoV classifier 510 generates an initial prediction of whether the target device is within the FoV of the electronic device. This is explained below. Figure 8A The description is as follows. Similarly, a sliding window can average the labels and compare this average with a threshold. Based on this comparison, the initial FoV classifier 510 generates an initial prediction of whether the target device is within the FoV of the electronic device. This is described below. Figure 8B The description is as follows. That is, by averaging the probabilities, labels, or both, outliers are removed and the final result of the initial FoV classifier 510 is smoothed.
[0137] Motion detection engine 520 determines whether motion exceeding a threshold is detected in the electronic device. When motion detection engine 520 determines that motion exceeds the threshold, it can then initiate a reset. For example, motion detection engine 520 monitors measurements from one or more motion sensors (such as a gyroscope, accelerometer, magnetometer, inertial measurement unit, etc.) of the electronic device. When detected motion exceeds the threshold, motion detection engine 520 can initiate a reset operation. For example, sudden motion may cause tracking filter 530 to drift, which requires time for tracking filter 530 to converge again. Therefore, when detected motion exceeds the threshold, motion detection engine 520 can initiate a reset operation to reset the tracking filter in tracking filter 530. In some embodiments, such as when the electronic device lacks motion sensors, motion detection engine 520 is omitted. Figure 5B Signal processing diagram 500b and Figure 5C The signal processing diagram 500c shows the signal processing without the motion detection engine 520. Figure 11 The motion detection engine 520 is described in more detail.
[0138] If electronic devices are equipped with motion sensors (such as those included in...) Figure 3 The motion sensor in sensor module 376 or included in Figure 2 If the motion sensor in sensor 265 is used, the information from the sensor about the movement and orientation changes of the device can be used in the tracking filter to further improve the quality of distance measurement and AoA measurement.
[0139] Tracking filter 530 uses one or more tracking filters to smooth the distance and AoA measurements received via input 504. In some embodiments, more than one tracking filter may be used, with each tracking employing different assumptions. Example tracking filters include Kalman filters, extended Kalman filters, particle filters, etc. Tracking filter 530 generates output 532. Output 532 may include smoothed distance (in meters, centimeters, or other distance-based metrics). Output 532 may also include smoothed AoA (in degrees, radians, or other angle-based metrics). Figure 9A , Figure 9B , Figure 9C and Figure 9D The tracking filter 530 is described in more detail.
[0140] The refined FoV classifier 540 combines the decision 512 from the initial FoV classifier 510 with the tracking filter 530 to generate an output 542. For example, the refined FoV classifier 540 combines the decision 512 from the initial FoV classifier 510 with the output 532 generated by the tracking filter 530 to generate an output 542. The output 542 indicates whether the target device is within or outside the FoV of the external electronic device. In some embodiments, the decision of the refined FoV classifier 540 is a numerical value. For example, a value of one (1) indicates that the target device is within the FoV of the electronic device, and a value of negative one (-1) indicates that the target device is outside the FoV of the electronic device (not within the FoV). In some embodiments, the output 542 also includes a FoV confidence level indicating the confidence or probability that the target device, as determined by the refined FoV classifier 540, is within or outside the FoV. The confidence score of the decision of the refined FoV classifier 540 is based on the confidence scores from the initial FoV classifier 510 and the tracking filter 530. Figure 10 The fine FoV classifier 540 is described in more detail.
[0141] In some embodiments, the input and output rates of the post-processor can be the same as the rate of the ranging measurement.
[0142] Figure 5C Signal processing diagram 500c is similar to signal processing diagrams 500a and 500b, but omits the fine FoV classifier 540 and the motion detection engine 520. For example... Figure 5C As shown in the signal processing diagram 500c, the tracking filter 530 receives input 504 (distance measurement and AoA measurement). The tracking filter 530 smooths the AoA and distance measurements and generates an output 532 that includes smoothed distance and smoothed AoA. These filtered (smoothed) measurements, along with other UWB features (via input 502), are provided to an initial FoV classifier 510. The initial FoV classifier 510 predicts whether these measurements originate from a direct path (or reflection) and whether the target is within (or outside) the FoV of the electronic device, based on the filtered (smoothed) measurements (generated by the tracking filter 530) and the UWB features (via input 502).
[0143] Figure 7 An example method 700 for selecting a classifier for initial FoV determination using an initial FoV classifier 510, according to an embodiment of the present disclosure, is shown. Method 700 is described as being composed of… Figure 1The client devices 106-114 can be used for implementation, and may include those with Figure 2 Electronic devices 200 and Figure 3 The internal components of electronic device 301 are similar to those of other internal components. However, as... Figure 7 The method 700 shown can be used with any other suitable electronic device and in any suitable system.
[0144] As shown in method 700, the initial FoV classifier 510 initially labels the scene as either LOS or NLOS. Then, another classifier trained on the initial FoV classifier 510 in that specific scene labels the target as either in FoV or outside FoV. That is, as shown in method 700, the initial FoV classifier 510 uses three different classifiers. The first classifier is used for LOS / NLOS detection, the second classifier is used for FoV / FoV outside detection in LOS scenes, and the third classifier is used for FoV / FoV outside detection in NLOS scenes.
[0145] In step 702, the initial FoV classifier 510 labels the target device as either LOS or NLOS based on input 502. In step 704, the initial FoV classifier 510 determines whether the classifier's classification of the target device in step 702 is LOS. When the target device is classified as LOS, in step 706, the initial FoV classifier 510 selects a classifier trained for LOS scenarios. The selected classifier in step 706 then determines whether the target device is within or outside the FoV of the electronic device. Alternatively, when the target device is classified as NLOS, in step 708, the initial FoV classifier 510 selects a classifier trained for NLOS scenarios. The selected classifier in step 708 then determines whether the target device is within or outside the FoV of the electronic device.
[0146] although Figure 7 An example method is shown, but it is possible to modify it. Figure 7 Various changes can be made. For example, although method 700 is shown as a series of steps, these steps can overlap, occur in parallel, occur in different orders, or occur multiple times. In another example, steps can be omitted or replaced by other steps.
[0147] Figure 8A and Figure 8B Example moving average filter diagrams 800a and 800b for initial FoV prediction are shown according to embodiments of the present disclosure. In some embodiments, the moving average filter diagrams 800a and 800b can be... Figure 1 Any of the client devices 106-114 or the server 104.
[0148] like Figure 8A As shown, classifier output 802 represents the probability that the target device is within the FoV range at different time intervals, as determined by the classifier of the initial FoV classifier 510. A sliding window moves along classifier output 802 and averages the probability values within the window. For example, at the first time step, sliding window 810a averages the first five probability values and outputs the average in mean output 804, as shown. At the second time step, sliding window 810b moves one value to the right and averages the five probability values, outputting the average in mean output 804, as shown. This continues until sliding window 810n averages the last five probability values and outputs the average in mean output 804, as shown. Note that in other embodiments, the sliding window may have different sizes.
[0149] Then, each value in the mean output 804 is compared to a threshold. If the mean probability is greater than the threshold, the initial FoV classifier 510 predicts that the output is in FoV. Alternatively, if the mean probability is less than the threshold, the initial FoV classifier 510 predicts that the output is outside FoV. Figure 8A As shown, the threshold is 0.5. For example, if each value of the mean output 804 is higher than 0.5, the output is a value of 1, thus indicating that the target device is in the FoV of the electronic device.
[0150] like Figure 8B As shown, classifier output 820 represents a prediction of whether an instance of the target device at different times is within the Field of View (FOV) of the electronic device (as indicated by value 1) or outside the FOV (as indicated by value -1). In some embodiments, classifier output 820 is Figure 8A The output is 806.
[0151] The sliding window moves along the classifier output 820 and averages the values within the window. For example, at the first time step, sliding window 820a averages the first five values and outputs the average in the majority vote output 830, as shown. At the second time step, sliding window 810b moves one value to the right and averages the five probability values, outputting the average in the majority vote output 830, as shown. This continues until sliding window 820n averages the last five probability values and outputs the average in the majority vote output 830, as shown. Note that in other embodiments, the sliding window may have different sizes.
[0152] Figure 9A , Figure 9B , Figure 9C and Figure 9DExample methods 900a, 900b, 900c, and 900d for various tracking filter operations according to embodiments of the present disclosure are shown respectively. Methods 900a, 900b, 900c, and 900d are described as being performed by… Figure 1 The client devices 106-114 can be used for implementation, and may include those with Figure 2 Electronic devices 200 and Figure 3 The internal components of electronic device 301 are similar to those of other internal components. However, respectively, as... Figure 9A , Figure 9B , Figure 9C and Figure 9D The methods 900a, 900b, 900c and 900d shown can be used with any other suitable electronic device and in any suitable system.
[0153] Figure 5A , Figure 5B and Figure 5C The tracking filter 530 can use one or more different tracking filters to improve the quality of the measurement. Example tracking filters include Kalman filters, extended Kalman filters (EKF), EKFs with adaptive values, particle filters, etc.
[0154] In some embodiments, the EKF is used to track UWB measurements. The state vector is defined in equation (18) below. In equation (18), x t y t z t It is the three-dimensional position of the electronic device relative to the target device. The observation is a function defined in equation (19). The observation in equation (19) depends on the interface and design choices. For example, as defined in equation (20) below, the observation can correspond to UWB measurements of distance, azimuth angle (AoA), and elevation angle (AoA). The functions used to map the measurements and the state can be defined in equations (21), (22), and (23) below.
[0155] x t =[x t y t , z t ] T (18)
[0156] z t =f(x) t (19)
[0157]
[0158]
[0159]
[0160]
[0161] When the observation is defined as equation (20), the mapping function between the measurement and the state is defined in equations (21) to (23) above and in equations (24) and (25) below. The state transition equation is defined in equation (26) below. Note that the expression w in equation (26) t The process noise is used, and the state transition model A is an identity matrix. In some embodiments, if the electronic device is equipped with a motion sensor (such as sensor 265 or sensor module 376 in Figure 23), the rotation matrix can be used as the state matrix A (instead of the identity matrix). The rotation matrix can be used to further improve the quality of the measurement.
[0162]
[0163]
[0164] x t =Ax t-l +w t (26)
[0165] To address the shortcomings in motion models, the representation of the process noise covariance, Q, can be tuned based on real data. If P denotes the error covariance matrix, R denotes the measurement noise covariance matrix, and K denotes the Kalman gain, then R (the measurement noise covariance matrix) is determined using real data or measurements. One way to determine R is to obtain measurements in a scenario where the basic facts are known and calculate the variance of the difference between the measurements and the basic facts. The Jacobian matrix is described in equation (27-1) below. Alternatively, if the measurement is r... t , az t el t The Jacobian matrix is as described in equation (27-2). The Jacobian matrix described in equation (29) below describes the mapping function between measurement and state. By using the current measurement (Equation (20) above) and the state [x0, y0, z0) T The mapping function between (equation (18) above) and the current measurement Calculate the state [x0, y0, z0] T The filter is initialized using this method, and the error covariance matrix is initialized to the identity matrix. The Jacobian matrix can be used to calculate the Kalman gain K.
[0166]
[0167]
[0168]
[0169]
[0170] like Figure 9A As shown, method 900a describes an extended Kalman filter for tracking distance and AoA measurements. In step 902, the tracking filter 530 determines whether a stopping criterion has been met. The stopping criterion can be based on whether a new measurement has been received. For example, the stopping criterion has not been met as long as a new measurement has been received.
[0171] If it is determined that the stopping criterion has not been met, in step 904, the tracking filter 530 checks the state. Perform the prediction as shown in equation (30), and adjust the error covariance matrix. Perform the prediction as shown in equation (31).
[0172]
[0173]
[0174] In step 906, the tracking filter 530 identifies the Jacobian matrix as described in equations (27)-(29) above. In step 910, the tracking filter 530 uses the Jacobian matrix (from step 906) to identify the Kalman gain as described in equation (32) below.
[0175]
[0176] In step 912, the tracking filter 530 identifies innovation. t As shown in equation (33) below. The information is the difference between the measured value and the predicted value.
[0177]
[0178] In step 914, the tracking filter 530 updates its state as shown in equation (34) and updates its error covariance matrix as shown in equation (35). In step 920, the tracking filter 530 increments its time and returns to step 902.
[0179]
[0180]
[0181] In some embodiments, the process noise covariance Q, the measurement noise covariance matrix R, or both can be modified. For example, the process noise covariance Q can be adaptively adjusted based on the information in equation (33) above, which is the difference between the predicted and measured values. If α∈[0,1] represents the forgetting factor used to update Q, then Q is updated using the information in equation (33), as described in equation (36) below.
[0182]
[0183] Similarly, the measurement noise covariance matrix R can be adaptively adjusted based on the residual values, as described in equation (37) below. The residual values are the differences between the updated values and the measured values. If β∈[0,1] represents the forgetting factor used to update R, then the residual terms are used to update R, as described in equation (38) below.
[0184] ε t =z t -f(x t (37)
[0185]
[0186] like Figure 9B As shown, method 900b describes an extended Kalman filter with adaptive Q and R for tracking distance and AoA measurements. In some embodiments, both Q and R are adaptive. In other embodiments, either Q or R is adaptive. When both Q and R are adaptive, steps 908 and 916 are performed. When only Q is adaptive (and R is not adaptive), step 916 is performed and step 908 is omitted. Similarly, when only R is adaptive (and Q is not adaptive), step 908 is performed and step 916 is omitted.
[0187] In step 902, the tracking filter 530 determines whether a stopping criterion has been met. If it is determined that the stopping criterion has not been met, in step 904, the tracking filter 530 adjusts the state. Perform the prediction as shown in equation (30), and adjust the error covariance matrix. The prediction is performed as shown in equation (31). In step 906, the tracking filter 530 identifies the Jacobian matrix as described in equations (27)-(29) above. In step 908, the tracking filter 530 updates the measurement noise covariance matrix R based on the residual values of equation (37). In step 910, the tracking filter 530 uses the Jacobian matrix calculated in step 906 to identify the Kalman gain as described in equation (32). In step 912, the tracking filter 530 identifies the innovation y tAs shown in equation (33), the innovation is the difference between the measured value and the predicted value. In step 914, the tracking filter 530 updates the state as shown in equation (34) and updates the error covariance matrix as shown in equation (35). In step 916, the tracking filter 530 updates the process noise covariance Q based on the innovation value of equation (33) (from step 912). In step 918, the tracking filter 530 updates the residuals based on equation (37). In step 920, the tracking filter 530 increments the time and returns to step 902.
[0188] In some embodiments, if the device's orientation change is unavailable, the rotation matrix or state transition matrix A is set as an identity matrix, as described above. When information about the device's motion is unavailable, the tracking filter 530 uses a Kalman filter to track the target device. The state of the Kalman filter is modeled as described in equation (39). State transition matrix A = I. Measurements obtained from UWB measurements of distance, azimuth angle AoA, and elevation angle AoA are described in equation (40). Measurement matrix H = I.
[0189]
[0190] z t =[r t , az t ,el t ] T (40)
[0191] like Figure 9C As shown, method 900c describes a Kalman filter used for tracking distance and AoA measurements. In step 902, the tracking filter 530 determines whether a stopping criterion has been met. If it is determined that the stopping criterion has not been met, in step 904, the tracking filter 530 adjusts the state. Perform the prediction as shown in equation (30), and adjust the error covariance matrix. The prediction is performed as shown in equation (31). In step 910a, the tracking filter 530 identifies the Kalman gain as described in equation (41) below. In step 912a, the tracking filter 530 identifies the innovation y t As shown in equation (42) below. In step 914a, the tracking filter 530 updates its state as shown in equation (34) and updates its error covariance matrix as shown in equation (43). In step 920, the tracking filter 530 increments its time and returns to step 902.
[0192]
[0193]
[0194]
[0195] In some embodiments, during NLOS scenarios, UWB measurements between the electronic device and the target device may be lost (causing the electronic device to not receive a signal from the target device). When addressing measurement loss, a motion sensor (if available) can be used to detect changes in the orientation of the electronic device to track AoA and distance. When no UWB measurements are available, the tracking filter 530 can change the innovation term to zero.
[0196] like Figure 9D As shown, method 900d describes tracking with partial measurement loss. In step 902, the tracking filter 530 determines whether a stopping criterion has been met. If it is determined that the stopping criterion has not been met, in step 904, the tracking filter 530 adjusts the state... Perform the prediction as shown in equation (30), and adjust the error covariance matrix. The prediction is performed as shown in equation (31). In step 906, the tracking filter 530 identifies the Jacobian matrix as described in equations (27)-(29) above. In step 910, the tracking filter 530 uses the Jacobian matrix calculated in step 906 to identify the Kalman gain as described in equation (32). In step 911, the tracking filter 530 determines whether the UWB measurement is lost (or not acquired). If the UWB measurement is lost, then in step 912c, the tracking filter 530 assigns the innovation value y t Set to zero. Alternatively, if the UWB measurement is received (not lost), then in step 912, the tracking filter 530 identifies the new information y. t As shown in equation (33). As mentioned above, the innovation value y t This is the difference between the measured value and the predicted value. In step 914, the tracking filter 530 updates its state as shown in equation (34) and updates the error covariance matrix as shown in equation (35). In step 920, the tracking filter 530 increments the time and returns to step 902.
[0197] although Figure 9A , Figure 9B , Figure 9C and Figure 9D An example process is shown, but it is possible to modify it. Figure 9A , Figure 9B , Figure 9C and Figure 9D Various changes can be made. For example, although method 900a is shown as a series of steps, the steps can overlap, occur in parallel, occur in different orders, or occur multiple times. In another example, a step can be omitted or replaced by another step.
[0198] The FoV decision from the initial FoV classifier 510 and the tracking filter 530 can be associated with a confidence value that reflects the probability, or confidence, that the current measurement is from a target within the FoV. For example, the FoV confidence of the initial FoV classifier 510 could be the probability that the target is within the FoV. For instance, if the initial prediction indicates that the target device is closer to the FoV boundary, the initial FoV classifier 510 has a lower confidence. Alternatively, if the initial prediction indicates that the target device is farther from the FoV boundary, the initial FoV classifier 510 has a higher confidence. For an SVM classifier, this probability is inversely proportional to the measured distance to the hyperplane separating the FoV from the FoV's outer edge. The SVM confidence from the initial FoV classifier 510 is called SVMConfidence.
[0199] Similarly, the tracking filter operation 530 also outputs confidence based on the estimator. For example, the EKF confidence is calculated using the error covariance matrix described in equation (44) below.
[0200]
[0201] Here, C is a constant parameter, and trace(P) t ) is a square matrix P t The trace. In other words, the EKF confidence level is a confidence level associated with the tracking state.
[0202] Figure 10 An example method 1000 for determining whether a target device is within the Field of View (FoV) of an electronic device, according to an embodiment of the present disclosure, is illustrated. Method 1000 is described as being composed of… Figure 1 The client devices 106-114 can be used for implementation, and may include those with Figure 2 Electronic devices 200 and Figure 3 The internal components of electronic device 301 are similar to those of other internal components. However, as... Figure 10 The method 1000 shown can be used with any other suitable electronic device and in any suitable system.
[0203] The refined FoV classifier 540 ultimately determines whether the target device is within the FoV of the electronic device by combining the decision of the initial FoV classifier 510 with the tracking filter operation 530. In some embodiments, SVMConfidence is compared to a predefined threshold. If it is above the threshold and both the input AoA and the EKF output AoA are within the FoV, the final FoV decision specifies that the target device is within the FoV of the electronic device; otherwise, the final FoV decision specifies that the target device is outside the FoV of the electronic device.
[0204] In step 1002, the electronic device determines whether a stop criterion has been met. The stop criterion can be based on whether a new measurement has been received. For example, the stop criterion has not been met as long as a new measurement is received.
[0205] If the stopping criterion is not met, the electronic device generates an initial prediction of the presence of the target device's FoV relative to the electronic device in step 1004. The electronic device can use Figure 5A , Figure 5B and Figure 5C An initial FoV classifier 510 is used. The initial predictions may be based on an SVM. In some embodiments, the electronic device generates confidence scores for the initial predictions.
[0206] In step 1006, the electronic device performs a tracking filter operation, such as... Figure 5A , Figure 5B and Figure 5C The tracking filter 530. Tracking filter operation can be used in... Figures 9A-9D The various filters described in the method. Tracking filter operations can smooth distance and AoA information. In some embodiments, the electronic device generates a confidence score output for the tracking filter.
[0207] The electronic device performs fine-grained FoV classification to determine whether a target device is within or outside the electronic device's FoV. This determination can be based on AoA information, smoothed AoA information, and an initial prediction of the presence of an external electronic device relative to the electronic device's FoV. In some embodiments, the electronic device uses... Figure 5A and Figure 5B The sophisticated FoV classifier 540 determines whether the target device is within or outside the FoV of the electronic device.
[0208] To determine whether the target device is within or outside the FoV of the electronic device, in step 1010, the fine FoV classifier initially determines whether the smoothed AoA from the tracking filter output in step 1006 is within the FoV. If the smoothed AoA of the target device is not within the FoV, the fine FoV classifier 540 determines that the target device is not within the FoV (step 1018). Alternatively, when determining that the smoothed AoA indicates that the target device is within the FoV, the fine FoV classifier 540 determines whether the input AoA is within the FoV in step 1012. The input AoA is the AoA measurement input to the tracking filter in step 1006. If the input AoA of the target device is not within the FoV, the fine FoV classifier 540 determines that the target device is not within the FoV (step 1018). Alternatively, upon determining that the input AoA indicates the target device is within the FoV, in step 1014, the refined FoV classifier 540 compares the confidence score generated in step 1004 with a threshold. When the confidence score is less than the threshold, the refined FoV classifier 540 determines that the target device is not within the FoV (step 1018). Alternatively, upon determining that the confidence score is greater than the threshold, the refined FoV classifier 540 determines that the target device is within the FoV of the electronic device (step 1016). In some embodiments, the confidence score of the tracking filter (in step 1006) is compared with a threshold instead of the initial predicted confidence score (in step 1004) to determine whether the target device is within the FoV of the electronic device. In other embodiments, the confidence score of the tracking filter (in step 1006) may be compared with both a threshold and the initial predicted confidence score (in step 1004) to determine whether the target device is within the FoV of the electronic device. In step 1020, the tracking filter 530 increases the time and returns to step 1002.
[0209] In some embodiments, when determining whether a target device is within or outside the FoV of an electronic device, a fine FoV classifier 540 can remove outliers and smooth the FoV determination. The fine FoV classifier 540 can utilize a sliding window, such as... Figure 8A Figure 800a and Figure 8B Figure 800b.
[0210] For example, the outputs of steps 1016 and 1018 over a period of time are shown as follows Figure 8BThe classifier output is 820. At the first time step, sliding window 820a averages the first five values and outputs the average in the majority vote output 830, as shown. At the second time step, sliding window 810b shifts one value to the right and averages the five probability values, and outputs the average in the majority vote output 830, as shown. This continues until sliding window 820n averages the last five probability values and outputs the average in the majority vote output 830, as shown. Note that in other embodiments, the sliding window may have different sizes.
[0211] In some embodiments, a confidence score for a refined FoV classifier 540 is generated. The confidence score for the refined FoV classification is based on the confidence score generated in step 1004 (via the initial FoV classifier 510) and the confidence score generated in step 1006 (via the tracking filter 530). The confidence score for generating the refined FoV classifier 540 is described in equation (45) below, where SVMConfidence is the confidence score generated in step 1004 (via the initial FoV classifier 510) and EKFConfidence is the confidence score generated in step 1006 (via the tracking filter 530).
[0212]
[0213] although Figure 10 An example method is shown, but it is possible to modify it. Figure 10 Various changes can be made. For example, although method 1000 is shown as a series of steps, these steps can overlap, occur in parallel, occur in different orders, or occur multiple times. In another example, steps can be omitted or replaced by other steps.
[0214] Figure 11 An example method 1000 for performing a reset due to motion, according to an embodiment of the present disclosure, is shown. Method 1100 is described as being performed by... Figure 1 The client devices 106-114 can be used for implementation, and may include those with Figure 2 Electronic devices 200 and Figure 3 The internal components of electronic device 301 are similar to those of other internal components. However, as... Figure 11 The method 1100 shown can be used with any other suitable electronic device and in any suitable system.
[0215] like Figure 5A As shown, signal processing diagram 500a includes a motion detection engine 520. When the detected motion exceeds a threshold, the motion detection engine 520 can initiate a reset operation.
[0216] Sometimes the movement of electronic devices can change drastically. In such cases, after a sudden movement of the electronic device, the tracking filter 530 operating the tracking filter may require a considerable amount of time to converge the measurement. Accordingly, embodiments of this disclosure enable the electronic device to reset the state of the filter upon detecting a drastic or sufficiently large movement.
[0217] For example, the variance of acceleration can be obtained from the motion sensor of the electronic device. Motion detection engine 520 determines whether the motion of the electronic device exceeds a threshold. When one or more motion samples exceed the threshold, motion detection engine 520 triggers a reset operation. Depending on whether the output (initial prediction) of the initial FoV classifier 500 is FoV or not, motion detection engine 520 performs a soft (partial) reset or a hard (full) reset. In a soft reset, the state of tracking filter 530 (of tracking filter operation) is reinitialized using the current distance measurement and AoA measurement based on the mapping function between state and measurement, and the error covariance matrix is reinitialized to an identity matrix. In a hard reset, the state of the tracking filter and the error covariance matrix are reinitialized in the same manner as in a soft reset, and the buffers are reset. The buffers being reset include those containing the initial prediction of the initial FoV classifier 510 in the event of a majority vote on the output. Figure 8B Alternatively, the buffers to be reset include: (i) the confidence score of the initial FoV classifier 510 (such as SVMConfidence) after average probability thresholding of the classifier output. Figure 8A (ii) the output decision buffer of the fine FoV classifier 540 in the case of majority voting on the output. Figure 8B ).
[0218] like Figure 11 As shown, in step 1102, the electronic device determines whether a stop criterion has been met. The stop criterion can be based on whether a new measurement has been received. For example, the stop criterion will not be met as long as a new measurement is received.
[0219] If the stopping criterion is not met, the electronic device generates an initial prediction of the presence of the target device's FoV relative to the electronic device in step 1104. The electronic device can use Figure 5A , Figure 5B and Figure 5C An initial FoV classifier 510 is used. The initial predictions may be based on an SVM. In some embodiments, the electronic device generates confidence scores for the initial predictions.
[0220] The electronic device determines whether the detected motion requires resetting the tracking filter 530, buffer, or both of the tracking filter operation. In some embodiments, the electronic device uses a motion detection engine 520 to determine whether a reset should be performed. In step 1108, the motion detection engine 520 detects motion and compares the variance of the motion's acceleration to a threshold.
[0221] When the variance of the acceleration exceeds a threshold, in step 1110, the motion detection engine 520 determines whether the output of step 1104 (such as the initial prediction of the coarse FoV filter 510) indicates that the target device is within the FoV of the electronic device. When the initial prediction of the coarse FoV filter 510 indicates that the target device is within the FoV of the electronic device, the motion detection engine 520 performs a soft reset (step 1112). Alternatively, when the initial prediction of the coarse FoV filter 510 indicates that the target device is outside the FoV of the electronic device, the motion detection engine 520 performs a hard reset (step 1114).
[0222] When the variance of the acceleration is less than a threshold, or after performing a reset (such as a soft reset in step 1112 or a hard reset in step 1114), the electronic device performs the tracking filter operation in step 1116. In step 1116, the electronic device performs the tracking filter operation, such as... Figure 5A , Figure 5B and Figure 5C The tracking filter 530. Tracking filter operation can be used in... Figures 9A-9D The various filters described in the method. Tracking filter operations can smooth distance and AoA information. In some embodiments, the electronic device generates a confidence score output for the tracking filter.
[0223] Electronic devices can use Figure 5A and Figure 5B A fine-grained FoV classifier 540 is used to determine whether the target device is within or outside the FoV of the electronic device based on the outputs of step 1104 and step 1116. In step 1118, the tracking filter 530 increments the time and returns to step 1102.
[0224] although Figure 11 An example method is shown, but it is possible to modify it. Figure 11 Various changes can be made. For example, although method 1100 is shown as a series of steps, the steps can overlap, occur in parallel, occur in different orders, or occur multiple times. In another example, a step can be omitted or replaced by another step.
[0225] Figure 12 An example method 1200 for FoV determination according to embodiments of the present disclosure is shown. Method 1200 is described as being composed of... Figure 1 The client devices 106-114 can be used for implementation, and may include those with Figure 2 Electronic devices 200 and Figure 3 The internal components of electronic device 301 are similar to those of other internal components. However, as... Figure 12 The method 1200 shown can be used with any other suitable electronic device and in any suitable system.
[0226] In step 1202, the electronic device obtains channel information, distance information, and AoA information based on the wireless signals transmitted between the electronic device and the external electronic device. In some embodiments, the electronic device includes a transceiver that directly obtains signals from the external electronic device (target device). In other embodiments, the electronic device (such as...) Figure 1 The server 104) obtains information associated with signals transmitted between the electronic device and external electronic devices.
[0227] In some embodiments, the channel information includes characteristics of the Channel Intensity Reduction (CIR) of a wireless channel between an electronic device and an external electronic device. The channel information may include, for example, a first peak intensity of the CIR. The CIR characteristics may also include a strongest peak intensity of the CIR. The CIR characteristics may also include the amplitude difference between the first peak intensity and the strongest peak intensity of the CIR. Additionally, the CIR characteristics may include an RSSI value. The CIR characteristics may also include the variance of the first peak intensity of the CIR over a time interval. The CIR characteristics may also include the time difference between the first peak intensity and the strongest peak intensity of the CIR.
[0228] In some embodiments, the distance information includes distance measurements obtained based on wireless signals. The distance information may also include the variance of the distance measurements over a time interval.
[0229] In some embodiments, AoA information includes AoA measurements obtained based on wireless signals. AoA information may also include the variance of AoA measurements over a time interval.
[0230] In step 1204, the electronic device generates an initial prediction of the presence of an external electronic device within its FOV relative to the electronic device. The initial prediction may be based on channel information, distance information, AoA information, or any combination thereof. In some embodiments, the initial prediction includes an indication of whether the external electronic device is within or outside the electronic device's FOV. In some embodiments, the initial prediction is based on an SVM operation on features of the CIR and at least one of the distance information or AoA information. A Gaussian kernel may also be used to indicate whether the target is within or outside the FOV using feature vectors.
[0231] In some embodiments, the electronic device applies a moving average filter to the initial prediction within a sliding window to generate an average probability within the FoV. The electronic device then compares the average probability within the FoV within the sliding window with a threshold. Subsequently, the electronic device can use this comparison to refine the initial prediction of the presence of an external electronic device relative to the electronic device, thereby removing outliers.
[0232] In step 1206, the electronic device performs a smoothing operation on the distance information and AoA information using a tracking filter. In some embodiments, the tracking filter is a Kalman filter, an extended Kalman filter, an extended Kalman filter with adaptive parameters, an extended Kalman filter that takes into account lost measurements, or a combination thereof. For example, in response to determining that no wireless signal has been received, the electronic device may set a parameter representing the difference between the measurement and the predicted value of the tracking filter to zero.
[0233] In step 1208, the electronic device determines whether the external electronic device is within or outside the FoV of the electronic device. For example, the electronic device determines whether the external electronic device is within or outside the FoV based on AoA information, smoothed AoA information (in step 1206), and initial prediction (in step 1204).
[0234] In some embodiments, the electronic device collects multiple determinations regarding whether an external electronic device is within or outside its FoV (FoV). The electronic device then applies a moving average filter to the multiple determinations within a sliding window to generate an average probability that the external electronic device is within its FoV. The electronic device then compares this average probability within the FoV to a threshold. Subsequently, the electronic device can use this comparison to refine the multiple determinations regarding whether the external electronic device is within or outside its FoV, thereby removing outliers.
[0235] In some embodiments, the electronic device also generates a confidence score that indicates a level of confidence associated with determining whether an external electronic device is within or outside the field of view (FoV) of the electronic device. To generate the confidence score, the electronic device identifies a first confidence score associated with the initial prediction (in step 1204) and a second confidence score associated with the tracking filter based on the error covariance matrix of the tracking filter. The first confidence score indicates a level of confidence associated with the initial prediction (in step 1204). In some embodiments, the electronic device averages the first and second confidence scores to generate a final confidence score associated with the final decision regarding whether an external electronic device is within or outside the field of view of the electronic device.
[0236] although Figure 12 An example method is shown, but it is possible to modify it. Figure 12 Various changes can be made. For example, although method 1200 is shown as a series of steps, the steps can overlap, occur in parallel, occur in different orders, or occur multiple times. In another example, steps can be omitted or replaced by other steps.
[0237] The flowcharts above illustrate example methods that can be implemented according to the principles of this disclosure, and various modifications can be made to the methods shown in the flowcharts herein. For example, although shown as a series of steps, the individual steps in each diagram may overlap, occur in parallel, occur in different orders, or occur multiple times. In another example, steps may be omitted or replaced by other steps.
[0238] Although the accompanying drawings illustrate different examples of user equipment, various changes can be made to the drawings. For example, the user equipment can include any number of each component in any suitable arrangement. Generally, the drawings do not limit the scope of this disclosure to any particular configuration(s). Furthermore, while the drawings illustrate operating environments in which the various user equipment features disclosed in this patent document can be used, these features can be used in any other suitable system.
[0239] Although this disclosure has been described with reference to exemplary embodiments, various changes and modifications will be apparent to those skilled in the art. This disclosure is intended to cover such changes and modifications that fall within the scope of the appended claims. Nothing described herein should be construed as implying that any particular element, step, or function is an essential element that must be included within the scope of the claims. The scope of the patent subject matter is defined by the claims.
Claims
1. A method performed by an electronic device, comprising: Based on the wireless signals transmitted between the electronic device and the external electronic device, channel information, distance information, and angle of arrival (AoA) information are obtained. Based on the channel information and at least one of the distance information or AoA information, an initial prediction of the presence of the external electronic device relative to the field of view (FoV) of the electronic device is generated, wherein the initial prediction includes an indication of whether the external electronic device is within or outside the field of view of the electronic device. The moving average filter is applied to the initial prediction within a sliding window; The average probability of being within the FoV within the sliding window is compared with a threshold. The initial prediction is corrected based on the comparison of the average probabilities; A smoothing operation is performed on the distance information and the AoA information using a tracking filter; and Based on the AoA information, smoothed AoA information, and corrected predictions, it is determined whether the external electronic device is within or outside the FoV of the electronic device.
2. The method according to claim 1, further comprising: The tracking filter is reset based on a comparison between the motion of the electronic device and a threshold. In response to determining that the external electronic device is within the FoV of the electronic device, the tracking filter is reset; and In response to determining that the external electronic device is outside the FoV of the electronic device, a reset is performed on the tracking filter and the buffer storing the initial prediction.
3. The method according to claim 1, wherein: The channel information includes the characteristics of the channel impulse response (CIR) of the wireless communication channel based on the wireless signals between the electronic device and the external electronic device; and CIR features include at least one of the following: The first peak intensity of the CIR, The strongest peak intensity of the CIR, The amplitude difference between the first peak intensity and the strongest peak intensity of the CIR Received Signal Strength Indicator (RSSI) value The variance of the first peak intensity of the CIR over a time interval, or The time difference between the first peak intensity of the CIR and the strongest peak intensity of the CIR.
4. The method according to claim 3, wherein, The initial prediction of the presence of the external electronic device relative to the electronic device is based on a support vector machine (SVM) operating on the features of the CIR and at least one of the distance information or the AoA information.
5. The method according to claim 1, wherein, The tracking filter is a Kalman filter, an extended Kalman filter, or an extended Kalman filter with adaptive parameters.
6. The method according to claim 1, further comprising: Determine if there is no wireless signal; as well as In response to determining that no wireless signal is received, the parameters of the tracking filter are set to zero, wherein the parameters represent the difference between the measured and predicted values of the tracking filter.
7. The method according to claim 1, wherein, Determining that the external electronic device is within the FoV of the electronic device also includes: Identify the confidence score associated with the initial prediction of the presence of the external electronic device relative to the electronic device's FoV; Determine whether the smoothed AoA information indicates that the external electronic device is within the FoV of the electronic device; In response to determining that the smoothed AoA information indicates that the external electronic device is within the FoV of the electronic device, determine whether the AoA information indicates that the external electronic device is within the FoV of the electronic device; In response to determining that the AoA information indicates that the external electronic device is within the FoV of the electronic device, the confidence score is compared with a threshold; and Based on the comparison between the confidence score and the threshold, it is determined whether the external electronic device is within or outside the FoV of the electronic device.
8. The method according to claim 7, further comprising: Collect multiple determinations regarding whether the external electronic device is within or outside the FoV of the electronic device; The moving average filter is applied to the plurality of determinations within a sliding window; The average probability of being within the FoV of the electronic device within the sliding window of the plurality of determined moving average filters is compared with a threshold. as well as The determination of whether the external electronic device is within or outside the FoV of the electronic device is corrected based on the comparison of the average probability.
9. The method according to claim 7, wherein: The confidence score is the first confidence score; and The method further includes: The second confidence score associated with the tracking filter is identified based on the error covariance matrix of the tracking filter, and Based on the first confidence score and the second confidence score, a final confidence score is generated that is associated with the determination of whether the external electronic device is within or outside the FoV of the electronic device.
10. An electronic device, comprising: The processor is configured as follows: Based on the wireless signals transmitted between the electronic device and the external electronic device, channel information, distance information, and angle of arrival (AoA) information are obtained. Based on the channel information and at least one of the distance information or AoA information, an initial prediction of the presence of the external electronic device relative to the field of view (FoV) of the electronic device is generated, wherein the initial prediction includes an indication of whether the external electronic device is within or outside the field of view of the electronic device. The moving average filter is applied to the initial prediction within a sliding window; The average probability of being within the FoV within the sliding window is compared with a threshold. The initial prediction is corrected based on the comparison of the average probabilities; A smoothing operation is performed on the distance information and the AoA information using a tracking filter; and Based on the AoA information, smoothed AoA information, and corrected predictions, it is determined whether the external electronic device is within or outside the FoV of the electronic device.
11. The electronic device according to claim 10, adapted to operate according to any one of claims 2 to 9.
12. A non-transitory computer-readable medium comprising instructions that, when executed, cause at least one processor to: Based on the wireless signals transmitted between the electronic device and the external electronic device, channel information, distance information, and angle of arrival (AoA) information are obtained. Based on the channel information and at least one of the distance information or AoA information, an initial prediction of the presence of the external electronic device relative to the field of view (FoV) of the electronic device is generated, wherein the initial prediction includes an indication of whether the external electronic device is within or outside the field of view of the electronic device. The moving average filter is applied to the initial prediction within a sliding window; The average probability of being within the FoV within the sliding window is compared with a threshold. The initial prediction is corrected based on the comparison of the average probabilities; A smoothing operation is performed on the distance information and the AoA information using a tracking filter; and Based on the AoA information, smoothed AoA information, and corrected predictions, it is determined whether the external electronic device is within or outside the FoV of the electronic device.
13. The non-transitory computer-readable medium of claim 12 is adapted to operate according to any one of claims 2 to 9.
Citation Information
Patent Citations
Precise indoor localization and tracking of electronic devices
US20180091952A1
Method, apparatus, and system for wireless object tracking
US20200191943A1
Object-aligned filtering method and apparatus
WO2013124312A1
Vehicle control apparatus
WO2016117487A1