Information processing device, information processing method, and information processing program
By detecting the signal values of GNSS signals and surrounding devices, eliminating the influence of AGC, and using multi-device voting to determine the accurate GNSS signal value, the GNSS signal error problem is solved, and the positioning accuracy and application accuracy are improved.
Patent Information
- Application Number
- JP2023117751
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-07-19
- Publication Date
- 2025-01-30
AI Technical Summary
In the prior art, automatic gain control (AGC) is not applied to GNSS signals in traffic mode identification and positioning correction, resulting in signal error and positioning inaccurate.
By detecting the GNSS signal and the signal values of surrounding terminal devices, determine whether AGC is included, and vote to determine the correct GNSS signal value using the signal values of multiple terminal devices, eliminate signals that may be affected by AGC, and estimate the accurate GNSS signal value.
Improves the accuracy of GNSS signals, improves positioning accuracy, and supports more accurate location services and applications, such as weather forecasts and advertising push.
Smart Images

Figure 2025014846000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to an information processing device, an information processing method, and an information processing program. [Background technology]
[0002] Conventionally, a technique has been disclosed for identifying the means of transportation of a user who possesses a position management terminal and enabling correction of positioning results based on the means of transportation (see Patent Document 1). [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2023-067192 A Summary of the Invention [Problem to be solved by the invention]
[0004] However, there is room for improvement in the above conventional technology. For example, the above conventional technology corrects the positioning result based on the means of transportation, but there is room for improvement in obtaining accurate GNSS (Global Navigation Satellite System) signals that are not subject to automatic gain control (AGC). Therefore, there is a demand for a means for estimating the correct value of the GNSS signal.
[0005] The present application has been made in consideration of the above, and aims to estimate a correct value of a GNSS signal. [Means for solving the problem]
[0006] The information processing device of the present application is an information processing device used as a user's terminal device, and is characterized in that it comprises a positioning unit that detects GNSS signals transmitted from a satellite, a receiving unit that receives GNSS signal values detected by surrounding terminal devices from the surrounding terminal devices, a confirmation unit that, when the GNSS signal value detected by the information processing device itself does not match the GNSS signal value detected by the surrounding terminal devices for a GNSS signal from the same satellite, determines whether or not there is a suspicion that AGC is included for each signal value, and an estimation unit that discards the GNSS signal value that is suspected to include AGC and estimates and adopts the GNSS signal value that is not suspected to include AGC as the correct value. Effect of the Invention
[0007] According to one aspect of the embodiment, the correct value of a GNSS signal can be estimated. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is an explanatory diagram showing an overview of an information processing system according to an embodiment. [Diagram 2] FIG. 2 is a diagram illustrating an example of the configuration of a terminal device according to the embodiment. [Diagram 3] FIG. 3 is a diagram illustrating an example of the configuration of a server device according to the embodiment. [Figure 4] FIG. 4 is a flowchart showing a processing procedure according to the embodiment. [Diagram 5] FIG. 5 is a diagram illustrating an example of a hardware configuration. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] Hereinafter, the information processing device, the information processing method, and the information processing program according to the present application will be described in detail with reference to the drawings. Note that the information processing device, the information processing method, and the information processing program according to the present application are not limited to the embodiments. In addition, the same components in the following embodiments are denoted by the same reference numerals, and duplicated descriptions are omitted.
[0010] [1. Overview of the information processing system] First, an overview of an information processing system according to an embodiment will be described with reference to Fig. 1. Fig. 1 is an explanatory diagram showing an overview of an information processing system according to an embodiment. As shown in Fig. 1, an information processing system 1 according to an embodiment includes a terminal device 10 and a server device 100. These various devices are connected to each other via a network N in a wired or wireless manner so as to be able to communicate with each other. This allows the terminal device 10 to cooperate with the server device 100. The network N is, for example, a LAN (Local Area Network) or a WAN (Wide Area Network) such as the Internet.
[0011] The terminal device 10 is an information processing device used by a user U. For example, the terminal device 10 is a smart device such as a smartphone or a tablet terminal, a mobile phone such as a feature phone, a personal computer (PC), a personal digital assistant (PDA), a game machine or AV device equipped with a communication function, an information appliance or digital appliance, a car navigation system, a smart watch or a head-mounted display, a wearable device such as smart glasses, etc. The terminal device 10 may also be a house or building, a car, a home appliance, an electronic device, etc. that supports the Internet of Things (IOT).
[0012] In this embodiment, the terminal device 10 is a smart device such as a smartphone or tablet terminal used by a user U, and is a mobile terminal device that can communicate with any server device via a wireless communication network such as LTE (Long Term Evolution), 4G (4th Generation), or 5G (5th Generation: 5th generation mobile communication system). The terminal device 10 has a screen such as a liquid crystal display having a touch panel function, and accepts various operations on display data such as content, such as tapping, sliding, and scrolling, performed by a finger or a stylus from the user U. An operation performed on an area of the screen where the content is displayed may be regarded as an operation on the content. The terminal device 10 may be not only a smart device, but also an information processing device such as a desktop PC (Personal Computer) or a notebook PC.
[0013] In addition, the terminal device 10 can connect to the network N via a wireless communication network such as LTE, 4G, or 5G, or short-range wireless communication such as Bluetooth (registered trademark) or wireless LAN (Local Area Network), and communicate with the server device 100.
[0014] The server device 100 is, for example, a computer such as a PC or a blade server, or a mainframe or a workstation, etc. The server device 100 may be realized by cloud computing.
[0015] In this embodiment, the server device 100 is an information processing device that cooperates with the terminal device 10 of each user U and provides API (Application Programming Interface) services for various applications (hereinafter, apps), etc., as well as various data, to the terminal device 10 of each user U, and is realized by a computer, a cloud system, etc.
[0016] The server device 100 may also be an information processing device that provides some kind of online Web service to the terminal device 10 of each user U. For example, the server device 100 may provide services such as Internet connection, search service, SNS (Social Networking Service), electronic commerce (EC), electronic payment, online games, online banking, online trading, hotel and ticket reservations, video and music distribution, news, maps, route search, route guidance, line information, operation information, and weather forecasts as Web services. In practice, the server device 100 may cooperate with various servers that provide the above-mentioned Web services, and may mediate the Web services or be responsible for processing the Web services.
[0017] The server device 100 can acquire user information about the user U. For example, the server device 100 acquires information about the attributes of the user U, such as the gender, age, and residential area of the user U. The server device 100 then stores and manages the information about the attributes of the user U together with identification information (such as a user ID) indicating the user U.
[0018] The server device 100 also acquires various types of history information (log data) indicating the actions of the user U from the terminal device 10 of the user U or from various servers based on the user ID or the like. For example, the server device 100 acquires a location history, which is a history of the location and date and time of the user U, from the terminal device 10. The server device 100 also acquires a search history, which is a history of search queries input by the user U, from a search server (search engine). The server device 100 also acquires a browsing history, which is a history of content browsed by the user U, from a content server. The server device 100 also acquires a purchase history (payment history), which is a history of product purchases and payment processing by the user U, from an electronic commerce server or a payment processing server. The server device 100 may also acquire a listing history, which is a history of listings on the marketplace by the user U, and a sales history, from the electronic commerce server or the payment processing server. The server device 100 also acquires a posting history, which is a history of posts by the user U, from a posting server that provides a word-of-mouth posting service or an SNS server. The above-mentioned various servers and the like may be the server device 100 itself. That is, the server device 100 may function as the above-mentioned various servers and the like.
[0019] Furthermore, the number of devices included in the information processing system 1 shown in Fig. 1 is not limited to that shown in the figure. For example, in Fig. 1, for the sake of simplicity, only one terminal device 10 is shown, but this is merely an example and is not limiting, and two or more devices may be included.
[0020] 2. Estimation of GNSS Correct Values When a terminal device 10 of a user U, such as a smartphone, receives a Global Navigation Satellite System (GNSS) signal, the GNSS signal value differs even if the device is the same model at the same location and time. There are two possible reasons for this:
[0021] (Cause 1) Different terminals track different GNSS satellites (hereafter referred to as "satellites"). In other words, one terminal device cannot trace all satellites.
[0022] (Cause 2) Weak signals from satellites are amplified by automatic gain control (AGC). In other words, depending on the location of the terminal device and the time of day, the signal from distant satellites becomes weaker and requires amplification of the signal by AGC. As a result, the signal deviates from the original raw data, and an error occurs in the current position estimated from the GNSS signal value.
[0023] In this embodiment, the terminal device 10 of user U acquires as input the GNSS signal values sensed by the terminal device 10 of user U, the GNSS signal values sensed by the terminal devices 10 of surrounding people (other users), and the number of AGC judgments (confidence level that AGC is not applied), and outputs as output a combined total of all the GNSS signal values sensed by the terminal devices 10 of user U and the surrounding people.
[0024] For example, as shown in Fig. 1, the terminal device 10 of the user U acquires its own GNSS signal observation value (signal strength) and collects GNSS signal observation values of people around it (step S1). Next, the terminal device 10 of the user U judges whether there is any doubt about the inclusion of AGC (step S2). Next, the terminal device 10 of the user U checks past judgment results regarding the doubt (step S3). Next, the terminal device 10 of the user U estimates the correct value (step S4).
[0025] [2-1. Collecting GNSS signal observations from surrounding people] The terminal device 10 of user U detects the terminal devices 10 of people in the vicinity using signals such as BLE (Bluetooth (registered trademark) Low Energy), Wi-Fi (registered trademark), UWB (Ultra-Wide Band), etc., and collects GNSS signal observation data from the terminal devices 10 of the people in the vicinity.
[0026] In this embodiment, for simplicity, the maximum number of satellites is five. User U is referred to as "self", and among the people around, the first person is referred to as "A", and the second person is referred to as "B". GNSS signal observation values are represented for each user in the order of {satellite 1, satellite 2, satellite 3, satellite 4, satellite 5}. Furthermore, if the GNSS signal value cannot be observed, it is represented as "-". Self {2,1,-,-,10}, A {2,4,5,-,-}, B {-,-,2,0,10}
[0027] The terminal device 10 of user U acquires five GNSS signal observation values on its own, and also acquires five GNSS signal observation values acquired by the terminal devices 10 of people A and B in the vicinity. Note that the terminal devices 10 of people A and B in the vicinity also perform the same process as the terminal device 10 of user U.
[0028] Furthermore, the terminal device 10 of the user U rearranges the above GNSS signal observation values for each satellite in the format of (self, A, B). Self {2,1,-,-,10}, A {2,4,5,-,-}, B {-,-,2,0,10} →{(2,2,-),(1,4,-),(-,-,2),(-,-,0),(10,-,10)}
[0029] [2-2. Are there doubts about whether AGC is included?] The terminal device 10 of the user U judges whether or not the collected GNSS signal observation values are suspected of including AGC. Incidentally, including AGC indicates that the signal is amplified by AGC.
[0030] In this embodiment, the terminal device 10 of the user U judges suspicious values that may include AGC from among the above {(2,2,-), (1,4,-), (-,-,2), (-,-,0), (10,-,10)}. For example, the terminal device 10 of the user U judges that the GNSS signal observation value (1,4,-) of the second satellite (satellite 2) is suspicious because the value differs between the user U and A (4 times difference).
[0031] If there are about 10 people around you, including yourself, and you have 10 votes to decide, it is rare for everyone to get the same value, including the AGC result, so you can decide by voting (majority vote). If, for example, 3 of the 10 votes are the same value and those 3 votes are the most voted for, then there is a possibility that it is the correct value. However, if there are 2 votes for each GNSS signal observation value, it is doubtful which one is the AGC. Also, if there are only two people, yourself and A, as above, it is doubtful which one is the AGC.
[0032] [2-3. Check past decisions regarding doubts] When there is a doubt as to whether AGC is included, the terminal device 10 of the user U checks the results of past AGC decisions (the number of AGC decisions).
[0033] In this embodiment, the terminal device 10 of the user U checks the most recent AGC decision results of itself and the second satellite of A for the GNSS signal observation value (1,4,-) of the second satellite (satellite 2).
[0034] For example, if user U's terminal device 10 has not made an AGC determination for the second satellite for a long time, but AGC determination has been made for the second satellite three times out of the last ten times, user U's terminal device 10 will adopt its own GNSS signal observation value of "1" as the GNSS signal observation value of the second satellite, since user U's terminal device 10 is more reliable and A's is less reliable.
[0035] [2-4. Estimation of correct value] Finally, the terminal device 10 of the user U regards the entire GNSS signal observation value as a vector and estimates the correct value. Although the standing position may differ slightly, the strength relationship of the five signal values does not change. In this embodiment, the terminal device 10 of the user U calculates the multiple correlation of the five signal values and estimates the correct value of its own GNSS signal. {(2,2,-),(1,4,-),(-,-,2),(-,-,0),(10,-,10)} →{2,1,2,0,10}
[0036] This allows the terminal device 10 of the user U to make its own GNSS signal values, including signals from satellites that the user U cannot detect, as close as possible to (a value close to) the original accurate raw data that is not amplified by AGC. By using such GNSS signal values, it is possible to estimate more accurate latitude and longitude and current position. In other words, this can contribute to improving the performance of the GNSS. It is also possible to provide information such as rain cloud radar and advertisements based on more accurate positions.
[0037] According to this embodiment, signal values of satellites not detected by one's own terminal device 10 can be supplemented by acquiring them from the terminal devices 10 of people in the vicinity. In addition, when acquiring signal values of satellites detected by the terminal devices 10 of people in the vicinity, it is possible to exclude those with AGC applied and limit to those without AGC applied.
[0038] [3. Example of terminal device configuration] Next, the configuration of the terminal device 10 will be described with reference to Fig. 2. Fig. 2 is a diagram showing an example of the configuration of the terminal device 10. As shown in Fig. 2, the terminal device 10 includes a communication unit 11, a display unit 12, an input unit 13, a positioning unit 14, a sensor unit 20, a control unit 30 (controller), and a storage unit 40.
[0039] (Communications Department 11) The communication unit 11 is connected to the network N by wire or wirelessly, and transmits and receives information to and from the server device 100 via the network N. For example, the communication unit 11 is realized by a NIC (Network Interface Card), an antenna, or the like.
[0040] (Display section 12) The display unit 12 is a display device that displays various information such as position information. For example, the display unit 12 is a liquid crystal display (LCD) or an organic electro-luminescent display (OLED). The display unit 12 is a touch panel display, but is not limited to this.
[0041] (Input section 13) The input unit 13 is an input device that accepts various operations from the user U. For example, the input unit 13 has buttons for inputting characters, numbers, and the like. The input unit 13 may be an input / output port (I / O port), a USB (Universal Serial Bus) port, or the like. In addition, when the display unit 12 is a touch panel display, a part of the display unit 12 functions as the input unit 13. In addition, the input unit 13 may be a microphone that accepts voice input from the user U, or the like. The microphone may be wireless.
[0042] (Positioning unit 14) The positioning unit 14 receives a signal (radio wave) transmitted from a satellite of a GPS (Global Positioning System), and acquires position information (e.g., latitude and longitude) indicating the current position of the terminal device 10, which is the device itself, based on the received signal. That is, the positioning unit 14 determines the position of the terminal device 10. Note that the GPS is merely an example of a GNSS (Global Navigation Satellite System). For example, the positioning unit 14 senses a GNSS signal transmitted from a satellite.
[0043] The positioning unit 14 can measure the position by various methods other than GPS. For example, the positioning unit 14 may measure the position by using various communication functions of the terminal device 10 as described below as an auxiliary positioning means for position correction or the like.
[0044] (Wi-Fi positioning) For example, the positioning unit 14 uses a Wi-Fi (registered trademark) communication function of the terminal device 10 or a communication network provided by each communication company to measure the position of the terminal device 10. Specifically, the positioning unit 14 performs Wi-Fi communication or the like and measures the distance to a nearby base station or access point to measure the position of the terminal device 10.
[0045] (Beacon positioning) The positioning unit 14 may measure the position by using a Bluetooth (registered trademark) function of the terminal device 10. For example, the positioning unit 14 measures the position of the terminal device 10 by connecting to a beacon transmitter connected by the Bluetooth (registered trademark) function.
[0046] (geomagnetic positioning) The positioning unit 14 also measures the position of the terminal device 10 based on a geomagnetic pattern of a structure measured in advance and a geomagnetic sensor included in the terminal device 10.
[0047] (RFID positioning) Furthermore, for example, if the terminal device 10 has a function of an RFID (Radio Frequency Identification) tag equivalent to a contactless IC card used at station ticket gates, stores, etc., or has a function of reading an RFID tag, the location of use is recorded together with information on a payment or the like made by the terminal device 10. The positioning unit 14 may obtain such information to measure the location of the terminal device 10. Furthermore, the location may be measured by an optical sensor, an infrared sensor, or the like provided in the terminal device 10.
[0048] The positioning unit 14 may, if necessary, measure the position of the terminal device 10 using one or a combination of the above-mentioned positioning means.
[0049] (Sensor unit 20) The sensor unit 20 includes various sensors mounted on or connected to the terminal device 10. The connection may be wired or wireless. For example, the sensors may be detection devices other than the terminal device 10, such as wearable devices and wireless devices. In the example shown in FIG. 2, the sensor unit 20 includes an acceleration sensor 21, a gyro sensor 22, an air pressure sensor 23, a temperature sensor 24, a sound sensor 25, a light sensor 26, a magnetic sensor 27, and an image sensor (camera) 28.
[0050] The above-mentioned sensors 21 to 28 are merely examples and are not intended to be limiting. That is, the sensor unit 20 may be configured to include some of the sensors 21 to 28, or may include other sensors such as a humidity sensor in addition to or instead of the sensors 21 to 28.
[0051] The acceleration sensor 21 is, for example, a three-axis acceleration sensor, and detects physical movements of the terminal device 10, such as the moving direction, speed, and acceleration of the terminal device 10. The gyro sensor 22 detects physical movements of the terminal device 10, such as tilts in three axial directions, based on the angular velocity, etc. of the terminal device 10. The air pressure sensor 23 detects, for example, the air pressure around the terminal device 10.
[0052] Since the terminal device 10 includes the above-mentioned acceleration sensor 21, gyro sensor 22, and air pressure sensor 23, it is possible to measure the position of the terminal device 10 using a technique such as Pedestrian Dead-Reckoning (PDR) that uses these sensors 21 to 23. This makes it possible to obtain indoor position information that is difficult to obtain using a positioning system such as GPS.
[0053] For example, the number of steps, walking speed, and distance walked can be calculated by a pedometer using the acceleration sensor 21. In addition, the moving direction, line of sight direction, and body inclination of the user U can be known by using the gyro sensor 22. In addition, the altitude and floor number on which the terminal device 10 of the user U is located can be known from the air pressure detected by the air pressure sensor 23.
[0054] The air temperature sensor 24 detects, for example, the air temperature around the terminal device 10. The sound sensor 25 detects, for example, the sound around the terminal device 10. The light sensor 26 detects the illuminance around the terminal device 10. The magnetic sensor 27 detects, for example, the geomagnetism around the terminal device 10. The image sensor 28 captures an image around the terminal device 10.
[0055] The above-mentioned air pressure sensor 23, temperature sensor 24, sound sensor 25, light sensor 26, and image sensor 28 can detect the air pressure, temperature, sound, and illuminance, and capture images of the surroundings, thereby detecting the environment and situation around the terminal device 10. In addition, the accuracy of the location information of the terminal device 10 can be improved based on the environment and situation around the terminal device 10.
[0056] (Control unit 30) The control unit 30 includes, for example, a microcomputer having a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM, an input / output port, and various other circuits. The control unit 30 may also be configured with hardware such as an integrated circuit, for example, an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array). The control unit 30 includes a transmitting unit 31, a receiving unit 32, and a processing unit 33.
[0057] (Transmitter 31) The transmission unit 31 can transmit, for example, various information input by the user U using the input unit 13, various information detected by each sensor 21-28 mounted on or connected to the terminal device 10, and location information of the terminal device 10 measured by the positioning unit 14 to other terminal devices 10 or the server device 100 via the communication unit 11.
[0058] (Receiving unit 32) The receiving unit 32 can receive, via the communication unit 11, various types of information provided by other terminal devices 10 and the server device 100, and requests for various types of information from other terminal devices 10 and the server device 100.
[0059] The receiving unit 32 receives, from the surrounding terminal devices 10, GNSS signal values sensed by the surrounding terminal devices 10. The receiving unit 32 also receives, from the surrounding terminal devices 10, GNSS signal values from satellites that the receiving unit 32 does not sense.
[0060] For example, the receiver 32 receives, from the surrounding terminal devices 10, GNSS signal values sensed by the surrounding terminal devices 10 and the number of AGC determinations. The receiver 32 also receives, from multiple surrounding terminal devices 10, GNSS signal values from satellites not sensed by the receiver 32 and the number of AGC determinations.
[0061] (Processing section 33) The processing unit 33 controls the entire terminal device 10, including the display unit 12, etc. For example, the processing unit 33 can output various information transmitted by the transmission unit 31 and various information received from the server device 100 by the reception unit 32 to the display unit 12 for display.
[0062] Furthermore, the processing unit 33 acquires, via the positioning unit 14, the GNSS signal values sensed by the terminal device 10 of the user U (its own GNSS signal observation values).
[0063] Furthermore, the processing unit 33 performs AGC determination for the GNSS signal value (its own GNSS signal observation value) sensed by the terminal device 10 of the user U. For example, when the signal is amplified by AGC for its own GNSS signal observation value, the processing unit 33 determines that AGC is applied (determines AGC).
[0064] In addition, the processing unit 33 acquires, via the receiving unit 32, from the terminal devices 10 of the surrounding people, the GNSS signal values sensed by the surrounding people (GNSS signal observation values of the surrounding people) and the number of AGC determinations.
[0065] In addition, the processing unit 33 compares (collates) the GNSS signal values sensed by the user U's terminal device 10 (its own GNSS signal observation values) with the GNSS signal values sensed by people in the vicinity (GNSS signal observation values of people in the vicinity) for signals received from the same satellite, and determines whether there is any doubt about the inclusion of AGC.
[0066] Furthermore, if there is a doubt as to whether AGC is included, the processing unit 33 checks the results of past AGC decisions. For example, for each satellite that is the source of the signal, the processing unit 33 checks the most recent number of AGC decisions for the user and people around the user for the GNSS signal value (GNSS signal observation value), eliminates the value with a higher number of AGC decisions as it is less reliable, and adopts the value with a lower number of AGC decisions (no AGC decisions).
[0067] Then, the processing unit 33 regards the entire GNSS signal value (GNSS signal observation value) as a vector, and estimates the ground truth value of the GNSS signal value (GNSS signal observation value).
[0068] In order to carry out the above-mentioned processing, the processing unit 33 may start a dedicated application or the like and operate to realize the functions of the following units (confirmation unit 34, estimation unit 35).
[0069] (Verification Section 34) When the GNSS signal value sensed by the confirmation unit 34 itself does not match the GNSS signal value sensed by a surrounding terminal device 10 for a GNSS signal from the same satellite, the confirmation unit 34 determines whether there is any doubt as to whether AGC is included in each signal value.
[0070] In addition, if the GNSS signal value sensed by the confirmation unit 34 itself does not match the GNSS signal value sensed by a surrounding terminal device 10 for a GNSS signal from the same satellite, the confirmation unit 34 determines that the GNSS signal value sensed by the confirmation unit 34 or the GNSS signal value sensed by a surrounding terminal device 10 that has a greater number of AGC determinations is suspected of including AGC.
[0071] In addition, when the GNSS signal values sensed by each of multiple surrounding terminal devices 10 do not match for a GNSS signal from the same satellite, the confirmation unit 34 determines that the one with a greater number of AGC determinations is suspected of including AGC, and determines that the one with a fewer number of AGC determinations is not suspected of including AGC.
[0072] In addition, for GNSS signals from the same satellite, the confirmation unit 34 determines that the signal value that has the most matches between the GNSS signal value sensed by itself and the GNSS signal values sensed by multiple terminal devices 10 in the vicinity is not suspected of including AGC, and determines that the other signal values are suspected of including AGC.
[0073] (Estimation part 35) The estimation unit 35 discards GNSS signal values that are suspected of including AGC, and estimates and adopts GNSS signal values that are not suspected of including AGC as correct values.
[0074] In addition, if there is no doubt that the GNSS signal value from a satellite that the estimation unit 35 does not detect includes AGC, the estimation unit 35 adopts the GNSS signal value from a satellite that the estimation unit 35 does not detect as the GNSS signal value that the estimation unit 35 has detected.
[0075] Furthermore, the estimation unit 35 estimates the current position of the user U by using the GNSS signal value that is estimated to be the correct value.
[0076] (Storage unit 40) The storage unit 40 is realized by, for example, a semiconductor memory element such as a random access memory (RAM) or a flash memory, or a storage device such as a hard disk drive (HDD), a solid state drive (SSD), an optical disk, etc. Various programs and various data are stored in the storage unit 40.
[0077] The memory unit 40 also stores the GNSS signal values sensed by the terminal device 10 of the user U (the user's own GNSS signal observation values), the GNSS signal values sensed by people in the vicinity (the GNSS signal observation values of people in the vicinity), and the number of AGC judgments.
[0078] [4. Example of Server Device Configuration] Next, the configuration of the server device 100 according to the embodiment will be described with reference to Fig. 3. Fig. 3 is a diagram showing an example of the configuration of the server device 100 according to the embodiment. As shown in Fig. 3, the server device 100 includes a communication unit 110, a storage unit 120, and a control unit 130.
[0079] (Communication unit 110) The communication unit 110 is realized by, for example, a network interface card (NIC), etc. The communication unit 110 is also connected to a network N in a wired or wireless manner.
[0080] (Storage unit 120) The storage unit 120 is realized by, for example, a semiconductor memory element such as a random access memory (RAM) or a flash memory, or a storage device such as a HDD, an SSD, an optical disk, etc. The storage unit 120 may store attribute information and history information (log data) of the user U together with identification information (such as a user ID) indicating the user U.
[0081] (Control unit 130) The control unit 130 is a controller, and is realized by, for example, a CPU (Central Processing Unit), an MPU (Micro Processing Unit), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), etc., executing various programs (corresponding to an example of an information processing program) stored in a storage device inside the server device 100 using a storage area such as a RAM as a working area. In the example shown in FIG. 3, the control unit 130 has an acquisition unit 131, an alternative processing unit 132, and a provision unit 133.
[0082] (Acquisition part 131) The acquisition unit 131 acquires a search query input by a user U (user). For example, when the user U inputs a search query into a search engine or the like to perform a keyword search, the acquisition unit 131 acquires the search query via the communication unit 110. That is, the acquisition unit 131 acquires, via the communication unit 110, a keyword input by the user U into a search box of a search engine, a site, or an app.
[0083] Furthermore, the acquisition unit 131 acquires user information regarding the user U via the communication unit 110. For example, the acquisition unit 131 acquires identification information (such as a user ID) indicating the user U, location information of the user U, attribute information of the user U, and the like from the terminal device 10 of the user U. Furthermore, the acquisition unit 131 may acquire the identification information indicating the user U, attribute information of the user U, and the like when the user U is registered. Then, the acquisition unit 131 stores the user information in the storage unit 120.
[0084] Furthermore, the acquisition unit 131 acquires various types of history information (log data) indicating the behavior of the user U via the communication unit 110. For example, the acquisition unit 131 acquires various types of history information indicating the behavior of the user U from the terminal device 10 of the user U, or from various servers based on a user ID or the like. Then, the acquisition unit 131 stores the various types of history information in the storage unit 120.
[0085] In addition, the acquisition unit 131 acquires, via the communication unit 110, from the terminal device 10 of each user U, the correct value of the GNSS signal value (GNSS signal observation value), or information regarding the current position (latitude, longitude, etc.) based on the correct value.
[0086] In addition, when the acquisition unit 131 receives permission from the terminal device 10 of each user U, it may cooperate with the terminal device 10 of each user U and acquire GNSS signal values (GNSS signal observation values) sensed by the terminal device 10 of that user U (oneself) and those of surrounding people from the terminal device 10 of each user U via the communication unit 110.
[0087] (Alternative processing unit 132) The alternative processing unit 132, instead of the processing unit 33 of the terminal device 10 of the user U, determines whether there is any doubt as to whether AGC is included, checks past determination results regarding the doubt, and estimates the correct value. For example, the alternative processing unit 132 performs the processing of the processing unit 33 of the terminal device 10 of the user U by using an API. In this case, the alternative processing unit 132 determines whether there is any doubt as to whether AGC is included based on the GNSS signal value (GNSS signal observation value) from the terminal device 10 of each user U, checks past determination results regarding the doubt, and estimates the correct value.
[0088] (Provider 133) The provision unit 133 provides information such as rain cloud radar and advertisements based on the correct value of the GNSS signal value (GNSS signal observation value) from each user U's terminal device 10, or information regarding the current position (latitude, longitude, etc.) based on the correct value.
[0089] In addition, when GNSS signal values (GNSS signal observation values) are acquired from the terminal device 10 of each user U, the providing unit 133 provides (returns) the estimated correct value to the terminal device 10 of each user U.
[0090] 5. Processing Procedure Next, a processing procedure by the terminal device 10 according to the embodiment will be described with reference to Fig. 4. Fig. 4 is a flowchart showing the processing procedure according to the embodiment. Note that the processing procedure shown below is repeatedly executed by the control unit 30 of the terminal device 10.
[0091] For example, as shown in FIG. 4, the positioning unit 14 of the terminal device 10 senses (receives) a GNSS signal transmitted from a satellite (step S101).
[0092] Next, the receiving unit 32 of the terminal device 10 receives, via the communication unit 11, GNSS signal values sensed by the surrounding terminal devices 10 from the surrounding terminal devices 10 (step S102).
[0093] Next, the confirmation unit 34 of the terminal device 10 determines whether the GNSS signal value sensed by itself matches the GNSS signal value sensed by a surrounding terminal device 10 for the GNSS signal from the same satellite (step S103).
[0094] At this time, if the GNSS signal value sensed by the terminal device 10 itself matches the GNSS signal value sensed by a surrounding terminal device 10, the estimation unit 35 of the terminal device 10 estimates that the matching signal value (the GNSS signal value sensed by the terminal device 10 itself) is the correct value (step S104).
[0095] In addition, if the GNSS signal value sensed by the terminal device 10 does not match the GNSS signal value sensed by a surrounding terminal device 10, the confirmation unit 34 determines which GNSS signal value has had a fewer number of recent AGC determinations (step S105).
[0096] Next, the estimation unit 35 of the terminal device 10 determines that the GNSS signal value for which the most recent AGC determination count is smaller is more reliable, and estimates it to be the correct value (step S106).
[0097] 6. Modifications The above-described terminal device 10 and server device 100 may be implemented in various different forms other than the above-described embodiment. Therefore, the following describes modifications of the embodiment.
[0098] In the above embodiment, a part or all of the processing executed by the terminal device 10 may actually be executed by the server device 100. In this case, it is assumed that the server device 100 has the functions of the terminal device 10 in the above embodiment. Alternatively, the server device 100 may cooperate with the terminal device 10 of each user U and provide the terminal device 10 of each user U with API services for apps that realize the above embodiment and various data.
[0099] 7. Effects As described above, the information processing device of the present application is an information processing device used as a terminal device 10 of a user U, and is characterized in that it comprises a positioning unit 14 that detects GNSS signals transmitted from a satellite, a receiving unit 32 that receives GNSS signal values detected by surrounding terminal devices 10 from surrounding terminal devices 10, a confirmation unit 34 that, when the GNSS signal value detected by the information processing device itself does not match the GNSS signal value detected by surrounding terminal devices 10 for a GNSS signal from the same satellite, determines whether or not there is a suspicion that AGC is included for each signal value, and an estimation unit 35 that discards the GNSS signal value that is suspected to include AGC and estimates and adopts the GNSS signal value that is not suspected to include AGC as the correct value.
[0100] The receiving unit 32 receives the GNSS signal values sensed by the surrounding terminal devices 10 and the number of AGC determinations from the surrounding terminal devices 10. If the GNSS signal values sensed by the receiving unit 32 do not match the GNSS signal values sensed by the surrounding terminal devices 10 for GNSS signals from the same satellite, the confirming unit 34 determines that the GNSS signal value sensed by the receiving unit 32 or the GNSS signal value sensed by the surrounding terminal devices 10, whichever has the greater number of AGC determinations, is suspected of including AGC. The estimating unit 35 discards the GNSS signal values suspected of including AGC, and estimates and adopts the GNSS signal values not suspected of including AGC as the correct value.
[0101] The receiver 32 receives GNSS signal values from satellites not detected by the receiver 32 from the surrounding terminal devices 10. Furthermore, if there is no doubt that the GNSS signal values from satellites not detected by the receiver 32 include AGC, the estimation unit 35 employs the GNSS signal values from satellites not detected by the receiver 32 as the GNSS signal values detected by the receiver 32.
[0102] The receiver 32 receives GNSS signal values from satellites not sensed by the receiver 32 and the number of AGC determinations from multiple surrounding terminal devices 10. If the GNSS signal values sensed by each of the multiple surrounding terminal devices 10 do not match for a GNSS signal from the same satellite, the confirmer 34 determines that the one with the greater number of AGC determinations is suspected of including AGC, and determines that the one with the fewer number of AGC determinations is not suspected of including AGC. The estimator 35 discards the GNSS signal values suspected of including AGC, and estimates and adopts the GNSS signal values not suspected of including AGC as the correct value.
[0103] The confirmation unit 34 determines that the signal value that most frequently matches the GNSS signal value sensed by itself and the GNSS signal values sensed by the surrounding terminal devices 10, for GNSS signals from the same satellite, is not likely to include AGC, and determines the other signal values as being likely to include AGC. The estimation unit 35 discards the GNSS signal values that are likely to include AGC, and estimates and adopts the GNSS signal values that are not likely to include AGC as the correct value.
[0104] The estimation unit 35 estimates the current position of the user U using the GNSS signal value that is estimated to be the correct value.
[0105] By performing any one or a combination of the above-described processes, the information processing device according to the present application can estimate the correct value of the GNSS signal.
[0106] [8. Hardware Configuration] Moreover, the terminal device 10 and the server device 100 according to the above-described embodiment are realized by a computer 1000 having a configuration as shown in Fig. 5, for example. The server device 100 will be described below as an example. Fig. 5 is a diagram showing an example of a hardware configuration. The computer 1000 is connected to an output device 1010 and an input device 1020, and has a configuration in which a calculation device 1030, a primary storage device 1040, a secondary storage device 1050, an output I / F (Interface) 1060, an input I / F 1070, and a network I / F 1080 are connected by a bus 1090.
[0107] The arithmetic device 1030 operates based on programs stored in the primary storage device 1040 and the secondary storage device 1050, programs read from the input device 1020, and the like, and executes various processes. The arithmetic device 1030 is realized by, for example, a CPU (Central Processing Unit), an MPU (Micro Processing Unit), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or the like.
[0108] The primary storage device 1040 is a memory device such as a RAM (Random Access Memory) that primarily stores data used by the arithmetic device 1030 for various calculations. The secondary storage device 1050 is a storage device in which data used by the arithmetic device 1030 for various calculations and various databases are registered, and is realized by a ROM (Read Only Memory), an HDD (Hard Disk Drive), an SSD (Solid State Drive), a flash memory, or the like. The secondary storage device 1050 may be an internal storage device or an external storage device. The secondary storage device 1050 may be a removable storage medium such as a USB (Universal Serial Bus) memory or an SD (Secure Digital) memory card. The secondary storage device 1050 may be a cloud storage (online storage), a NAS (Network Attached Storage), a file server, or the like.
[0109] The output I / F 1060 is an interface for transmitting information to be output to an output device 1010 that outputs various types of information, such as a display, a projector, a printer, etc., and is realized by a connector conforming to a standard such as USB (Universal Serial Bus), DVI (Digital Visual Interface), or HDMI (registered trademark) (High Definition Multimedia Interface). The input I / F 1070 is an interface for receiving information from various input devices 1020, such as a mouse, a keyboard, a keypad, a button, a scanner, etc., and is realized by a USB, etc.
[0110] Furthermore, the output I / F 1060 and the input I / F 1070 may be wirelessly connected to the output device 1010 and the input device 1020, respectively. That is, the output device 1010 and the input device 1020 may be wireless devices.
[0111] The output device 1010 and the input device 1020 may be integrated into one device, such as a touch panel. In this case, the output I / F 1060 and the input I / F 1070 may also be integrated into one device, such as an input / output I / F.
[0112] The input device 1020 may be a device that reads information from, for example, an optical recording medium such as a CD (Compact Disc), a DVD (Digital Versatile Disc), or a PD (Phase change rewritable Disk), a magneto-optical recording medium such as an MO (Magneto-Optical disk), a tape medium, a magnetic recording medium, or a semiconductor memory.
[0113] The network I / F 1080 receives data from other devices via the network N and sends it to the arithmetic device 1030, and also transmits data generated by the arithmetic device 1030 to other devices via the network N.
[0114] The arithmetic unit 1030 controls the output device 1010 and the input device 1020 via the output I / F 1060 and the input I / F 1070. For example, the arithmetic unit 1030 loads a program from the input device 1020 or the secondary storage device 1050 onto the primary storage device 1040 and executes the loaded program.
[0115] For example, when the computer 1000 functions as the server device 100, the arithmetic unit 1030 of the computer 1000 executes a program loaded onto the primary storage device 1040 to realize the functions of the control unit 130. The arithmetic unit 1030 of the computer 1000 may also load a program acquired from another device via the network I / F 1080 onto the primary storage device 1040 and execute the loaded program. The arithmetic unit 1030 of the computer 1000 may also cooperate with the other device via the network I / F 1080 and use functions and data of a program by calling them from another program of the other device.
[0116] [9. Others] Although the embodiments of the present application have been described above, the present invention is not limited to the contents of these embodiments. The above-described components include those that can be easily imagined by a person skilled in the art, those that are substantially the same, and those that are within the so-called equivalent range. Furthermore, the above-described components can be appropriately combined. Furthermore, various omissions, substitutions, or modifications of the components can be made without departing from the spirit of the above-described embodiments.
[0117] Furthermore, among the processes described in the above embodiments, all or part of the processes described as being performed automatically can be performed manually, or all or part of the processes described as being performed manually can be performed automatically by a known method. In addition, the information including the processing procedures, specific names, various data and parameters shown in the above documents and drawings can be changed arbitrarily unless otherwise specified. For example, the various information shown in each drawing is not limited to the illustrated information.
[0118] In addition, each component of each device shown in the figure is a functional concept, and does not necessarily have to be physically configured as shown in the figure. In other words, the specific form of distribution and integration of each device is not limited to that shown in the figure, and all or part of them can be functionally or physically distributed and integrated in any unit according to various loads, usage conditions, etc.
[0119] For example, the above-mentioned server device 100 may be realized by multiple server computers, and depending on the functions, the configuration can be flexibly changed, such as by calling an external platform using an API (Application Programming Interface) or network computing.
[0120] Furthermore, the above-described embodiments and modifications can be appropriately combined as long as the processing contents are not contradictory.
[0121] Furthermore, the above-mentioned "section, module, unit" can be read as "means" or "circuit", etc. For example, an acquisition section can be read as an acquisition means or an acquisition circuit. [Explanation of symbols]
[0122] 1. Information Processing Systems 10 Terminal Equipment 14 Positioning unit 30 Control section 31 Transmitter 32 Receiving section 33 Processing section 34 Verification Department 35 Estimation part 100 Server device 110 Communications Department 120 Storage section 130 Control section 131 Acquisition Department 132 Alternative Processing Unit 133 Provision Department
Claims
1. An information processing device used as a user terminal device, A positioning unit that detects GNSS signals transmitted from satellites; A receiving unit that receives GNSS signal values sensed by surrounding terminal devices from the surrounding terminal devices; a confirmation unit that, when a GNSS signal value sensed by itself does not match a GNSS signal value sensed by the surrounding terminal device for a GNSS signal from the same satellite, determines whether or not there is a doubt that AGC is included for each signal value; an estimation unit that discards a GNSS signal value that is suspected of including AGC and estimates and adopts a GNSS signal value that is not suspected of including AGC as a correct value; An information processing device comprising:
2. The receiving unit receives, from the surrounding terminal device, a GNSS signal value sensed by the surrounding terminal device and a number of AGC determinations, When the GNSS signal value sensed by the confirmation unit does not match the GNSS signal value sensed by the surrounding terminal device for a GNSS signal from the same satellite, the confirmation unit determines that the GNSS signal value sensed by the confirmation unit or the GNSS signal value sensed by the surrounding terminal device, whichever has a greater number of AGC determinations, is suspected of including AGC; The estimation unit discards the signal value of the GNSS that is suspected of including AGC, and estimates and adopts the signal value of the GNSS that is not suspected of including AGC as the correct value.
2. The information processing apparatus according to claim 1,
3. The receiving unit receives GNSS signal values from satellites not detected by the terminal device in the vicinity, When there is no doubt that the GNSS signal value from the satellite not detected by the estimation unit includes the AGC, the estimation unit adopts the GNSS signal value from the satellite not detected by the estimation unit as the GNSS signal value detected by the estimation unit.
2. The information processing apparatus according to claim 1,
4. The receiving unit receives, from a plurality of surrounding terminal devices, GNSS signal values from satellites that the terminal device has not detected and the number of AGC determinations; When the GNSS signal values sensed by each of the multiple surrounding terminal devices do not match for a GNSS signal from the same satellite, the confirmation unit determines that the one with a greater number of AGC determinations is suspected of including AGC, and determines that the one with a smaller number of AGC determinations is not suspected of including AGC, The estimation unit discards the signal value of the GNSS that is suspected of including AGC, and estimates and adopts the signal value of the GNSS that is not suspected of including AGC as the correct value.
4. The information processing apparatus according to claim 3.
5. the confirmation unit determines, for GNSS signals from the same satellite, the signal value that has the greatest number of matches between the GNSS signal value sensed by itself and the GNSS signal values sensed by a plurality of surrounding terminal devices, as not suspected of including AGC, and determines other signal values as suspected of including AGC; The estimation unit discards the signal value of the GNSS that is suspected of including AGC, and estimates and adopts the signal value of the GNSS that is not suspected of including AGC as the correct value.
2. The information processing apparatus according to claim 1,
6. The estimation unit estimates a current position of the user using the GNSS signal value estimated as a correct value.
2. The information processing apparatus according to claim 1,
7. An information processing method executed by an information processing device used as a user terminal device, comprising: A positioning step of detecting a GNSS signal transmitted from a satellite; A receiving step of receiving GNSS signal values sensed by surrounding terminal devices from the surrounding terminal devices; a confirmation step of determining whether or not there is a doubt as to whether AGC is included in each signal value when the GNSS signal value sensed by the terminal device itself does not match the GNSS signal value sensed by the terminal device in the vicinity for the GNSS signal from the same satellite; an estimation step of discarding a GNSS signal value suspected of including AGC and estimating and adopting a GNSS signal value without any doubt that the AGC is included as a correct value; 13. An information processing method comprising:
8. A positioning procedure for detecting GNSS signals transmitted from satellites; A receiving procedure for receiving GNSS signal values sensed by surrounding terminal devices from the surrounding terminal devices; a confirmation step for determining whether or not there is a possibility that the AGC is included in each signal value when the GNSS signal value sensed by the terminal device itself does not match the GNSS signal value sensed by the terminal device in the vicinity for the same satellite; an estimation procedure for discarding a GNSS signal value suspected of including AGC and estimating and adopting a GNSS signal value without any doubt that the AGC is included as a correct value; An information processing program characterized by causing a computer used as a user's terminal device to execute the above.
Citation Information
Patent Citations
Position management system, program, and position management method
JP2023067192A