Electronic device for identifying moving direction and operation method thereof
Patent Information
- Application Number
- PCT/KR2024/004265
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-05-16
- Filing Date
- 2024-04-02
- Publication Date
- 2025-06-26
AI Technical Summary
Existing electronic devices lack an efficient method to accurately determine the direction of movement using sensor data, which is essential for enhancing their utility and functionality, particularly in environments where precise location and movement tracking are required.
An electronic device equipped with a sensor module and processor that generates and processes data features using deep learning models to identify movement direction by inputting sensing data into a first model to obtain location parameters and then into a second model for direction estimation.
Enables accurate determination of movement direction, improving the device's functionality and user experience by leveraging AI and deep learning for precise location and movement tracking.
Smart Images

Figure KR2024004265_26062025_PF_FP_ABST
Abstract
Description
Electronic device for identifying direction of movement and method of operation thereof
[0001] One embodiment of the present disclosure relates to an electronic device for identifying a direction of movement and a method of operating the same.
[0002] The variety of services and additional features offered through user terminals, such as smartphones, is steadily increasing. To enhance the utility of these electronic devices and satisfy the diverse needs of users, telecommunications service providers and electronic device manufacturers are competitively developing electronic devices offering a variety of functions. Consequently, the various functions offered through these devices are also becoming increasingly sophisticated.
[0003] As wireless communication technology advances, devices utilizing artificial intelligence (AI) are becoming more widely adopted. AI can be used to determine the location of a user device. For example, a user device can determine its location by inputting sensing data into a trained deep learning model.
[0004] According to one embodiment, an electronic device may include a memory storing instructions, a sensor module including at least one sensor, and at least one processor operatively connected to the sensor module. The instructions, when executed by the at least one processor, may cause the electronic device to obtain, based on sensed data obtained by the sensor module, first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group. The instructions, when executed by the at least one processor, may cause the electronic device to obtain, based on inputting the first data into a first model, a plurality of parameters corresponding to a plurality of classes associated with a location of the electronic device. The instructions, when executed by the at least one processor, may cause the electronic device to determine a moving direction of the electronic device based on inputting the second data and the plurality of parameters into a second model.
[0005] According to one embodiment, a storage medium storing at least one computer-readable instruction, wherein the at least one instruction, when executed by at least one processor of an electronic device, causes the electronic device to perform at least one operation, wherein the at least one operation may include: acquiring, based on sensed data acquired by a sensor module of the electronic device, first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group. The at least one operation may include: acquiring, based on inputting the first data into a first model, a plurality of parameters corresponding to a plurality of classes associated with a location of the electronic device. The at least one operation may include: determining, based on inputting the second data and the plurality of parameters into a second model, a moving direction of the electronic device.
[0006] According to one embodiment, a method of operating an electronic device may include an operation of acquiring first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group based on sensing data acquired by a sensor module of the electronic device. The method of operating an electronic device may include an operation of acquiring a plurality of parameters corresponding to a plurality of classes associated with a location of the electronic device based on inputting the first data into a first model. The method of operating an electronic device may include an operation of confirming a moving direction of the electronic device based on inputting the second data and the plurality of parameters into a second model.
[0007] According to one embodiment, an electronic device may include a memory storing instructions, a sensor module including at least one sensor, and at least one processor. The instructions, when executed by the at least one processor, may cause the electronic device to obtain, based on sensed data obtained by the sensor module, first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group. The instructions, when executed by the at least one processor, may cause the electronic device to obtain a first class associated with a location of the electronic device based on inputting the first data into a first model. The instructions, when executed by the at least one processor, may cause the electronic device to determine a moving direction of the electronic device based on inputting the second data into a second model corresponding to the obtained first class among a plurality of models associated with estimation of a moving direction of the electronic device.
[0008] According to one embodiment, a storage medium storing at least one computer-readable instruction, wherein the at least one instruction, when executed by at least one processor of an electronic device, causes the electronic device to perform at least one operation, wherein the at least one operation may include: acquiring, based on sensed data acquired by a sensor module of the electronic device, first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group. The at least one operation may include: acquiring a first class associated with a location of the electronic device based on inputting the first data into a first model. The at least one operation may include: confirming a moving direction of the electronic device based on inputting the second data into a second model corresponding to the acquired first class among a plurality of models associated with estimation of a moving direction of the electronic device.
[0009] According to one embodiment, a method for operating an electronic device may include an operation of acquiring first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group based on sensing data acquired by a sensor module of the electronic device. The method for operating an electronic device may include an operation of acquiring a first class associated with a location of the electronic device based on inputting the first data into a first model. The method for operating an electronic device may include an operation of confirming a moving direction of the electronic device based on inputting the second data into a second model corresponding to the acquired first class among a plurality of models associated with estimation of a moving direction of the electronic device.
[0010] FIG. 1 is a block diagram of an electronic device within a network environment, according to one embodiment.
[0011] FIG. 2 is a diagram for explaining the data flow of an electronic device according to one embodiment.
[0012] FIG. 3 is a drawing for explaining the setting of the reference direction of an electronic device according to one embodiment.
[0013] FIG. 4 is a drawing for explaining the setting of the reference direction of an electronic device according to one embodiment.
[0014] FIG. 5 illustrates a flowchart for explaining a method of operating an electronic device according to one embodiment.
[0015] FIG. 6 is a diagram for explaining the data flow of an electronic device according to one embodiment.
[0016] FIG. 7 is a diagram for explaining a preprocessing operation of an electronic device according to one embodiment.
[0017] FIG. 8 is a diagram for explaining the data flow of an electronic device according to one embodiment.
[0018] FIG. 9 illustrates a flowchart for explaining a method of operating an electronic device according to one embodiment.
[0019] FIG. 10 is a diagram for explaining the data flow of an electronic device according to one embodiment.
[0020] FIG. 11A is a diagram for explaining class classification of an electronic device according to one embodiment.
[0021] FIG. 11b is a drawing for explaining identification of the movement direction of an electronic device according to one embodiment.
[0022] FIG. 12 illustrates a flowchart for explaining a method of operating an electronic device according to one embodiment.
[0023] FIG. 1 is a block diagram of an electronic device (101) within a network environment (100), according to one embodiment. Referring to FIG. 1, in the network environment (100), the electronic device (101) may communicate with the electronic device (102) via a first network (198) (e.g., a short-range wireless communication network), or may communicate with the electronic device (104) or a server (108) via a second network (199) (e.g., a long-range wireless communication network). In one embodiment, the electronic device (101) may communicate with the electronic device (104) via the server (108). According to one embodiment, the electronic device (101) may include a processor (120), a memory (130), an input module (150), an audio output module (155), a display module (160), an audio module (170), a sensor module (176), an interface (177), a connection terminal (178), a haptic module (179), a camera module (180), a power management module (188), a battery (189), a communication module (190), a subscriber identification module (196), or an antenna module (197). In some embodiments, the electronic device (101) may omit at least one of these components (e.g., the connection terminal (178)), or may have one or more other components added. In some embodiments, some of these components (e.g., the sensor module (176), the camera module (180), or the antenna module (197)) may be integrated into one component (e.g., the display module (160)).
[0024] The processor (120) may, for example, execute software (e.g., a program (140)) to control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) and perform various data processing or operations. According to one embodiment, as at least a part of the data processing or operations, the processor (120) may store commands or data received from other components (e.g., a sensor module (176) or a communication module (190)) in a volatile memory (132), process the commands or data stored in the volatile memory (132), and store result data in a non-volatile memory (134). According to one embodiment, the processor (120) may include a main processor (121) (e.g., a central processing unit or an application processor) or an auxiliary processor (123) (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor) that can operate independently or together with the main processor (121). For example, when the electronic device (101) includes the main processor (121) and the auxiliary processor (123), the auxiliary processor (123) may be configured to use less power than the main processor (121) or to be specialized for a given function. The auxiliary processor (123) may be implemented separately from the main processor (121) or as a part thereof.
[0025] The auxiliary processor (123) may control at least a portion of functions or states associated with at least one component (e.g., a display module (160), a sensor module (176), or a communication module (190)) of the electronic device (101), for example, on behalf of the main processor (121) while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state. In one embodiment, the auxiliary processor (123) (e.g., an image signal processor or a communication processor) may be implemented as a part of another functionally related component (e.g., a camera module (180) or a communication module (190)). In one embodiment, the auxiliary processor (123) (e.g., a neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. The artificial intelligence models may be generated through machine learning. This learning can be performed, for example, in the electronic device (101) itself where artificial intelligence is performed, or can be performed through a separate server (e.g., server (108)). The learning algorithm can include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model can include multiple artificial neural network layers.The artificial neural network may be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), a deep Q-network, or a combination of two or more of the above, but is not limited to the examples described above. In addition to, or alternatively to, a hardware structure, an artificial intelligence model may include a software structure.
[0026] The memory (130) can store various data used by at least one component (e.g., processor (120) or sensor module (176)) of the electronic device (101). The data can include, for example, software (e.g., program (140)) and input data or output data for commands related thereto. The memory (130) can include volatile memory (132) or non-volatile memory (134).
[0027] The program (140) may be stored as software in the memory (130) and may include, for example, an operating system (142), middleware (144), or an application (146).
[0028] The input module (150) can receive commands or data to be used in a component of the electronic device (101) (e.g., a processor (120)) from an external source (e.g., a user) of the electronic device (101). The input module (150) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).
[0029] The audio output module (155) can output audio signals to the outside of the electronic device (101). The audio output module (155) can include, for example, a speaker or a receiver. The speaker can be used for general purposes, such as multimedia playback or recording playback. The receiver can be used to receive incoming calls. In one embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.
[0030] The display module (160) can visually provide information to an external party (e.g., a user) of the electronic device (101). The display module (160) may include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device. According to one embodiment, the display module (160) may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.
[0031] The audio module (170) can convert sound into an electrical signal, or vice versa, convert an electrical signal into sound. According to one embodiment, the audio module (170) can acquire sound through the input module (150), output sound through the sound output module (155), or an external electronic device (e.g., electronic device (102)) (e.g., speaker or headphone) directly or wirelessly connected to the electronic device (101).
[0032] The sensor module (176) can detect the operating status (e.g., power or temperature) of the electronic device (101) or the external environmental status (e.g., user status) and generate an electrical signal or data value corresponding to the detected status. According to one embodiment, the sensor module (176) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.
[0033] The interface (177) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (101) with an external electronic device (e.g., the electronic device (102)). In one embodiment, the interface (177) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
[0034] The connection terminal (178) may include a connector through which the electronic device (101) may be physically connected to an external electronic device (e.g., electronic device (102)). According to one embodiment, the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).
[0035] The haptic module (179) can convert electrical signals into mechanical stimuli (e.g., vibration or movement) or electrical stimuli that a user can perceive through tactile or kinesthetic sensations. According to one embodiment, the haptic module (179) can include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
[0036] The camera module (180) can capture still images and videos. According to one embodiment, the camera module (180) may include one or more lenses, image sensors, image signal processors, or flashes.
[0037] The power management module (188) can manage power supplied to the electronic device (101). According to one embodiment, the power management module (188) can be implemented as, for example, at least a part of a power management integrated circuit (PMIC).
[0038] A battery (189) may power at least one component of the electronic device (101). In one embodiment, the battery (189) may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.
[0039] The communication module (190) may support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (101) and an external electronic device (e.g., electronic device (102), electronic device (104), or server (108)), and the performance of communication through the established communication channel. The communication module (190) may operate independently from the processor (120) (e.g., application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (190) may include a wireless communication module (192) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (194) (e.g., a local area network (LAN) communication module, or a power line communication module). Among these communication modules, the corresponding communication module can communicate with an external electronic device (104) via a first network (198) (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (199) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN)). These various types of communication modules can be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module (192) can verify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199) by using subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (196).
[0040] The wireless communication module (192) can support 5G networks and next-generation communication technologies following the 4G network, such as NR access technology (new radio access technology). The NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and connection of multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency communications)). The wireless communication module (192) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module (192) can support various technologies for securing performance in a high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module (192) can support various requirements specified in the electronic device (101), an external electronic device (e.g., the electronic device (104)), or a network system (e.g., the second network (199)). According to one embodiment, the wireless communication module (192) can support a peak data rate (e.g., 20 Gbps or more) for eMBB realization, a loss coverage (e.g., 164 dB or less) for mMTC realization, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL), or 1 ms or less for round trip) for URLLC realization.
[0041] The antenna module (197) can transmit or receive signals or power to or from an external device (e.g., an external electronic device). In one embodiment, the antenna module (197) may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). In one embodiment, the antenna module (197) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (198) or the second network (199), may be selected from the plurality of antennas, for example, by the communication module (190). A signal or power may be transmitted or received between the communication module (190) and an external electronic device via the at least one selected antenna. In some embodiments, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as a part of the antenna module (197).
[0042] In one embodiment, the antenna module (197) may form a mmWave antenna module. In one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent a first side (e.g., a bottom side) of the printed circuit board and capable of supporting a designated high-frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) disposed on or adjacent a second side (e.g., a top side or a side side) of the printed circuit board and capable of transmitting or receiving signals in the designated high-frequency band.
[0043] At least some of the above components can be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)).
[0044] According to one embodiment, commands or data may be transmitted or received between the electronic device (101) and an external electronic device (104) via a server (108) connected to a second network (199). Each of the external electronic devices (102 or 104) may be the same or a different type of device as the electronic device (101). According to one embodiment, all or part of the operations executed in the electronic device (101) may be executed in one or more of the external electronic devices (102, 104, or 108). For example, when the electronic device (101) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (101) may, instead of or in addition to executing the function or service itself, request one or more external electronic devices to perform the function or at least a part of the service. One or more external electronic devices that receive the request may execute at least a portion of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device (101). The electronic device (101) may process the result as is or additionally and provide it as at least a portion of a response to the request. For this purpose, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example. The electronic device (101) may provide an ultra-low latency service by using distributed computing or mobile edge computing, for example. In another embodiment, the external electronic device (104) may include an Internet of Things (IoT) device. The server (108) may be an intelligent server utilizing machine learning and / or a neural network. According to one embodiment, the external electronic device (104) or the server (108) may be included in the second network (199).The electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.
[0045] FIG. 2 is a diagram for explaining the data flow of an electronic device according to one embodiment.
[0046] In one embodiment, the electronic device (101) may include a preprocessing module (210), a first model (220), and a second model (230).
[0047] In one embodiment, a module (e.g., a preprocessing module (210)) implemented (or stored) in the electronic device (101) may be implemented in the form of an application, a program, a computer code, instructions, a routine, a process, software, firmware, or a combination of at least two or more thereof executable by the processor (120). For example, when a module is executed, the processor (120) may perform an operation corresponding to each module. Therefore, the description below that “a specific module performs an operation” may be understood as “as the specific module is executed, the processor (120) performs an operation corresponding to the specific module.” In one embodiment, at least some of the modules may include multiple programs, but are not limited to what is described. Meanwhile, at least some of the modules may be implemented in hardware form (e.g., a processing circuit (not shown)). In one embodiment, when the module is implemented on an Android operating system, the module may be implemented as a service or an application.
[0048] In one embodiment, a neural network processing unit (e.g., auxiliary processor (123) of FIG. 1) included in a communication processor (or an application processor (e.g., processor (120)) or independent from the communication processor and / or the main processor (e.g., main processor (120)) may generate, train, select an AI model (e.g., first model (220) and / or second model (230)), and / or utilize the AI model (e.g., perform an operation corresponding to the AI model for an input value). The AI model may be stored in a memory of the electronic device (101) (e.g., memory (130)) and / or in a memory within the neural network processing unit. In one embodiment, depending on the implementation, the memory may be disposed within the application processor or the communication processor. Depending on the implementation, the memory may be disposed external to the application processor or the communication processor and may be accessed by the application processor or the communication processor.
[0049] In one embodiment, the AI model may be a neural network model, without limitation. If the AI model is a neural network model, there are no limitations on the type of the neural network model, the number of layers of the neural network model, the input values (or number of input nodes) of the neural network model, the number of nodes in each of the intermediate layers (or hidden layers) of the neural network model, and / or the type of activation function of the neural network model.
[0050] In one embodiment, the electronic device (101) may, for example, verify information about neural networks (NN) of an AI model, weights and / or biases corresponding to nodes of the AI model, and / or receive information from another device that provides the AI model (e.g., a device that performs learning and / or a device that manages a learned AI model). The AI model may be updated. For example, the AI model may be replaced by a newly received different AI model, or the NN structure of the AI model may be maintained, but weights and / or biases corresponding to nodes constituting the NN may be updated.
[0051] In one embodiment, the preprocessing module (210) may output first data and second data based on sensing data acquired by a sensor module (e.g., sensor module (176)). The output first data may be input to a first model (220). The output second data may be input to a second model (230). One embodiment of a specific preprocessing method by the preprocessing module (210) will be described below.
[0052] In one embodiment, the first model (220) may output a first output based on first data output from the preprocessing module (210). The first model (220) may be trained based on a training data set including, for example, an input value including a plurality of features and an output value including a class associated with the location of the electronic device (101) corresponding to the input value. The first model (220) may be trained to output a plurality of parameters corresponding to the class and / or classes associated with the location of the electronic device (101). The first model (220) may be a deep-learning model that performs classification based on time-series data. For example, the first model (220) may be implemented as a long short-term memory model (LSTM) among recurrent neural networks (RNN), and there is no limitation as long as it is a deep-learning model that processes time-series data.
[0053] In one embodiment, the second model (230) may output a second output based on the first output output by the first model (220) and / or the second data output by the preprocessing module (210). The second model (230) may be trained based on a training data set including, for example, input values including a plurality of features and corresponding output values associated with the movement direction of the electronic device (101). The second model (230) may be trained to output a value associated with the movement direction of the electronic device (101). The second model (230) may be a deep learning model that performs regression based on time series data. For example, the second model (230) may be implemented as an LSTM among RNNs, and there is no limitation thereto as long as it is a deep learning model that processes time series data.
[0054] FIG. 3 is a drawing for explaining the setting of the reference direction of an electronic device according to one embodiment.
[0055] In one embodiment, referring to FIG. 3, the electronic device (101) may perform coordinate transformation (301) based on sensing data acquired by a sensor module (e.g., sensor module (176) of FIG. 1). The electronic device (101) may transform the coordinate system of the electronic device (101) according to a set cycle based on the sensor (e.g., gyro sensor) being able to determine a direction perpendicular to the ground surface.
[0056] In one embodiment, referring to reference numeral 310, the electronic device (101) may determine direction values corresponding to a plurality of coordinate axes (e.g., x-axis, y-axis, and z-axis) based on sensing data acquired by at least one sensor (e.g., an acceleration sensor and / or a gyro sensor) included in a sensor module. In one embodiment, the electronic device (101) may perform coordinate transformation to a plane (e.g., x'y' plane) perpendicular to the direction of gravity (G) based on the direction values corresponding to the plurality of coordinate axes. The plane perpendicular to the direction of gravity may be referred to as a "reference plane", and there is no limitation on its name.
[0057] In one embodiment, referring to reference numeral 320, the electronic device (101) can determine the direction values corresponding to the coordinate axes (e.g., x'-axis and y'-axis) of the reference plane based on the direction values corresponding to the plurality of coordinate axes. The electronic device (101) can determine the reference direction based on the direction values corresponding to the coordinate axes of the reference plane. In one embodiment, the reference direction may be a direction set to determine the relative movement direction according to the movement of the electronic device (101). A method for determining the degree to which the electronic device (101) deviates from the reference direction will be described later. The electronic device (101) can determine the rotation amount of the electronic device (101) based on the output value of the gyro sensor. The electronic device (101) can maintain the reference direction of the electronic device (101) based on performing compensation in the opposite direction of the rotation direction.
[0058] FIG. 4 is a drawing for explaining the setting of the reference direction of an electronic device according to one embodiment.
[0059] In one embodiment, referring to FIG. 4, the electronic device (101) may set a reference direction of the electronic device (101) based on sensing data acquired by a sensor module (e.g., sensor module (176)). For example, the electronic device (101) may set the y'-axis direction as the reference direction of the electronic device (101).
[0060] In one embodiment, referring to reference numeral 430, the electronic device (101) can determine the movement direction (421) of the electronic device (101) based on sensing data acquired by the sensor module. In one embodiment, the electronic device (101) can perform direction compensation (425) based on determining a rotated angle (423) corresponding to the movement direction of the electronic device (101). The electronic device (101) can maintain the reference direction of the electronic device (101) based on performing compensation for the rotated angle (423).
[0061] FIG. 5 illustrates a flowchart (500) for explaining a method of operating an electronic device according to one embodiment.
[0062] According to one embodiment, the electronic device (101) (e.g., the processor (120)) may, in operation 501, obtain first data including features associated with a first feature group and second data including features associated with a second feature group based on the sensing data. In one embodiment, the electronic device (101) may obtain features included in a first feature group that are relatively less correlated with a moving direction of the electronic device (101) based on sensing data obtained by at least one sensor (e.g., a linear accelerometer, an acceleration sensor, and / or a gyro sensor) included in the sensor module (176). The electronic device (101) may obtain features included in a second feature group that are relatively more correlated with a moving direction of the electronic device (101) based on the sensing data. One embodiment of the features included in the first feature group and the features included in the second feature group will be described later with reference to FIG. 7. In one embodiment, the electronic device (101) may identify a trigger (or condition) that causes the electronic device (101) to acquire first data and second data. The trigger may include, but is not limited to, a set cycle or user input (e.g., activation of a function associated with identification of the movement direction of the electronic device (101).
[0063] In one embodiment, the electronic device (101) may acquire a plurality of parameters corresponding to a plurality of classes associated with the location of the electronic device (101) based on acquiring the first data and inputting the first data into a first model (e.g., the first model (220)) in operation 503. In one embodiment, the plurality of parameters may be probability values corresponding to the plurality of classes, but there is no limitation thereto.
[0064] Class probability valueClass A0.10Class B0.75Class C0.05Class D0.10
[0065] In one embodiment, the electronic device (101) can determine probability values corresponding to Class A, Class B, Class C, and Class D based on the output of the first model (220). For example, the classes may represent the location of the electronic device (101) and / or the activity of the owner of the electronic device (101), such as stable, call, side pocket, or hand swing. In Table 1, for convenience of explanation, the first model (220) is described as outputting probability values corresponding to four classes based on the first data, but this is not limited thereto. For example, the first model (220) may also output probability values corresponding to five or more classes. For example, the class may further include back pocket, backpack swing, and others. In one embodiment, the electronic device (101) may determine the direction of movement of the electronic device (101) based on acquiring the second data and the plurality of parameters, and inputting the second data and the plurality of parameters into a second model (e.g., the second model (230)) in operation 505. In one embodiment, the electronic device (101) may determine the direction of movement of the electronic device (101) based on inputting second data including features associated with the direction of movement of the electronic device (101) and a plurality of parameters associated with the location of the electronic device (101) and / or the behavior of the holder of the electronic device (101) into the second model. In one embodiment, the electronic device (101) may determine the direction of movement of the electronic device (101) based on comparing an output of the second model with a set reference direction of the electronic device (101).In one embodiment, the electronic device (101) can relatively accurately determine the direction of movement of the electronic device (101) through the learned first model and the learned second model based on the fact that the pattern of sensing data may differ depending on the location of the electronic device (101) and / or the behavior of the owner of the electronic device (101).
[0066] FIG. 6 is a diagram for explaining the data flow of an electronic device according to one embodiment.
[0067] In one embodiment, the electronic device (101) can acquire first data and second data based on inputting sensing data acquired by the sensor module (176) to the preprocessing module (210). An embodiment of a preprocessing method for acquiring the first data and second data is described below with reference to FIG. 7.
[0068] In one embodiment, the electronic device (101) may obtain a first output based on inputting first data into the first model (220). For example, the first output may be probability values corresponding to classes associated with the location of the electronic device (101) and / or the behavior of the owner of the electronic device (101), but is not limited thereto. The electronic device (101) may obtain a second output based on inputting both the first output and the second data into the second model (230). The second output may be, for example, a continuous direction value over time, but is not limited thereto. One embodiment of a method for obtaining the second output based on the input of the second model (230) is described below with reference to FIG. 8.
[0069] In one embodiment, the electronic device (101) can input probability values output by the first model (220) into the second model (230) based on the structure illustrated in FIG. 6. Based on inputting the second data and the probability values into the second model (230), the electronic device (101) can relatively accurately determine the movement direction of the electronic device (101) compared to a case where the first model (220) outputs only a class. Based on inputting the probability values corresponding to the classes instead of the classes into the second model (230), the electronic device (101) can relatively accurately determine the movement direction of the electronic device (101) even in a case corresponding to a location and / or action corresponding to an unlearned class.
[0070] In one embodiment, the electronic device (101) can obtain a second output based on one second model (230). The electronic device (101) can determine the direction of movement of the electronic device (101) based on a network that includes relatively fewer parameters, compared to a case where a network is configured based on a plurality of second models.
[0071] FIG. 7 is a diagram for explaining a preprocessing operation of an electronic device according to one embodiment.
[0072] In one embodiment, the electronic device (101) can obtain first data and second data based on sensing data (710) obtained by a sensor module (e.g., sensor module (176)).
[0073] In one embodiment, the electronic device (101) may perform preprocessing (720) based on raw data (711) acquired by a linear accelerometer, raw data (713) acquired by an acceleration sensor, and raw data (715) acquired by a gyro sensor, as shown in FIG. 7. The raw data (711) acquired by the linear accelerometer may include x-axis data (711a), y-axis data (711b), and z-axis data (711c). The raw data (713) acquired by the acceleration sensor may include x-axis data (713a), y-axis data (713b), and z-axis data (713c). The raw data (715) acquired by the gyro sensor may include x-axis data (715a), y-axis data (715b), and z-axis data (715c).
[0074] In one embodiment, the electronic device (101) samples a plurality of samples (T1 to T) based on sampling the sensing data (710) in a first cycle. M ) can be obtained. In one embodiment, each of the acquired plurality of samples may include a plurality of features associated with the first feature group. For example, one sample may include N features (F1 to F) associated with the first feature group. N) may be included. The N value may be set to 10 for the first data, and there is no limitation on the number of features. The sample may include 10 features included in the first feature group that are relatively less related to the movement direction of the electronic device (101). For example, the 10 features may include a root mean square (RMS) value, a signal magnitude area (SMA) value, and / or an intensity of movement (IM) value. The RMS value may include an RMS value of data (711a, 711b, 711c) of a linear accelerometer, an RMS value of data (713a, 713b, 713c) of an acceleration sensor, and / or an RMS value of data (715a, 715b, 715c) of a gyro sensor. The SMA value may include the SMA value of the data (711a, 711b, 711c) of the linear accelerometer and / or the SMA value of the data (715a, 715b, 715c) of the gyro sensor. The IM value may include the IM value of the RMS value for the linear accelerometer, the IM value of the RMS value for the acceleration sensor, the IM value of the RMS value for the gyro sensor, the IM value of the SMA value for the linear accelerometer, and / or the IM value of the SMA value for the gyro sensor.
[0075] In one embodiment, the electronic device (101) may acquire first data including a plurality of input sets (e.g., a first input set (741) and a second input set (743)) from the plurality of samples based on time-shifting (731) a first window (751) during a first time (755). In one embodiment, the values of the first time (e.g., time window), the first window (e.g., sliding window), and the sampling period (753) may be set as shown in Table 2, but are not limited thereto.
[0076] Parameter value [t] Time window 1 s Sliding window 100 ms Sampling period 20 ms
[0077] In one embodiment, when the parameter values are set as in Table 2, the M value may be set to 50. The electronic device (101) may obtain 500 input data based on 50 samples including 10 features. In one embodiment, the electronic device (101) may obtain second data including a plurality of features associated with a second feature group based on the sensing data (710). In one embodiment, the electronic device (101) may obtain a plurality of sensing data sets based on phase-shifting the sensing data. For example, the electronic device (101) may obtain data rotated in a direction parallel to the ground surface based on raw data (713) of an acceleration sensor and raw data (715) of a gyro sensor. The electronic device (101) may obtain a plurality of sensing data sets based on phase-shifting the rotated data 360 degrees at intervals of about 5 degrees. The electronic device (101) can acquire multiple sets of sensing data converted to different angles based on phase transformation, even when data is acquired at relatively short time intervals.
[0078] In one embodiment, the electronic device (101) may acquire a plurality of samples based on sampling a plurality of sensing data sets in a second cycle. For example, the samples may include about 12 features associated with a second feature group. The features included in the second feature group may be relatively largely related to a movement direction of the electronic device (101). For example, the features included in the second feature group may include x-axis data (711a) of a linear accelerometer, an IM value of the x-axis data (711a), y-axis data (711b), an IM value of the y-axis data (711b), z-axis data (711c), and an IM value of the z-axis data (711c). Features included in the second feature group may include x-axis data (715a) of the gyro sensor, IM value of x-axis data (715a), y-axis data (715b), IM value of y-axis data (715b), z-axis data (715c), and IM value of z-axis data (715c).
[0079] In one embodiment, the electronic device (101) can obtain the second data including a plurality of input sets from the plurality of samples based on time-shifting the second window for a second time. In one embodiment, the parameters for obtaining the second data can be set identically to Table 2, and there is no limitation thereto. For example, when the parameter values are set according to Table 2, the electronic device (101) can obtain 600 input data based on 50 samples including 12 features.
[0080] FIG. 8 is a diagram for explaining the data flow of an electronic device according to one embodiment.
[0081] In one embodiment, the electronic device (101) may acquire third data based on inputting second data into at least one first layer of the second model (230). The electronic device (101) may sequentially input the second data into, for example, the sub-layer (810) and the first dense layer (820). In one embodiment, the sub-layer (810) may be implemented as an LSTM trained to output parameters associated with a movement direction, but is not limited thereto. The first dense layer (820) may include an input layer including 256 input parameters and an output layer including 32 output parameters.
[0082] In one embodiment, the electronic device (101) may acquire fourth data based on inputting a plurality of parameters corresponding to a first output output by a first model (e.g., the first model (220)) into a second layer. The electronic device (101) may, for example, input the first output into a second dense layer (830). The second dense layer (830) may include an input layer including 12 input parameters and an output layer including 32 output parameters.
[0083] In one embodiment, the electronic device (101) can determine the movement direction based on inputting the third data and the fourth data into at least one third layer. The electronic device (101) can input the third data and the fourth data into the product layer (840). The product layer (840) can output 32 parameters based on an elementwise product. The third dense layer (850) can include an input layer including 32 input parameters and an output layer including 2 output parameters. The electronic device (101) can determine the movement direction value of the electronic device (101) based on the output of the third dense layer (850).
[0084] FIG. 9 illustrates a flowchart (900) for explaining a method of operating an electronic device according to one embodiment.
[0085] According to one embodiment, the electronic device (101) (e.g., the processor (120)) may, in operation 901, obtain first data including features associated with a first feature group and second data including features associated with a second feature group based on the sensing data. Since operation 901 is at least partially identical to operation 501, descriptions overlapping with operation 501 may not be repeated.
[0086] In one embodiment, the electronic device (101) may acquire a first class associated with the location of the electronic device (101) and / or the behavior of the owner of the electronic device (101) based on acquiring first data and inputting the first data into a first model in operation 903. The electronic device (101) may identify a specific class based on the output of the classifier. The electronic device (101) may identify a second model corresponding to the output class among a plurality of models associated with the estimation of the movement direction of the electronic device (101).
[0087] In one embodiment, the electronic device (101) can determine the direction of movement of the electronic device (101) based on acquiring the second data and the first class, by inputting the second data into a second model corresponding to the acquired first class among a plurality of models associated with estimation of the direction of movement of the electronic device (101) in operation 905.
[0088] The electronic device (101) can identify the movement direction of the electronic device (101) through a movement direction estimation model including a relatively small number of parameters based on a network including a plurality of movement direction estimation models corresponding to classes. The electronic device (101) can identify the movement direction of the electronic device (101) at a relatively fast speed based on the movement direction estimation model including a relatively small number of parameters.
[0089] FIG. 10 is a diagram for explaining the data flow of an electronic device according to one embodiment.
[0090] In one embodiment, the electronic device (101) can obtain first data and second data based on inputting sensing data into the preprocessing module (210). Based on the class output from the first model (220), the electronic device (101) can identify a second model (e.g., one of the first direction estimation model (1010_1), the second direction estimation model (1010_2), the third direction estimation model (1010_3), or the Kth direction estimation model (1010_K)) corresponding to the class among the plurality of movement direction estimation models (1010). The electronic device (101) can identify a movement direction value based on the output of the second model.
[0091] FIG. 11A is a diagram for explaining class classification of an electronic device according to one embodiment.
[0092] FIG. 11b is a drawing for explaining identification of the movement direction of an electronic device according to one embodiment.
[0093] In one embodiment, the electronic device (101) can identify a location and / or action corresponding to the sixth class based on the classification results (1120) from t1 to t2, referring to the graph (1110) representing the class classification results of FIG. 11A.
[0094] In one embodiment, the electronic device (101) can determine that the electronic device (101) is moving in a direction of a specific angular section (e.g., θ1 to θ2) based on the movement direction estimation result from t1 to t2, referring to the graph (1130) representing the movement direction estimation result of FIG. 11b.
[0095] FIG. 12 illustrates a flowchart (1200) for explaining a method of operating an electronic device according to one embodiment.
[0096] According to one embodiment, the electronic device (101) (e.g., the processor (120)) may, in operation 1201, obtain first data including features associated with a first feature group and second data including features associated with a second feature group based on the sensing data. Operation 1201 is at least partially identical to operation 501, and therefore, any description overlapping with operation 501 may not be repeated.
[0097] In one embodiment, the electronic device (101) may obtain a first output associated with the location of the electronic device (101) in operation 1203 based on obtaining the first data. In one embodiment, the first output may be a plurality of parameters or a first class obtained based on inputting the first data into the first model. Since operation 1203 is at least partially identical to operation 503 and / or operation 903, descriptions overlapping with operation 503 and operation 903 may not be repeated.
[0098] In one embodiment, the electronic device (101) can determine the direction of movement of the electronic device based on obtaining the first output and the second data, and inputting the first output and / or the second data into the second model in operation 1205. Operation 1205 is at least partially identical to operations 505 and / or 905, and therefore, descriptions overlapping with operations 505 and 905 may not be repeated.
[0099] In one embodiment, the electronic device (101) can determine whether the first sensor value matches the set sensor value in operation 1207 based on the movement direction of the electronic device (101). In one embodiment, the electronic device (101) can obtain a current magnetic field sensor value. The electronic device (101) can rotate the coordinate axis corresponding to the obtained current magnetic field sensor value based on the movement direction confirmed in operation 1205. The electronic device (101) can determine whether the current magnetic field sensor value corresponding to the rotated coordinate axis matches the set past magnetic field sensor value. For example, the electronic device (101) can determine whether the current magnetic field sensor value matches the past magnetic field sensor value based on the degree of agreement between the two sensor values. In one embodiment, the set past magnetic field sensor value may be a magnetic field sensor value collected in advance when marker information is generated. In one embodiment, a marker may be a set location to determine whether a specific location or point has been passed. The electronic device (101) can determine whether the electronic device (101) moves in the same direction as the direction of the magnetic field pattern when the marker information is generated from the marker based on whether the pattern of the magnetic field matches a magnetic field pattern recorded in advance corresponding to the marker. The electronic device (101) can determine whether the marker has passed based on whether the magnetic field sensor value has been verified.
[0100] In one embodiment, the electronic device (101) may provide a notification associated with a marker corresponding to the sensor value set in operation 1209 based on determining that the first sensor value matches the set sensor value. The electronic device (101) may provide a notification associated with a marker corresponding to the set sensor value based on determining that the current magnetic field sensor value matches the past magnetic field sensor value. Based on providing the notification, the electronic device (101) may notify that the owner and / or possessor of the electronic device (101) is passing through a specific location corresponding to the marker.
[0101] According to one embodiment, an electronic device (101) may include a memory (130) that stores instructions, a sensor module (176) including at least one sensor, and at least one processor (120). The instructions, when executed by the at least one processor (120), may cause the electronic device (101) to obtain first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group, based on sensed data obtained by the sensor module (176). The instructions, when executed by the at least one processor (120), may cause the electronic device (101) to obtain a plurality of parameters corresponding to a plurality of classes associated with a location of the electronic device (101), based on inputting the first data into a first model. The above instructions, when executed by at least one processor (120), may cause the electronic device (101) to determine a direction of movement based on inputting the second data and the plurality of parameters into a second model.
[0102] In one embodiment, the instructions, when executed by at least one processor (120) of the electronic device (101), may cause the electronic device (101) to set a reference direction based on coordinate transformation of sensing data acquired by the sensor module (176).
[0103] In one embodiment, the instructions, when executed by at least one processor (120) of the electronic device (101), may cause the electronic device (101) to, as at least part of an operation of determining a direction of movement of the electronic device (101) based on inputting the second data and the plurality of parameters into a second model, determine the direction of movement based on comparing an output of the second model with the reference direction.
[0104] In one embodiment, the instructions, when executed by at least one processor (120) of the electronic device (101), may cause the electronic device (101) to, at least as part of an operation of obtaining first data including a plurality of features associated with a first feature group based on sensed data acquired by the sensor module, acquire a plurality of samples based on sampling the sensed data at a first period. Here, the samples may include a plurality of features associated with the first feature group. The instructions, when executed by at least one processor (120), may cause the electronic device (101) to, at least as part of an operation of obtaining first data including a plurality of features associated with a first feature group based on sensed data acquired by the sensor module, acquire the first data including a plurality of input sets from the plurality of samples based on time-shifting a first window during a first time period.
[0105] In one embodiment, the instructions, when executed by at least one processor (120) of the electronic device (101), may cause the electronic device (101) to obtain a plurality of sets of sensed data based on phase shifting the sensed data, at least as part of an operation of obtaining second data including a plurality of features associated with a second feature group, based on sensed data acquired by the sensor module (176). The instructions, when executed by at least one processor (120), may cause the electronic device (101) to obtain a plurality of samples based on sampling the plurality of sets of sensed data at a second period, at least as part of an operation of obtaining second data including a plurality of features associated with a second feature group, based on sensed data acquired by the sensor module (176). Here, the samples may include a plurality of features associated with the second feature group. The instructions, when executed by at least one processor (120), may cause the electronic device (101) to obtain second data comprising a plurality of features associated with a second feature group based on sensed data acquired by the sensor module (176), based on time shifting a second window for a second time, the second data comprising a plurality of input sets from the plurality of samples.
[0106] In one embodiment, the instructions, when executed by at least one processor (120) of the electronic device (101), may cause the electronic device (101) to obtain third data based on inputting the second data into at least one first layer of the second model, at least as part of an operation of determining a direction of movement of the electronic device based on inputting the second data and the plurality of parameters into a second model. The instructions, when executed by at least one processor (120), may cause the electronic device (101) to obtain fourth data based on inputting the plurality of parameters into a second layer, at least as part of an operation of determining a direction of movement of the electronic device based on inputting the second data and the plurality of parameters into a second model. The instructions, when executed by at least one processor (120), may cause the electronic device (101) to determine the direction of movement of the electronic device based on inputting the second data and the plurality of parameters into a second model, at least as part of an operation of determining the direction of movement of the electronic device based on inputting the third data and the fourth data into at least one third layer.
[0107] In one embodiment, the instructions, when executed by at least one processor (120) of the electronic device (101), may cause the electronic device (101) to determine whether a first sensor value matches a set sensor value based on the identified direction of movement. The instructions, when executed by at least one processor (120), may cause the electronic device (101) to provide a notification associated with a marker corresponding to the set sensor value based on determining that the first sensor value matches the set sensor value.
[0108] According to one embodiment, an electronic device (101) may include a memory (130) that stores instructions, a sensor module (176) including at least one sensor, and at least one processor (120). The instructions, when executed by the at least one processor (120), may cause the electronic device (101) to obtain first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group, based on sensed data obtained by the sensor module (176). The instructions, when executed by the at least one processor (120), may cause the electronic device (101) to obtain a first class associated with a location of the electronic device (101) based on inputting the first data into a first model. The above instructions, when executed by at least one processor (120), may cause the electronic device (101) to determine the direction of movement of the electronic device (101) based on inputting the second data into a second model corresponding to the acquired first class among a plurality of models associated with estimation of the direction of movement of the electronic device (101).
[0109] In one embodiment, the instructions, when executed by at least one processor (120) of the electronic device (101), may cause the electronic device (101) to set a reference direction of the electronic device (101) based on coordinate transformation of sensing data acquired by the sensor module (176).
[0110] In one embodiment, the instructions, when executed by at least one processor (120) of the electronic device (101), may cause the electronic device (101) to, as at least part of an operation of determining a direction of movement of the electronic device (101) based on inputting the second data and the plurality of parameters into a second model, determine the direction of movement based on comparing an output of the second model with the reference direction.
[0111] According to one embodiment, a method of operating an electronic device (101) may include an operation of acquiring first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group based on sensing data acquired by a sensor module (176) of the electronic device (101). The method of operating the electronic device (101) may include an operation of acquiring a plurality of parameters corresponding to a plurality of classes associated with a location of the electronic device (101) based on inputting the first data into a first model. The method of operating the electronic device (101) may include an operation of confirming a moving direction of the electronic device (101) based on inputting the second data and the plurality of parameters into a second model.
[0112] In one embodiment, the operating method of the electronic device (101) may further include an operation of setting a reference direction of the electronic device (101) based on sensing data acquired by the sensor module.
[0113] In one embodiment, the operation of confirming the movement direction of the electronic device (101) based on inputting the second data and the plurality of parameters of the operating method of the electronic device (101) into the second model may include an operation of confirming the movement direction based on comparing the output of the second model with the reference direction.
[0114] In one embodiment, the operation of obtaining first data including a plurality of features associated with a first feature group based on sensed data acquired by the sensor module (176) of the operating method of the electronic device (101) may include an operation of obtaining a plurality of samples based on sampling the sensed data at a first period, wherein the samples include a plurality of features associated with the first feature group. The operation of obtaining first data including a plurality of features associated with the first feature group based on sensed data acquired by the sensor module (176) may include an operation of obtaining the first data including a plurality of input sets from the plurality of samples based on time-shifting a first window for a first time.
[0115] In one embodiment, the operation of obtaining second data including a plurality of features associated with a second feature group based on the sensed data acquired by the sensor module (176) of the operating method of the electronic device (101) may include obtaining a plurality of sets of sensed data based on phase shifting the sensed data. The operation of obtaining second data including a plurality of features associated with a second feature group based on the sensed data acquired by the sensor module (176) may include obtaining a plurality of samples based on sampling the plurality of sets of sensed data at a second cycle, wherein the samples include a plurality of features associated with the second feature group. The operation of obtaining second data including a plurality of features associated with the second feature group based on the sensed data acquired by the sensor module (176) may include obtaining the second data including a plurality of input sets from the plurality of samples based on time shifting a second window for a second time.
[0116] In one embodiment, the operation of confirming the movement direction of the electronic device based on inputting the second data and the plurality of parameters of the operating method of the electronic device (101) into a second model may include an operation of obtaining third data based on inputting the second data into at least one first layer of the second model. The operation of confirming the movement direction of the electronic device based on inputting the second data and the plurality of parameters into the second model may include an operation of obtaining fourth data based on inputting the plurality of parameters into the second layer. The operation of confirming the movement direction of the electronic device based on inputting the second data and the plurality of parameters into the second model may include an operation of confirming the movement direction based on inputting the third data and the fourth data into at least one third layer.
[0117] In one embodiment, the method of operating the electronic device (101) may further include an operation of determining whether the first sensor value matches a set sensor value based on the identified movement direction. The method of operating the electronic device (101) may further include an operation of providing a notification associated with a marker corresponding to the set sensor value based on determining that the first sensor value matches the set sensor value.
[0118] According to one embodiment, a method of operating an electronic device (101) may include an operation of acquiring first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group based on sensing data acquired by a sensor module (176) of the electronic device (101). The method of operating an electronic device (101) may include an operation of acquiring a first class associated with a location of the electronic device (101) based on inputting the first data into a first model. The method of operating an electronic device (101) may include an operation of confirming a moving direction of the electronic device (101) based on inputting the second data into a second model corresponding to the acquired first class among a plurality of models associated with estimation of a moving direction of the electronic device (101).
[0119] In one embodiment, the operating method of the electronic device (101) may further include an operation of setting a reference direction of the electronic device based on coordinate transformation of sensing data acquired by the sensor module (176).
[0120] In one embodiment, the operation of determining the movement direction of the electronic device based on inputting the second data and the plurality of parameters of the operating method of the electronic device (101) into a second model may include an operation of determining the movement direction based on comparing an output of the second model with the reference direction.
[0121] Electronic devices according to the embodiments disclosed in this document may take various forms. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. Electronic devices according to the embodiments disclosed in this document are not limited to the aforementioned devices.
[0122] The embodiments of this document and the terminology used herein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly indicates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase among those phrases, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.
[0123] The term "module" used in the embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integral component, or a minimum unit or part of such a component that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).
[0124] One embodiment of the present document may be implemented as software (e.g., a program (140)) including one or more instructions stored in a storage medium (e.g., an internal memory (136) or an external memory (138)) readable by a machine (e.g., an electronic device (101)). For example, a processor (e.g., a processor (120)) of the machine (e.g., an electronic device (101)) may call at least one instruction among the one or more instructions stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one called instruction. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.
[0125] According to one embodiment, the method according to one embodiment disclosed in this document may be provided as included in a computer program product. The computer program product may be traded as a product between a seller and a buyer. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or may be distributed online (e.g., downloaded or uploaded) via an application store (e.g., Play Store™) or directly between two user devices (e.g., smart phones). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or an intermediary server.
[0126] According to one embodiment, each component (e.g., a module or a program) of the above-described components may include one or more entities, and some of the entities may be separated and arranged in other components. According to one embodiment, one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., a module or a program) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. According to one embodiment, the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.
Claims
1. In an electronic device (101), Memory (130) for storing instructions; A sensor module (176) comprising at least one sensor; and comprising at least one processor (120), The above instructions, when executed by at least one processor (120), cause the electronic device (101) to: Based on the sensing data acquired by the above sensor module (176), first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group are acquired, Based on inputting the first data into the first model, a plurality of parameters corresponding to a plurality of classes associated with the location of the electronic device (101) are obtained, An electronic device (101) that causes the movement direction of the electronic device (101) to be determined based on inputting the second data and the plurality of parameters into the second model.
2. In paragraph 1, The above instructions, when executed by at least one processor (120), cause the electronic device (101) to: An electronic device (101) that causes the reference direction of the electronic device (101) to be set based on coordinate conversion of sensing data acquired by the sensor module (176).
3. In any one of paragraphs 1 and 2, The above instructions, when executed by at least one processor (120), cause the electronic device (101) to: At least as part of the operation of determining the direction of movement of the electronic device (101) based on inputting the second data and the plurality of parameters into the second model, An electronic device (101) that causes the movement direction to be determined based on comparing the output of the second model with the reference direction.
4. In any one of paragraphs 1 to 3, The above instructions, when executed by at least one processor (120), cause the electronic device (101) to: At least as a part of an operation of acquiring first data including a plurality of features associated with a first feature group, based on sensing data acquired by the sensor module, A plurality of samples are acquired based on sampling the sensing data in a first period, wherein the samples include a plurality of features associated with a first feature group, An electronic device (101) that causes the first data including a plurality of input sets to be acquired from the plurality of samples based on time-shifting the first window during the first time period.
5. In any one of paragraphs 1 to 4, The above instructions, when executed by at least one processor (120), cause the electronic device (101) to: At least as a part of an operation of acquiring second data including a plurality of features associated with a second feature group, based on the sensing data acquired by the above sensor module (176), Based on the phase transformation of the above sensing data, multiple sensing data sets are obtained, A plurality of samples are obtained based on sampling the plurality of sensing data sets in a second period, wherein the samples include a plurality of features associated with a second feature group, An electronic device (101) that causes the second data, which includes a plurality of input sets, to be acquired from the plurality of samples based on time-shifting the second window during the second time period.
6. In any one of paragraphs 1 to 5, The above instructions, when executed by at least one processor (120), cause the electronic device (101) to: At least as part of the operation of determining the direction of movement of the electronic device based on inputting the second data and the plurality of parameters into the second model, Based on inputting the second data into at least one first layer of the second model, third data is obtained, Based on inputting the above multiple parameters into the second layer, the fourth data is obtained, An electronic device (101) that causes the movement direction to be determined based on inputting the third data and the fourth data into at least one third layer.
7. In any one of paragraphs 1 to 6, The above instructions, when executed by at least one processor (120), cause the electronic device (101) to: Based on the above confirmed movement direction, check whether the first sensor value and the set sensor value match, An electronic device (101) that causes a notification associated with a marker corresponding to the set sensor value to be provided based on determining that the first sensor value matches the set sensor value.
8. In the electronic device (101), Memory (130) for storing instructions; A sensor module (176) comprising at least one sensor; and comprising at least one processor (120), The above instructions, when executed by at least one processor (120), cause the electronic device (101) to: Based on the sensing data acquired by the above sensor module (176), first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group are acquired, Based on inputting the above first data into the first model, the first class associated with the location of the electronic device (101) is identified, An electronic device (101) that causes the movement direction of the electronic device (101) to be confirmed based on inputting the second data into a second model corresponding to the acquired first class among a plurality of models associated with the estimation of the movement direction of the electronic device (101).
9. In paragraph 8, The above instructions, when executed by at least one processor (120), cause the electronic device (101) to: An electronic device (101) that causes the reference direction of the electronic device (101) to be set based on coordinate transformation of sensing data acquired by the sensor module (176).
10. In any one of paragraphs 8 to 9, The above instructions, when executed by at least one processor (120), cause the electronic device (101) to: At least as part of the operation of determining the direction of movement of the electronic device (101) based on inputting the second data and the plurality of parameters into the second model, An electronic device (101) that causes the movement direction to be determined based on comparing the output of the second model with the reference direction.
11. In the operating method of an electronic device (101), An operation of acquiring first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group based on sensing data acquired by a sensor module (176) of the electronic device (101); An operation of obtaining a plurality of parameters corresponding to a plurality of classes associated with the location of the electronic device (101) based on inputting the first data into the first model; and An operation of confirming the movement direction of the electronic device (101) based on inputting the second data and the plurality of parameters into the second model. A method of operating an electronic device (101), comprising:
12. In paragraph 11, An operating method of an electronic device (101), further comprising an operation of setting a reference direction of the electronic device (101) based on sensing data acquired by the sensor module.
13. In any one of paragraphs 11 to 12, Based on inputting the second data and the plurality of parameters into the second model, the operation of confirming the movement direction of the electronic device (101) is as follows. An operating method of an electronic device (101), including an operation of confirming the movement direction based on comparing the output of the second model with the reference direction.
14. In any one of paragraphs 11 to 13, An operation of acquiring first data including a plurality of features associated with a first feature group based on sensing data acquired by the above sensor module (176) is as follows: Based on sampling the sensing data in a first period, wherein the sample includes a plurality of features associated with a first feature group, and an operation of acquiring a plurality of samples; and A method of operating an electronic device (101), comprising: obtaining first data including a plurality of input sets from the plurality of samples based on time-shifting a first window during a first time period.
15. In a storage medium storing computer-readable instructions, the instructions, when executed by at least one processor (120) of an electronic device (101), cause the electronic device (101) to perform operations, The above actions are: An operation of acquiring first data including a plurality of features associated with a first feature group and second data including a plurality of features associated with a second feature group based on sensing data acquired by a sensor module (176) of the electronic device (101); An operation of obtaining a plurality of parameters corresponding to a plurality of classes associated with the location of the electronic device (101) based on inputting the first data into the first model; and A storage medium including an operation of confirming the movement direction of the electronic device (101) based on inputting the second data and the plurality of parameters into the second model.
Citation Information
Patent Citations
Sensor apparatus, notification apparatus, notification system, and notification method
JP2003296829A
Running state detection device and program
JP2014149178A
.size correcting apparatus for a fluorine resin molded product and a fluorine resin molded product using the manufacturing method
KR1020210156753A
Novel compound and organic light emitting device comprising the same
KR1020240120853A
Interception of mobile apparatus
US20200273129A1