CN115146151A - Method for recommending interest points and electronic equipment - Google Patents

Method for recommending interest points and electronic equipment Download PDF

Info

Publication number
CN115146151A
CN115146151A CN202110352817.5A CN202110352817A CN115146151A CN 115146151 A CN115146151 A CN 115146151A CN 202110352817 A CN202110352817 A CN 202110352817A CN 115146151 A CN115146151 A CN 115146151A
Authority
CN
China
Prior art keywords
interest
point
grid
geographic
longitude
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110352817.5A
Other languages
Chinese (zh)
Inventor
刘小兵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Petal Cloud Technology Co Ltd
Original Assignee
Petal Cloud Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Petal Cloud Technology Co Ltd filed Critical Petal Cloud Technology Co Ltd
Priority to CN202110352817.5A priority Critical patent/CN115146151A/en
Publication of CN115146151A publication Critical patent/CN115146151A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/909Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Remote Sensing (AREA)
  • Navigation (AREA)

Abstract

The embodiment of the application provides a point of interest recommendation method and electronic equipment, and belongs to the technical field of electronics. The method is applied to the electronic equipment and comprises the following steps: acquiring a grid index feedback message sent by a server, wherein the grid index feedback message comprises grid indexes of interest points, the grid indexes comprise corresponding relations between n interest points and at least one geographic grid, and the geographic grid is obtained according to normalized coordinates after normalization processing is carried out on geographic coordinates of the interest points; receiving a first operation of a user; acquiring the geographic coordinates of the electronic equipment based on the first operation; acquiring a target interest point according to the geographic coordinates of the electronic equipment and the grid index; and displaying the information of the target interest point. By the method, the distribution state of the interest points is optimized by using the specific normalization algorithm, the electronic equipment can recommend the interest points with the consistent quantity, so that a user can obtain a large quantity of interest point information in different areas, and the use experience of the user is improved.

Description

Method for recommending interest points and electronic equipment
Technical Field
The present application relates to the field of electronic technologies, and in particular, to a method for recommending a point of interest and an electronic device.
Background
The development of intelligent devices such as smart phones, vehicle-mounted devices and smart watches brings great convenience to life and work of users. For example, in daily life, if a user needs to query some points of interest (POIs) around, such as restaurants, shopping malls, and the like, the user can use the carried intelligent device to perform positioning, send the position of the user to the cloud, and obtain the distribution of some POIs around the position. However, today with the increased awareness of personal privacy protection, sending the precise location of the user to the cloud in real time may bring a high privacy risk, and therefore, it is becoming an industry trend to discover nearby point-of-interest information offline on the basis of the smart device.
In practical application, because the distribution of the interest points has obvious aggregations, for example, restaurants generally only aggregate in a core area of a city, the presented interest points in the core area are too dense, and the interest points in a geographic grid are too many to form a distinction degree; and the interest points in remote areas such as suburbs are fewer, so that the interest points in the geographic grid corresponding to the suburbs are sparse or none, and the interest points presented to the user are too few.
Therefore, for the condition that the distribution of the interest points is not uniform, how to provide a good interest point presenting effect for the user and improve the convenience of the user for searching the interest points becomes a problem to be solved urgently.
Disclosure of Invention
The application provides a method for recommending interest points, which optimizes the distribution balance of the interest points and recommends interest point information to a user based on the optimally distributed interest points, thereby solving the problem of unbalanced recommendation quantity of the interest points in different areas.
In a first aspect, a method for point of interest recommendation is provided, which is applied to an electronic device, and includes: acquiring a grid index feedback message sent by a server, wherein the grid index feedback message comprises grid indexes of interest points, the grid indexes comprise corresponding relations between n interest points and at least one geographic grid, and the geographic grid is obtained according to normalized coordinates obtained after normalization processing is carried out on geographic coordinates of the interest points; receiving a first operation of a user; acquiring geographic coordinates of the electronic equipment based on the first operation; acquiring a target interest point according to the geographic coordinate of the electronic equipment and the grid index; and displaying the information of the target interest point.
It should be understood that the geographic coordinates referred to in the embodiments of the present application refer to coordinates corresponding to an actual location of a point of interest (and/or an electronic device), that is, actual geographic coordinates; the normalized coordinates refer to coordinates obtained after the geographic coordinates of the interest points (and/or the electronic devices) are normalized according to a preset algorithm.
The normalization processing in the embodiment of the present application is used to improve the balance of the distribution of the n interest points, that is, to reduce the difference of the density of the distribution of the interest points in different regions.
For example, after acquiring the geographic coordinate of the electronic device, the electronic device performs the normalization process on the geographic coordinate of the electronic device to acquire a normalized coordinate of the electronic device. Obtaining a target interest point according to the geographic coordinates of the electronic device and the grid index, specifically comprising: and acquiring a target interest point according to the normalized coordinates of the electronic equipment and the grid index.
It should be understood that the electronic device side may calculate the normalized coordinates of the electronic device using the same normalization process as the server side, and map the position of the electronic device into the geographic grid divided based on the interest point normalized coordinates, thereby increasing the accuracy of the interest point information recommended to the user.
According to the method for recommending the interest points, the distribution positions of the interest points are optimized through normalization processing, so that the distribution of the interest points is more balanced, the target interest points are recommended based on the interest points after the distribution is optimized, the limitation that the actual distribution is not uniform can be overcome for the number of the recommended interest points, the interest points with the consistent number can be recommended to users in different areas, and the user experience is improved.
With reference to the first aspect, in some implementation manners of the first aspect, the obtaining a target point of interest according to the geographic coordinate of the electronic device and the grid index specifically includes: the geographic coordinates of the electronic equipment are subjected to normalization processing, and normalization coordinates of the electronic equipment are obtained; and acquiring a target interest point according to the normalized coordinates of the electronic equipment and the grid index.
The electronic device and the server side adopt the same normalization processing, which may include: the electronic equipment adopts the center point coordinates of the n interest points provided by the server side, the correction coefficient of the normalization algorithm, the type of the normalization algorithm and the like.
According to the method for recommending the interest points, the electronic equipment side can calculate the normalized coordinates of the electronic equipment by adopting the same normalization processing as the server side, and the positions of the electronic equipment are mapped to the geographic grids divided based on the normalized coordinates of the interest points, so that the accuracy of the interest point information recommended to the user is improved.
With reference to the first aspect, in certain implementations of the first aspect, the first operations include: clicking the current position of the user on a map interface; or inputting the current position of the user; or clicking a recommended icon of the interest point.
It should be understood that the first operation may be used to cause the electronic device to obtain the current geographic location of the electronic device (i.e., the current geographic location of the user).
With reference to the first aspect, in certain implementations of the first aspect, before obtaining the target point of interest according to the geographic coordinates of the electronic device and the grid index, the method further includes: and receiving a second operation of the user, wherein the second operation is used for selecting the recommendation category of the interest point.
With reference to the first aspect, in certain implementations of the first aspect, the displaying the information of the target point of interest includes: and displaying the actual distribution position of the target interest point on the map.
According to the method for recommending the interest points, the actual distribution positions of the target interest points are displayed on the map, so that the user can visually check the relative directions of the target interest points and the position of the user, and the user can conveniently select the target interest points.
With reference to the first aspect, in certain implementations of the first aspect, the information of the target point of interest includes at least one of: name, address, contact information, actual distance from the current position of the electronic equipment, and introduction information.
According to the method for recommending the interest points, the user can know more comprehensive information of each interest point by displaying various information of the target interest points, the user can conveniently select the most needed target interest points, and the experience of the user in selecting the interest points is improved.
With reference to the first aspect, in some implementation manners of the first aspect, the obtaining a target interest point according to the normalized coordinates of the electronic device and the grid index specifically includes: determining a first geographic grid corresponding to the electronic equipment according to the normalized coordinates of the electronic equipment, wherein the first geographic grid is a geographic grid in the grid index; and determining the interest point in the first geographic grid as the target interest point in the grid index, or determining the interest point in the first geographic grid and at least one circle of the peripheral adjacent geographic grids as the target interest point.
According to the method for recommending the interest points, the electronic equipment side calculates the normalized coordinates of the electronic equipment by adopting the same normalization processing as the server side, and recommends the target interest points in the geographic grid or the surrounding geographic grid to the user according to the preset rule based on the geographic grid where the normalized coordinates of the electronic equipment are located, so that the number of the recommended interest points can overcome the limitation of uneven actual distribution, the interest points with more consistent number can be recommended to the user in different areas, and the user experience is improved.
With reference to the first aspect, in certain implementations of the first aspect, the geographic grid corresponds to a longitude range and a latitude range; the determining a first geographic grid corresponding to the electronic device according to the normalized coordinates of the electronic device specifically includes: and determining a first geographic grid corresponding to the electronic equipment according to the longitude range and the latitude range to which the normalized coordinates of the electronic equipment belong.
In this embodiment of the application, the server side may send the longitude range and the latitude range corresponding to the geographic grid in the grid index to the electronic device, and the electronic device determines the geographic grid corresponding to the electronic device based on its normalized coordinates (longitude and latitude), so as to map the electronic device to the geographic grid divided based on the normalized coordinates of the interest point.
With reference to the first aspect, in certain implementations of the first aspect, the method further includes: adjusting the selection range of the geographic grids according to the number of the interest points of the first geographic grid so as to enable the number of the target interest points to be larger than a first threshold value; or adjusting the selection range of the geographic grids according to the first geographic grid and the number of the interest points in at least one circle of the adjacent geographic grids around the first geographic grid so as to enable the number of the target interest points to be larger than a first threshold value; or adjusting the selection range of the geographic grid according to the preset number of the target interest points so as to enable the number of the target interest points to be larger than a first threshold value; or selecting the target interest points according to the preset number of the target interest points, so that the number of the target interest points is the preset number.
It should be understood that the electronic device may recommend the target interest points in the specific range or the specific range geographic grid according to a preset rule based on the geographic grid corresponding to the electronic device. The preset rule may refer to recommending a target interest point in a geographic grid where the electronic device is located, or recommending a target interest point in a geographic grid where the electronic device is located and at least one circle of adjacent geographic grids around the geographic grid where the electronic device is located, or recommending a target interest point around the geographic grid where the electronic device is located according to the number of recommended target interest points.
According to the method for recommending the interest points, the target interest points are recommended to the user according to the preset rules, the quantity of the target interest points with the consistent quantity can be obtained by the user, and the user can conveniently select the target interest points.
With reference to the first aspect, in certain implementations of the first aspect, the grid index feedback message is further configured to indicate a center point coordinate of the n interest points and a correction coefficient of the normalization processing, where a longitude of the center point coordinate is a longitude average of the n interest point geographic coordinates, and a latitude of the center point is a latitude average of the n interest point geographic coordinates; the normalizing the geographic coordinate of the electronic device to obtain the normalized coordinate of the electronic device specifically includes: and carrying out normalization processing on the geographic coordinates of the electronic equipment according to the central point coordinates and the correction coefficient of the normalization processing.
With reference to the first aspect, in some implementations of the first aspect, the normalizing the geographic coordinates of the electronic device according to the center point coordinates and the correction coefficient of the normalization process specifically includes: calculating a relative longitude difference value and a relative latitude difference value between the electronic equipment and the central point according to the geographic coordinates of the electronic equipment and the coordinates of the central point; calculating the normalized longitude of the electronic equipment according to the correction coefficient and the relative longitude difference value; and calculating the normalized latitude of the electronic equipment according to the correction coefficient and the relative latitude difference value.
It should be understood that the correction coefficient may be used to adjust the dispersion degree of the interest point distribution after the normalization process.
With reference to the first aspect, in certain implementations of the first aspect, the normalization function is an inverse cotangent function, and the inverse cotangent function includes: x i =atan(D i C1)*2/PI;Y i =atan(W i C2 2/PI; wherein, X i Is the normalized longitude, D, of the electronic device i The relative longitude difference value of the electronic equipment and the central point is obtained, and C1 is a longitude correction coefficient; y is i Is the normalized latitude, W, of the electronic device i The relative latitude difference value between the electronic equipment and the central point is C2, and the latitude correction coefficient is C2; i is a positive integer not greater than n, and PI is a natural constant.
With reference to the first aspect, in certain implementations of the first aspect, the normalization function is a logarithmic function, and the logarithmic function includes: x i =sign(D i )*log a1 (ABS(Di)*C1+1);Y i =sign(W i )*log a2 (ABS (Wi) × C2+ 1); wherein, X i Is the normalized longitude, D, of the electronic device i The relative longitude difference value between the electronic equipment and the central point is obtained, C1 is a longitude correction coefficient, and a1 is a logarithm base of longitude; y is i For normalization of the electronic device, W i The relative latitude difference value between the electronic equipment and the central point is shown, C2 is a latitude correction coefficient, and a2 is a longitude logarithm base; i is a positive integer not greater than n.
In a second aspect, a method for recommending a point of interest is provided, which is applied to a server and includes: carrying out normalization processing on geographic coordinates of n interest points to obtain normalized coordinates of the interest points, wherein n is an integer larger than 1; dividing a geographical grid based on the normalized coordinates of the interest points; establishing a grid index according to the normalized coordinates of the interest points and the geographic grid, wherein the grid index comprises the corresponding relation between the geographic grid where the normalized coordinates of the n interest points are located and the n interest points; and sending the grid index feedback message to an electronic device, wherein the grid index feedback message comprises the grid index.
It should be understood that the geographic coordinates referred to in the embodiments of the present application refer to coordinates corresponding to the actual location of the point of interest (and/or), that is, actual geographic coordinates; the normalized coordinates refer to coordinates obtained after normalization processing is performed on the geographic coordinates of the interest points according to a preset algorithm.
The normalization process in the embodiment of the present application is used to improve the balance of the distribution of the n interest points, that is, to reduce the difference of the density of the distribution of the interest points in different regions.
According to the method for recommending the interest points, the distribution positions of the interest points are optimized through normalization processing, so that the distribution of the interest points is more balanced, the target interest points are recommended based on the interest points after the optimized distribution, the limitation that the actual distribution is not uniform can be overcome by the number of the recommended interest points, the interest points with the consistent number can be recommended to users in different areas, and the user experience is improved.
With reference to the second aspect, in some implementations of the second aspect, the normalizing the geographic coordinates of the n interest points specifically includes: calculating a central point coordinate according to the geographic coordinates of the n interest points, wherein the longitude of the central point coordinate is the longitude average value of the geographic coordinates of the n interest points, and the latitude of the central point coordinate is the latitude average value of the geographic coordinates of the n interest points; calculating a relative longitude difference and a relative latitude difference between each of the interest points and the center point; calculating a normalization longitude value of the interest point according to a normalization function, a correction coefficient and the relative longitude difference value; and calculating the normalized latitude of the interest point according to the normalization function, the correction coefficient and the relative latitude difference value.
With reference to the second aspect, in certain implementations of the second aspect, the grid index feedback message is further configured to indicate a center point coordinate of the n interest points and a correction coefficient of the normalization process, where a longitude of the center point coordinate is a longitude average of the n interest point geographic coordinates, and a latitude of the center point is a latitude average of the n interest point geographic coordinates.
With reference to the second aspect, in certain implementations of the second aspect, the normalization function is an inverse cotangent function, and the inverse cotangent function includes: x i =atan(D i C1)*2/PI;Y i =atan(W i C2 2/PI; wherein, X i Normalized longitude, D, for the ith point of interest i The relative longitude difference value between the ith interest point and the central point is obtained, and C1 is a longitude correction coefficient; y is i Is the normalized latitude, W, of the ith point of interest i The relative latitude difference value of the ith interest point and the central point is C2, and the latitude correction coefficient is C2; i is a positive integer not greater than n, and PI is a natural constant.
With reference to the second aspect, in certain implementations of the second aspect, the normalization function is a logarithmic function, and the logarithmic function includes: x i =sign(D i )*log a1 (ABS(Di)*C1+1);Y i =sign(W i )*log a2 (ABS(W i ) C2+ 1); wherein, X i Normalized longitude, D, for the ith point of interest i For the ith oneThe relative longitude difference between the interest point and the central point, C1 is a longitude correction coefficient, and a1 is a logarithm base of longitude; y is i Normalizing latitude, W, of the ith point of interest i C2 is a relative latitude difference value between the ith interest point and the central point, and a2 is a latitude correction coefficient, and a logarithm base of longitude is a base of a 2; i is not more than n is a positive integer of (1).
In a third aspect, an electronic device is provided, comprising at least one processor, a memory, and a communication interface for communicating with other devices, the memory storing computer instructions that, when executed in the processor, cause the electronic device to implement the method of point of interest recommendation as described in any of the implementations of the first or second aspect.
In a fourth aspect, a server is provided, comprising at least one processor, a memory, and a communication interface for communicating with other devices, the memory storing computer instructions that, when executed in the processor, cause the electronic device to implement the method of point of interest recommendation as described in any of the implementations of the first or second aspect.
In a fifth aspect, a system for point of interest recommendation is provided, which includes at least one electronic device and a server, where the electronic device is configured to execute the method according to any implementation manner of the first aspect, and the server is configured to execute the method according to any implementation manner of the second aspect.
A sixth aspect provides a computer-readable storage medium storing computer instructions that, when executed, cause a method as in any one of the implementations of the first or second aspect to be implemented.
Drawings
Fig. 1 is a schematic diagram of a system architecture to which a point of interest recommendation method provided in an embodiment of the present application is applicable.
Fig. 2 is a schematic hardware structure diagram of an electronic device according to an embodiment of the present application.
Fig. 3 is a schematic hardware structure diagram of a server according to an embodiment of the present application.
Fig. 4 is a schematic diagram of a software structure of an electronic device according to an embodiment of the present application.
Fig. 5 is a schematic software structure diagram of a server according to an embodiment of the present application.
Fig. 6A to 6C are schematic diagrams of some graphical user interfaces provided by embodiments of the present application.
Fig. 7 is a schematic diagram of another graphical user interface provided by an embodiment of the present application.
Fig. 8 is a schematic flowchart of point of interest recommendation provided in an embodiment of the present application.
Fig. 9 is a schematic flow chart of another point of interest recommendation provided in an embodiment of the present application.
Fig. 10 is a schematic diagram of an original distribution of interest points according to an embodiment of the present application.
Fig. 11A to 11C are schematic diagrams of some normalized interest point distributions provided in the embodiment of the present application.
Fig. 12 is a schematic flow chart of yet another point of interest recommendation provided in an embodiment of the present application.
Fig. 13A and fig. 13B are schematic diagrams of interest point distributions after another normalization process provided in this application embodiment.
Detailed Description
The embodiments of the present application will be described below with reference to the drawings.
It is noted that the terminology used in the description of the embodiments of the present application is for the purpose of describing particular embodiments of the present application only and is not intended to be limiting of the present application. In the description of the embodiments of the present application, "/" indicates an alternative meaning, for example, a/B may indicate a or B; "and/or" herein is merely an association describing an associated object, and means that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, in the description of the embodiments of the present application, "a plurality" means two or more, and "at least one", "one or more" means one, two or more, unless otherwise specified.
In the following, the terms "first", "second" are used for descriptive purposes only and are not to be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, the definition of "first" or "second" feature may explicitly or implicitly include one or more of such features.
Reference throughout this specification to "one embodiment" or "some embodiments," or the like, means that a particular feature, structure, or characteristic described in connection with the embodiment is included in one or more embodiments of the present application. Thus, appearances of the phrases "in one embodiment," "in some embodiments," "in other embodiments," or the like, in various places throughout this specification are not necessarily all referring to the same embodiment, but rather "one or more but not all embodiments" unless specifically stated otherwise. The terms "comprising," "including," "having," and variations thereof mean "including, but not limited to," unless expressly specified otherwise.
The technical scheme of the embodiment of the application can be applied to various communication systems, for example: a global system for mobile communication (GSM) system, a Code Division Multiple Access (CDMA) system, a Wideband Code Division Multiple Access (WCDMA) system, a General Packet Radio Service (GPRS), a long term evolution (long term evolution, LTE) system, a LTE Frequency Division Duplex (FDD) system, a LTE Time Division Duplex (TDD) system, a universal mobile telecommunication system (universal mobile telecommunication system, UMTS), a Worldwide Interoperability for Microwave Access (WiMAX) communication system, a future fifth generation (5, g) system, or a new radio Network (NR), etc.
To facilitate understanding, the terms and concepts related to the embodiments of the present application will be first described below.
1. Geographic grid
A geographic grid is a spatial data structure that ranks planes with some rule. The most common geographic grid is a grid system consisting of warps and wefts, the grid can be formed by crossing warps and wefts at intervals of equal degrees, and the attributes of spatial data are associated with points in the warps and wefts, so that the spatial data in the grid can be conveniently acquired and processed. The grid system can create thinner sub-grids on the basis of the original smaller-resolution grid, and the resolution of the sub-grids is increased.
The purpose of using a geographic grid is to express the spatial pattern and to provide a simple and efficient spatial data structure algorithm. In the spatial data structure, the spatial region object can be expressed by using the minimum unit cell as raster data, and the geometric characteristics of the spatial entity can be expressed by using points instead of the traditional coordinate points as vector data, wherein the two data structures respectively correspond to a grid system for storing region information and a grid system for storing position information.
In the embodiment of the present application, a geographic grid (which may also be referred to as a grid) may specifically refer to a grid divided based on normalized coordinates after the interest point normalization process. Each geographic grid corresponds to a certain longitude range and a certain latitude range, and when the normalized coordinates of the interest points belong to the longitude range and the latitude range of a certain geographic grid, the interest points after normalization processing are indicated to correspond to the geographic grid.
2. Point of interest POI
In the geographic information system, one POI may be one house, one shop, one mailbox, one bus station, and the like. The traditional method for collecting the interest points mainly adopts a precise surveying and mapping instrument by a map surveying and mapping personnel to obtain the longitude and latitude of one interest point, and then marks the longitude and latitude. Some existing methods can collect street view interest point information by means of a holographic camera in combination with satellite map images, point clouds and the like.
For example, the point of interest information described in the following embodiments of the present application may include, but is not limited to: the information comprises the name, classification, address, longitude and latitude of the interest point, the name of the province where the interest point is located, the name of the city where the interest point is located, the name of the area where the interest point is located, the code of the area where the interest point is located and the like.
3. Geographic coordinates, normalized coordinates
The geographic coordinates (or actual geographic coordinates) in the embodiment of the present application refer to spherical coordinates in which the latitude and the longitude represent the location of the point of interest (or the electronic device), and represent the longitude and the latitude corresponding to the actual geographic location of the point of interest (or the electronic device).
The normalized coordinates refer to coordinates obtained by normalizing the geographic coordinates of the interest points (or the electronic devices), and are used for representing the distribution of the interest points (or the electronic devices) in a coordinate system after the distribution of the interest points is optimized.
As introduced in the background, currently, in order to protect the privacy of the user, the electronic device on the user side may discover the information of the interest points around the user offline. Taking a mainstream city as an example, the point of interest recommendation performed offline by the electronic device side may include the following processes: the method comprises the steps that a geographical grid of a mainstream city is pre-established or obtained by a server side, an inverted index (the inverted index is shown in table 1 and can comprise grid numbers, interest point names and longitudes and latitudes of interest points) is established according to the geographical grid to which the interest point coordinates in the city belong, and the inverted index of the interest points of the city where a user is located is issued to an electronic equipment end in advance; after the electronic equipment calculates the grids to which the electronic equipment belongs based on the accurate geographic positions of the users, the electronic equipment inquires the interest point information in the corresponding grid numbers through the inverted index of the interest points and recommends the interest point information to the users.
It should be understood that the inverted interest point index referred to in the embodiments of the present application may be used to indicate which interest points are included in each grid. In other words, the keywords of the inverted index may be grid numbers, for example, if the grid number of the grid to which a certain user belongs is known, the information of the interest point corresponding to the grid number may be queried by the interest point inverted index. For convenience of description, the inverted index of interest is hereinafter collectively referred to as an index of interest.
TABLE 1
Figure RE-GDA0003231160420000071
Figure RE-GDA0003231160420000081
When the user opens the electronic device, the electronic device may calculate, based on the positioning function, that a geographic grid to which the current coordinates (e.g., 114.074628, 22.664843) of the user belong is M101, and query the interest point index according to the geographic grid M101 to obtain a recommended interest point result set, where the recommended interest point result set of the electronic device is shown in table 2.
TABLE 2
Point of interest name Longitude and latitude
Happy tea 114.075351,22.666873
Eight-in-one Li-Hai memory 114.077202,22.66674
The method can recommend the surrounding interest point results to the user based on the actual position of the user. However, in practical applications, the interest points in different geographic grids may be distributed unevenly due to different densities of the interest points in different areas. For example, restaurants are generally gathered in the core area of a city, and interest points in the geographic grid corresponding to the core area are more densely distributed; in remote places such as suburbs, the number of interest points such as restaurants is small, so that the distribution of the interest points in the geographic grid corresponding to the suburbs is sparse or even none. This may result in uneven point of interest recommendation in different areas, which may result in poor user experience.
The actual geographic location of the interest points is fixed, but when recommending interest points in different areas to a user, if the range of the interest points recommended to the user (e.g., length segments or distance segments recommended by the interest points) can be adaptively adjusted in consideration of the density of the interest points in the different areas (e.g., length segments or distance segments recommended by the interest points), so that the length segments recommended by the interest points are adaptively and automatically changed according to the density of the interest points (e.g., in a core area with dense interest points, the length segments recommended by the interest points are 500m, and in a suburban area with sparse interest points, the length segments recommended by the interest points are 2 km), even if the density of the actual distribution of the interest points in the different areas is different, the interest points with uniform number can be provided to the user for reference, so that the number of the interest points obtained by the user in the different areas is balanced, thereby improving the convenience of finding the interest points by the user and improving the use experience of the user.
In order to achieve the effect of point of interest recommendation, an embodiment of the present application provides a method for point of interest recommendation. The method has the advantages that the geographic coordinates of the interest points which are actually distributed unevenly are normalized, so that the distribution of the interest points in the geographic grid is more balanced. Specifically, the method comprises the steps of firstly calculating the coordinates of the central points of a plurality of interest points in a specific area, calculating the relative difference value of each interest point and the coordinates (longitude and latitude) of the central points, processing the relative difference value by adopting a nonlinear normalization algorithm, dividing a geographical grid based on the interest point distribution after the normalization processing, establishing a grid index and issuing the grid index to electronic equipment at a user side; and then the electronic equipment calculates the nonlinear normalized coordinates of the electronic equipment by adopting the same normalization algorithm, inquires the grid index of the interest point based on the converted coordinates, and acquires and recommends the related interest point information to the user.
Exemplarily, as shown in fig. 1, a schematic diagram of a system architecture for point of interest recommendation provided in an embodiment of the present application is shown. The system architecture of the point of interest recommendation comprises a server and at least one electronic device (such as the electronic device 1, the electronic device 2 and the electronic device 3).
In some embodiments, the server provided in the embodiments of the present application may be a cloud server. The server may store point of interest information, such as actual geographic coordinates of the point of interest, a point of interest name, a point of interest address, and the like. The server can normalize the difference value between the geographic coordinate of the interest point and the coordinate of the central point according to the information of the interest point, so that the interest points which are not uniformly distributed are distributed in a more uniform state after normalization.
In some embodiments, the electronic device provided in the embodiments of the present application may be a user-side (or called user end, end-side) terminal, and may be, for example, a mobile phone (e.g., the electronic device 1 shown in fig. 1), a wearable device (e.g., the electronic device 2 (e.g., a smart watch) and a smart bracelet shown in fig. 1, smart glasses, smart jewelry, etc.), a tablet computer (e.g., the electronic device 3 shown in fig. 1), a vehicle-mounted device, an Augmented Reality (AR)/Virtual Reality (VR) device, a notebook computer, an ultra-mobile personal computer (UMPC), a netbook, a Personal Digital Assistant (PDA), a smart television, a smart screen, and other electronic devices with a display screen. Exemplary embodiments of the above-described electronic device include, but are not limited to, a mount
Figure RE-GDA0003231160420000091
Hongmeng system (Harmony OS) or other operating system. The electronic device may also be other electronic devices, such as a laptop computer (laptop) with a touch-sensitive surface (e.g., a touch panel), and the embodiment of the present application does not set any limit to a specific type of the electronic device.
In some embodiments, the electronic device is responsible for interacting with the user and the server. For example, the electronic device may automatically recommend the surrounding interest point information to the user based on a preset policy; or receiving the interest point recommending operation input by the user, and displaying the recommended interest point information to the user. For example, the electronic device may receive the point of interest query information input by the user in a voice, text, image, or other manner, and the electronic device may also answer the recommended point of interest information to the user in a voice, text, image, or other manner. In addition, the electronic device can also locate the user position and acquire the current position information of the user (for example, the current geographic coordinates of the user); the electronic device may further perform normalization processing on the current geographic coordinate of the user by using a normalization processing algorithm the same as that of the server side based on the obtained grid index obtained after the server normalization processing, that is, map the geographic coordinate of the user into the geographic grid after the normalization processing. The electronic device may further associate with an application (App) recommended by the point of interest, so that the application recommends the point of interest to the user based on the normalized point of interest information, where the application may be a local application of the electronic device, or may be a third-party application (such as a map-type App, or a life service-type App), and the application is not limited to this.
In the system architecture for recommending points of interest shown in fig. 1, the electronic device and the server may be connected through a wired network (wired network) or a wireless network (wireless network). For example, the electronic device and the server may be connected via a Wide Area Network (WAN), such as the internet. The network communication between the electronic device and the server may be implemented using any known network communication protocol, which may be various wired or wireless communication protocols, such as ethernet, universal Serial Bus (USB), firewire (firewire), global system for mobile communication (GSM), general Packet Radio Service (GPRS), code Division Multiple Access (CDMA), wideband Code Division Multiple Access (WCDMA), time division code division multiple access (TD-SCDMA), long term evolution (long term evolution, LTE), new air interface (new radio, NR), bluetooth (bluetooth), wireless fidelity (Wi-Fi), and the like.
A hardware structure diagram of an electronic device in the embodiment of the present application is described below. The electronic device 100 may be the electronic device 1, the electronic device 2, or the electronic device 3 in fig. 1, or other user-side terminals.
Fig. 2 shows a schematic structural diagram of the electronic device 100. The electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a Universal Serial Bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, a key 190, a motor 191, an indicator 192, a camera 193, a display screen 194, a Subscriber Identity Module (SIM) card interface 195, and the like. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, and the like.
It is to be understood that the illustrated structure of the embodiment of the present invention does not specifically limit the electronic device 100. In other embodiments of the present application, electronic device 100 may include more or fewer components than shown, or some components may be combined, some components may be split, or a different arrangement of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
Processor 110 may include one or more processing units, such as: the processor 110 may include an Application Processor (AP), a modem processor, a Graphics Processing Unit (GPU), an Image Signal Processor (ISP), a controller, a memory, a video codec, a Digital Signal Processor (DSP), a baseband processor, and/or a neural-Network Processing Unit (NPU), etc. The different processing units may be separate devices or may be integrated into one or more processors.
The controller may be, among other things, a neural center and a command center of the electronic device 100. The controller can generate an operation control signal according to the instruction operation code and the timing signal to complete the control of instruction fetching and instruction execution.
A memory may also be provided in processor 110 for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory may hold instructions or data that have just been used or recycled by the processor 110. If the processor 110 needs to reuse the instruction or data, it can be called directly from the memory. Avoiding repeated accesses reduces the latency of the processor 110, thereby increasing the efficiency of the system.
In some embodiments, processor 110 may include one or more interfaces. The interface may include an integrated circuit (I2C) interface, an integrated circuit built-in audio (I2S) interface, a Pulse Code Modulation (PCM) interface, a universal asynchronous receiver/transmitter (UART) interface, a Mobile Industry Processor Interface (MIPI), a general-purpose input/output (GPIO) interface, a Subscriber Identity Module (SIM) interface, and/or a Universal Serial Bus (USB) interface, etc.
The I2C interface is a bidirectional synchronous serial bus including a serial data line (SDA) and a Serial Clock Line (SCL). In some embodiments, processor 110 may include multiple sets of I2C buses. The processor 110 may be coupled to the touch sensor 180K, a charger, a flash, a camera 193, etc. through different I2C bus interfaces, respectively. For example: the processor 110 may be coupled to the touch sensor 180K through an I2C interface, so that the processor 110 and the touch sensor 180K communicate through an I2C bus interface to implement a touch function of the electronic device 100.
The I2S interface may be used for audio communication. In some embodiments, processor 110 may include multiple sets of I2S buses. The processor 110 may be coupled to the audio module 170 through an I2S bus, enabling communication between the processor 110 and the audio module 170. In some embodiments, the audio module 170 may transmit an audio signal to the wireless communication module 160 through the I2S interface, so as to implement a function of answering a call through a bluetooth headset.
The PCM interface may also be used for audio communication, sampling, quantizing and encoding analog signals. In some embodiments, the audio module 170 and the wireless communication module 160 may be coupled by a PCM bus interface. In some embodiments, the audio module 170 may also transmit audio signals to the wireless communication module 160 through the PCM interface, so as to implement a function of answering a call through a bluetooth headset. Both the I2S interface and the PCM interface may be used for audio communication.
The UART interface is a universal serial data bus used for asynchronous communications. The bus may be a bidirectional communication bus. It converts the data to be transmitted between serial communication and parallel communication. In some embodiments, a UART interface is generally used to connect the processor 110 with the wireless communication module 160. For example: the processor 110 communicates with a bluetooth module in the wireless communication module 160 through a UART interface to implement a bluetooth function. In some embodiments, the audio module 170 may transmit the audio signal to the wireless communication module 160 through a UART interface, so as to implement the function of playing music through a bluetooth headset.
MIPI interfaces may be used to connect processor 110 with peripheral devices such as display screen 194, camera 193, and the like. The MIPI interface includes a Camera Serial Interface (CSI), a Display Serial Interface (DSI), and the like. In some embodiments, processor 110 and camera 193 communicate through a CSI interface to implement the capture functionality of electronic device 100. Processor 110 and display screen 194 communicate via a DSI interface to implement display functions of electronic device 100.
The GPIO interface may be configured by software. The GPIO interface may be configured as a control signal and may also be configured as a data signal. In some embodiments, a GPIO interface may be used to connect the processor 110 with the camera 193, the display 194, the wireless communication module 160, the audio module 170, the sensor module 180, and the like. The GPIO interface may also be configured as an I2C interface, an I2S interface, a UART interface, an MIPI interface, and the like.
The USB interface 130 is an interface conforming to the USB standard specification, and may be a Mini USB interface, a Micro USB interface, a USB Type C interface, or the like. The USB interface 130 may be used to connect a charger to charge the electronic device 100, and may also be used to transmit data between the electronic device 100 and a peripheral device. And the earphone can also be used for connecting an earphone and playing audio through the earphone. The interface may also be used to connect other terminals, such as AR devices, etc.
It should be understood that the connection relationship between the modules according to the embodiment of the present invention is only illustrative, and is not limited to the structure of the electronic device 100. In other embodiments of the present application, the electronic device 100 may also adopt different interface connection manners or a combination of multiple interface connection manners in the above embodiments.
The charging management module 140 is configured to receive charging input from a charger. The charger may be a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 may receive charging input from a wired charger via the USB interface 130. In some wireless charging embodiments, the charging management module 140 may receive a wireless charging input through a wireless charging coil of the electronic device 100. The charging management module 140 may also supply power to the terminal through the power management module 141 while charging the battery 142.
The power management module 141 is used to connect the battery 142, the charging management module 140 and the processor 110. The power management module 141 receives input from the battery 142 and/or the charge management module 140 and provides power to the processor 110, the internal memory 121, the external memory, the display 194, the camera 193, the wireless communication module 160, and the like. The power management module 141 may also be used to monitor parameters such as battery capacity, battery cycle count, battery state of health (leakage, impedance), etc. In some other embodiments, the power management module 141 may also be disposed in the processor 110. In other embodiments, the power management module 141 and the charging management module 140 may be disposed in the same device.
The wireless communication function of the electronic device 100 may be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, a modem processor, a baseband processor, and the like.
The antennas 1 and 2 are used for transmitting and receiving electromagnetic wave signals. Each antenna in the electronic device 100 may be used to cover a single or multiple communication bands. Different antennas can also be multiplexed to improve the utilization of the antennas. For example: the antenna 1 may be multiplexed as a diversity antenna of a wireless local area network. In other embodiments, the antenna may be used in conjunction with a tuning switch.
The mobile communication module 150 may provide a solution including 2G/3G/4G/5G wireless communication applied to the electronic device 100. The mobile communication module 150 may include at least one filter, a switch, a power amplifier, a Low Noise Amplifier (LNA), and the like. The mobile communication module 150 may receive the electromagnetic wave from the antenna 1, filter, amplify, etc. the received electromagnetic wave, and transmit the electromagnetic wave to the modem processor for demodulation. The mobile communication module 150 may also amplify the signal modulated by the modem processor, and convert the signal into electromagnetic wave through the antenna 1 to radiate the electromagnetic wave. In some embodiments, at least some of the functional modules of the mobile communication module 150 may be disposed in the processor 110. In some embodiments, at least some of the functional modules of the mobile communication module 150 may be disposed in the same device as at least some of the modules of the processor 110.
The modem processor may include a modulator and a demodulator. The modulator is used for modulating a low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is used for demodulating the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then passes the demodulated low frequency baseband signal to a baseband processor for processing. The low frequency baseband signal is processed by the baseband processor and then passed to the application processor. The application processor outputs a sound signal through an audio device (not limited to the speaker 170A, the receiver 170B, etc.) or displays an image or video through the display screen 194. In some embodiments, the modem processor may be a stand-alone device. In other embodiments, the modem processor may be provided in the same device as the mobile communication module 150 or other functional modules, independent of the processor 110.
The wireless communication module 160 may provide a solution for wireless communication applied to the electronic device 100, including Wireless Local Area Networks (WLANs) (e.g., wireless fidelity (Wi-Fi) networks), bluetooth (bluetooth, BT), global Navigation Satellite System (GNSS), frequency Modulation (FM), near Field Communication (NFC), infrared (IR), and the like. The wireless communication module 160 may be integrated with at least one one or more components of a communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, performs frequency modulation and filtering processing on electromagnetic wave signals, and transmits the processed signals to the processor 110. The wireless communication module 160 may also receive a signal to be transmitted from the processor 110, perform frequency modulation and amplification on the signal, and convert the signal into electromagnetic waves through the antenna 2 to radiate the electromagnetic waves.
In some embodiments, antenna 1 of electronic device 100 is coupled to mobile communication module 150 and antenna 2 is coupled to wireless communication module 160 so that electronic device 100 can communicate with networks and other devices through wireless communication techniques. The wireless communication technology may include global system for mobile communications (GSM), general Packet Radio Service (GPRS), code division multiple access (code division multiple access, CDMA), wideband Code Division Multiple Access (WCDMA), time-division code division multiple access (time-division code division multiple access, TD-SCDMA), long Term Evolution (LTE), BT, GNSS, WLAN, NFC, FM, and/or IR technologies, etc. The GNSS may include a Global Positioning System (GPS), a global navigation satellite system (GLONASS), a beidou navigation satellite system (BDS), a quasi-zenith satellite system (QZSS), and/or a Satellite Based Augmentation System (SBAS).
The electronic device 100 implements display functions via the GPU, the display screen 194, and the application processor. The display screen 194 is used to display images, video, and the like.
The electronic device 100 may implement a photographing function through the ISP, the camera 193, the video codec, the GPU, the display screen 194, and the application processor, etc.
The digital signal processor is used for processing digital signals, and can process digital image signals and other digital signals. For example, when the electronic device 100 selects a frequency bin, the digital signal processor is used to perform fourier transform or the like on the frequency bin energy. Video codecs are used to compress or decompress digital video. The NPU is a neural-network (NN) computing processor that processes input information quickly by using a biological neural network structure, for example, by using a transfer mode between neurons of a human brain, and can also learn by itself continuously.
The external memory interface 120 may be used to connect an external memory card, such as a Micro SD card, to extend the memory capability of the electronic device 100. The external memory card communicates with the processor 110 through the external memory interface 120 to implement a data storage function. For example, files such as music, video, etc. are saved in an external memory card. The internal memory 121 may be used to store computer-executable program code, which includes instructions.
The electronic device 100 may implement audio functions via the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the headphone interface 170D, and the application processor. Such as music playing, recording, etc.
The pressure sensor 180A is used for sensing a pressure signal, and can convert the pressure signal into an electrical signal. The gyro sensor 180B may be used to determine the motion attitude of the electronic device 100. The magnetic sensor 180D includes a hall sensor. The electronic device 100 may detect the opening and closing of the flip holster using the magnetic sensor 180D. The acceleration sensor 180E may detect the magnitude of acceleration of the electronic device 100 in various directions (typically three axes). The magnitude and direction of gravity may be detected when the electronic device 100 is stationary. The method can also be used for recognizing the terminal gesture, and is applied to horizontal and vertical screen switching, pedometers and other applications. The proximity light sensor 180G may include, for example, a Light Emitting Diode (LED) and a light detector, such as a photodiode. The light emitting diode may be an infrared light emitting diode. The electronic device 100 emits infrared light to the outside through the light emitting diode. The ambient light sensor 180L is used to sense ambient light brightness. Electronic device 100 may adaptively adjust the brightness of display screen 194 based on the perceived ambient light level. The fingerprint sensor 180H is used to collect a fingerprint. The temperature sensor 180J is used to detect temperature. The touch sensor 180K is also referred to as a "touch panel". The touch sensor 180K may be disposed on the display screen 194, and the touch sensor 180K and the display screen 194 form a touch screen, which is also called a "touch screen". The touch sensor 180K is used to detect a touch operation applied thereto or nearby. The bone conduction sensor 180M may acquire a vibration signal.
In addition, the electronic device 100 further includes a barometric pressure sensor 180C and a distance sensor 180F. The air pressure sensor 180C is used to measure air pressure. In some embodiments, electronic device 100 calculates altitude from barometric pressure values measured by barometric pressure sensor 180C to assist in positioning and navigation.
A distance sensor 180F for measuring a distance. The electronic device 100 may measure the distance by infrared or laser. In some embodiments, taking a picture of a scene, electronic device 100 may utilize range sensor 180F to range for fast focus.
A hardware structure diagram of a server 200 according to an embodiment of the present application is described below. Among other things, server 200 may correspond to the server shown in FIG. 1.
Fig. 3 shows a hardware structure diagram of a server provided in an embodiment of the present application. As shown in fig. 3, the server 200 may include a processor 210, a memory 220, a data communication module 230, a power switch 240, a bus 250, etc., wherein the processor 210 may further include a grid index module 2101 (not shown in fig. 3), etc.
Processor 210 is the control center for server 200. For example, the processor 210 may be a chip/device with software processing capability, such as a Central Processing Unit (CPU), a System On Chip (SOC), a Digital Signal Processor (DSP), and the like. The processor 210 may run a Basic Input Output System (BIOS) and an Operating System (OS), and may be configured to read and execute computer readable instructions, where the BIOS is the most basic software code loaded on a hardware system of a computer, the BIOS is a bottom layer software program under the OS, and is an abstraction layer between the hardware of the computer and the OS, and is used to configure hardware parameters and prepare for OS operation, and the main functions of the BIOS are power-on, self-test, CPU initialization, memory initialization, detecting input and output devices and starting devices, and finally booting the OS, and the like. In a specific implementation, the processor 210 may further mainly include a controller, an operator, and a register. The controller is mainly responsible for instruction decoding and sending out control signals for operations corresponding to the instructions. The arithmetic unit is mainly responsible for storing register operands, intermediate operation results and the like which are temporarily archived in the instruction execution process. In some examples, processor 210 may be used to parse signals received by data communication module 230, such as parsing image data, voice data, or text data, among others. In the embodiment of the present application, the image data may include, for example, a logo image of a point of interest (e.g., a logo corresponding to the point of interest), and the text data may include, for example, geographic coordinates (longitude and latitude) of the point of interest, a name of the point of interest, and the like.
The processor 210 may include a grid index processing module 2101, and the grid index processing module 2101 may be configured to perform corresponding processing operations according to the information of the points of interest. For example, the system is responsible for calculating the normalized geographic coordinates of the interest points, establishing a grid index based on the calculation result, and sending the grid index to the electronic device at the user end through the data transmission module 230.
Memory 220 is coupled to processor 210 for storing various data and/or sets of instructions. For example, the normalized interest point information and the grid index created by the server based on the geographic coordinates of the normalized interest point are stored. Processor 210 may invoke data and/or instructions in memory 220 to perform the steps performed by processor 210 (e.g., CPU) of the server in the embodiments of the subject application.
The data communication module 230 may include a bluetooth module, a Wi-Fi module, etc., and may further include a transceiver for communication between the server and an electronic device other than the server. The Bluetooth module and the Wi-Fi module can be used for establishing communication connection with electronic equipment on a user side. The transceiver may be configured to perform data receiving and/or transmitting operations, for example, the transceiver may be configured to receive grid index request data transmitted by the electronic device, and may also transmit a grid index obtained based on the normalized geographic coordinates of the point of interest to the electronic device.
The power switch 240 may be used to control the power supply to supply power to the servers.
A bus 250, the bus 250 being used to connect devices internal to the server, such as the memory 220, the processor 210, etc.
It should be noted that the hardware configuration shown in fig. 3 is only an example, and does not limit the hardware configuration of the server to which the embodiment of the present application is applied. In practical implementation, more or fewer components than those shown in fig. 3 may be included in the server, and the present application is not limited thereto.
For example, the software system of the electronic device 100 may adopt a hierarchical architecture, an event-driven architecture, a micro-core architecture, a micro-service architecture, or a cloud architecture. The embodiment of the present invention uses an Android system with a hierarchical architecture as an example to exemplarily explain a software structure of the electronic device 100. Fig. 4 is a block diagram of a software structure of the electronic device 100 according to the embodiment of the present application.
The layered architecture divides the software into several layers, each layer having a clear role and division of labor. The layers communicate with each other through a software interface. In some embodiments, the Android system is divided into four layers, an application layer, an application framework layer, an Android runtime (Android runtime) and system library, and a kernel layer from top to bottom.
The application layer may include a series of application packages. As shown in fig. 4, the application package may include applications such as camera, gallery, calendar, phone call, map, navigation, WLAN, bluetooth, music, video, short message, etc.
The application framework layer provides an Application Programming Interface (API) and a programming framework for the application program of the application layer. The application framework layer includes a number of predefined functions. As shown in FIG. 4, the application framework layers may include a window manager, content provider, view system, phone manager, resource manager, notification manager, and the like.
The window manager is used for managing window programs. The window manager can obtain the size of the display screen, judge whether a status bar exists, lock the screen, intercept the screen and the like.
Content providers are used to store and retrieve data and make it accessible to applications. The data may include video, images, audio, calls made and received, browsing history and bookmarks, phone books, etc.
The view system includes visual controls such as controls to display text, controls to display pictures, and the like. The view system may be used to build applications. The display interface may be composed of one or more views. For example, the display interface including the short message notification icon may include a view for displaying text and a view for displaying pictures.
The phone manager is used to provide communication functions of the electronic device 100. Such as management of call status (including on, off, etc.).
The resource manager provides various resources for the application, such as localized strings, icons, pictures, layout files, video files, and the like.
The notification manager enables the application to display notification information in the status bar, can be used to convey notification-type messages, can disappear automatically after a brief dwell, and does not require user interaction. Such as a notification manager used to inform download completion, message alerts, etc. The notification manager may also be a notification that appears in the form of a chart or scroll bar text at the top status bar of the system, such as a notification of a background running application, or a notification that appears on the screen in the form of a dialog window. For example, text information is prompted in the status bar, a prompt tone is given, the terminal vibrates, an indicator light flashes, and the like.
The Android Runtime comprises a core library and a virtual machine. The Android runtime is responsible for scheduling and managing an Android system.
The core library comprises two parts: one part is a function which needs to be called by java language, and the other part is a core library of android.
The application layer and the application framework layer run in a virtual machine. The virtual machine executes java files of the application layer and the application framework layer as binary files. The virtual machine is used for performing the functions of object life cycle management, stack management, thread management, safety and exception management, garbage collection and the like.
The system library may include a plurality of functional modules. For example: surface managers (surface managers), media Libraries (Media Libraries), three-dimensional graphics processing Libraries (e.g., openGL ES), 2D graphics engines (e.g., SGL), and the like.
The surface manager is used to manage the display subsystem and provide fusion of 2D and 3D layers for multiple applications.
The media library supports a variety of commonly used audio, video format playback and recording, and still image files, among others. The media library may support a variety of audio-video encoding formats such as MPEG4, h.264, MP3, AAC, AMR, JPG, PNG, etc.
The three-dimensional graphic processing library is used for realizing three-dimensional graphic drawing, image rendering, synthesis, layer processing and the like.
The 2D graphics engine is a drawing engine for 2D drawing.
The kernel layer is a layer between hardware and software. The inner core layer at least comprises a display driver, a camera driver, an audio driver and a sensor driver.
Fig. 5 is a schematic structural diagram of a server according to an embodiment of the present application. The structure of the server 200 may include, from bottom to top: a hardware layer 300, an operating system layer 400, and a client software layer 500. The hardware layer 300 may include storage resource hardware (e.g., memory), processing resource hardware (e.g., processor, processing chip, etc.), and so forth. Operating system layer 200 may include programs that manage hardware resources and software resources. The client software 500 may include one or more clients that initiate accesses to the hardware layer 300 when needed to perform certain operations, such as accessing a storage resource (e.g., a grid index created after normalizing the geographic coordinates of the point of interest) by a remote electronic device interconnected to the server 200 via a network.
According to the method for recommending the interest points, the recommendation range of the interest points can be adaptively and automatically adjusted based on the distribution density of the interest points in different areas, so that a user can acquire stable amount of recommendation information of the interest points in different areas. In order to better understand the method for recommending the point of interest provided by the embodiment of the present application, the method for recommending the point of interest provided by the embodiment of the present application is introduced below with reference to the accompanying drawings and specific scenarios.
For example, the description here takes the example that the electronic device recommends the interest points to the user in the process of moving from the place where the interest points in the urban core area are densely distributed to the place where the interest points in the suburban area are sparsely distributed. For ease of understanding, the electronic device is a mobile phone. As shown in fig. 6A to 6C, some Graphical User Interfaces (GUIs) provided in the embodiments of the present application are schematically illustrated. For example, the interfaces shown in fig. 6A to 6C include an interest point searching portion, an interest point distribution display portion, and an interest point information display portion, where the interest point searching portion may be configured to receive an interest point type input by a user; the interest point distribution display part can be used for displaying the position distribution of the target interest points on the map; the point of interest information display portion may be used to display a plurality of items of information of the point of interest, such as an identification of the point of interest (e.g., POI 1), an introduction of the point of interest, an actual distance of the point of interest from a current location of the electronic device, an address of the point of interest, and the like.
For example, the interface in fig. 6A shows a schematic diagram of the distribution of target points of interest in the city core area. When the user is located in the core area of the city, the target interest points shown to the user by the electronic device at this time may be the interest points (POI 1 to POI10 shown in fig. 6A) in a range (shown by a dashed circle in fig. 6A) with a radius of 200m as a center of the user position because the interest points of the core area are densely distributed.
It should be understood that in the area where the interest points are densely distributed, even though the interest points in a smaller range are recommended to the user, a larger number of target interest points can be guaranteed for the user to refer to or select. The target interest points stated in the embodiments of the present application are interest points meeting the query requirements of the user, for example, interest points satisfying the user search category.
Then, as the user moves from the core city area to the suburban area, the distribution density of the interest points also changes with the area. Illustratively, when a user moves to an area (such as the area shown in fig. 6B) between the core area and the suburban area, the points of interest in the area are sparsely distributed compared to the core area. At this time, the electronic device may automatically adjust the range of the interest points recommended to the user according to the density of the distribution of the interest points, for example, the target interest points displayed to the user by the electronic device are the interest points (POI 1 to POI10 shown in fig. 6A) in a range (a dotted circle shown in fig. 6B) with the user position as a center and a radius of 1.5Km as a radius, so as to ensure that a stable number of interest points are provided to the user for the user to refer to or select.
After that, the user may continue to move to the suburban area, and when the suburban area is reached, the suburban interest point distribution diagram is shown in fig. 6C. Since the distribution of the interest points in the suburb is sparser than that in fig. 6B, to ensure that a certain number of interest points can be provided to the user, the electronic device may automatically adjust the recommended interest point range, for example, the target interest point that may be shown to the user at this time is an interest point (POI 1 to POI10 shown in fig. 6C) within a range (a dotted circle shown in fig. 6C) with the user position as a center point and 3Km as a radius.
According to the method for recommending the interest points, the length section of the interest points can be adjusted without the need of manually adjusting the length section of the interest points by the user, the range of the interest points recommended to the user can be adaptively and automatically adjusted, the effect that the user can obtain a stable and balanced amount of interest point information in different areas is achieved, and convenience of the user in inquiring the interest point information is improved.
It should be understood that the graphical user interface diagrams shown in fig. 6A to 6C are only one example, and in practical applications, the points of interest may be recommended to the user through other forms of graphical user interfaces. For example, as shown in fig. 7, a schematic diagram of another graphical user interface provided for embodiments of the present application is shown. Fig. 7 shows that the electronic device is a mobile phone, and information for recommending the interest point to the user is displayed through a negative screen.
As shown in fig. 7, taking the user located in the core area of the city as an example, the electronic device (taking a mobile phone as an example) may display information of the points of interest around the user location on a negative screen. Referring to the point of interest recommendation bar (POI recommendation bar) shown in fig. 7, the negative one-screen interface of the mobile phone may show the name of the point of interest to the user (fig. 7 does not show a specific name, and only shows the name of the point of interest with the displayed POIs 1 to POI 4), the introduction of the point of interest, the actual distance between the point of interest and the current location of the user, the address of the point of interest, and the like.
Alternatively, the user position shown in fig. 7 may correspond to the user position shown in fig. 6A, and the point of interest information shown to the user in fig. 7 may also correspond to the points of interest POI1 to POI4 displayed in fig. 6A one-to-one. In other words, fig. 6A and fig. 7 may be that the user is located at the same position, and when the electronic device shows the point of interest information to the user, different recommendation manners are adopted, and the user may view the point of interest information through the user image interfaces shown in fig. 6A to fig. 6C, or may select to view the point of interest information through one screen of the mobile phone shown in fig. 7, which is not limited in the present application.
In some embodiments, the type of point of interest recommended for the negative screen may include a food restaurant, a mall, a bookstore, an entertainment venue, and the like. The type of the point of interest recommended by the minus one screen can be determined according to the following situations: (1) The user may set the type of the point of interest recommended in the negative one screen in a setting center of the electronic device (e.g., in "setting" of the electronic device), for example, the type of the point of interest recommendation is selected as a food restaurant in a negative one screen setting interface of the setting center, and the point of interest recommendation information displayed in the negative one screen may be as shown in fig. 7; (2) The electronic device can determine the recommendation type of interest points in the negative one screen according to the times of interest point types searched by the user through the App within a certain historical time period, for example, when the times of searching for food through a third party App such as a mei group and a map are the most in the past week, the recommendation information of interest points of food can be displayed on the negative one screen as shown in fig. 7.
The method for recommending the interest points can be applied to a scene that a user inquires surrounding interest points. By the method, after the position of the user is changed, the length of the point of interest recommendation range does not need to be adjusted manually, the recommendation range of the point of interest can be automatically adjusted adaptively along with the density of the distribution of the points of interest in different areas, and the user can acquire stable amount of point of interest recommendation information in different areas.
The above describes a scenario and some possible display interface embodiments to which the method for point of interest recommendation provided in the embodiment of the present application is applicable. In order to better understand the method for recommending the point of interest provided in the embodiments of the present application, specific implementation processes and algorithms are described below from an implementation level with reference to the accompanying drawings.
Exemplarily, as shown in fig. 8, a schematic flow chart of a method for point of interest recommendation provided in an embodiment of the present application is shown. The process specifically comprises the following steps:
s801, the server establishes a grid index based on the interest point information after normalization processing.
The information of the interest point may include at least one of a name of the interest point, a geographic coordinate (such as latitude and longitude), a category, an address (such as a name of a province where the interest point is located, a name of a city where the interest point is located, a name of a region where the interest point is located), a region code where the interest point is located, and the like.
In some embodiments, the server may acquire and store point-of-interest information of at least one specific area in advance. The specific area in the embodiment of the present application may be flexibly divided according to requirements, and a specific area may be, for example, a partition of different administrative levels, such as a city or a district, which is not limited in the present application. For convenience of description, the specific area is a city (e.g., guangzhou) in which the user is currently located.
For example, the server may store point-of-interest information of a city input in advance by an administrator; alternatively, the server may store the point-of-interest information of the city, which is obtained by other devices (such as a third-party device) in advance, and the present application is not limited thereto.
In some embodiments, the case where the server establishes the grid index may include the following: (1) After the server acquires the interest point information of a certain area for the first time, a grid index can be established based on the interest point information; (2) When the interest point information of a certain area in the server is updated, the server can establish the interest point grid index of the area based on the updated interest point information; (3) The server may periodically establish the grid index, that is, periodically update the grid index of the point of interest corresponding to the area. In practical applications, the triggering situation for the server to establish the grid index may also include multiple situations, the above-listed situations are only examples, and the embodiment of the present application does not specifically limit the situation for the server to establish the grid index.
In some embodiments, the normalization process according to the embodiments of the present application may include: the method comprises the steps that a server firstly calculates the coordinates of the center points of interest points of a city where a user is located according to the geographic coordinates (longitude and latitude) of the interest points, wherein the longitude of the center point is the longitude average value of the interest points, and the latitude of the center point is the latitude average value of the interest points; then, the server calculates relative longitude difference values and relative latitude difference values of the interest points and the central point; then, the server calculates the normalization processing result of the relative longitude difference and the relative latitude difference by using a preset non-linear function (such as an inverse cotangent function, a logarithm function, etc.), and the normalization processing result can be used as a new (i.e., normalized) interest point coordinate (hereinafter, referred to as a normalized coordinate); the server performs grid division based on the normalized coordinates of the interest points, and establishes a grid index, which may include mapping relationships between information such as geographic grid identifiers (e.g., grid numbers), interest point names in grids, and actual geographic coordinates of the interest points.
It should be understood that through the normalization processing, the distribution state of the interest points which are actually distributed dispersedly or unevenly can be made more uniform, and after the grids are divided, the number of the interest points in each grid does not differ too much, so that the number of the recommended interest points is more stable when the interest points are recommended to the user based on the grids subsequently.
S802, the electronic equipment sends a grid index request message to a server.
The grid index request message is used for requesting the server for grid index information corresponding to the interest point after normalization processing.
In some embodiments, the electronic device may transmit a grid index request message to the server under a preset condition. For example, the electronic device may send a grid index request message to the server at a certain period; alternatively, the electronic device may send the mesh index request message to the server when the network type changes, for example, when the network type connected to the electronic device is switched from cellular network to WiFi, the mesh index request message may be sent to the server.
By the method, the electronic equipment at the user side can acquire the latest grid index at the server side in time, so that the latest interest point information can be recommended to the user.
And S803, the server sends a grid index feedback message to the electronic equipment.
The grid index feedback message comprises a grid index established by the server based on the normalized coordinates of the interest points.
In some embodiments, the server transmits a grid index feedback message to the electronic device in response to the grid index request message transmitted by the electronic device. The grid index feedback message may include a grid index generated by the server based on the normalized points of interest (as shown in table 4 below).
In some embodiments, the grid index feedback message is also used to indicate parameters involved in the server-side normalization process, such as center point coordinates, correction coefficients for the normalization algorithm, and the like. For example, the manner in which the server sends the parameters involved in the normalization processing to the electronic device may include: (1) Carrying the parameters in a grid index feedback message and sending the grid index feedback message to the electronic equipment; (2) The above parameters are sent separately, i.e. not carried in the mesh feedback message.
Optionally, the grid index feedback message may also be used to indicate the type of normalization algorithm when multiple normalization algorithms are available for use. Optionally, the grid index feedback message may further include longitude and latitude ranges corresponding to the geographic grids, which may be used to indicate the longitude and latitude ranges corresponding to each geographic grid in the grid index.
S804, the electronic equipment recommends the interest points to the user.
In some embodiments, the electronic device may obtain, through the positioning module, geographic coordinates of a current location of the electronic device (which may represent a current location of the user); then, the electronic device may adopt the same normalization processing method (adopting the same normalization algorithm, normalization function correction coefficient, center point coordinate, etc.) as the server side, calculate the electronic device coordinate (or called normalization coordinate of the electronic device), and determine the geographic grid to which the electronic device belongs according to the normalization coordinate of the electronic device; and acquiring target interest point information in the same geographical grid as the user or target interest point information in one or more circles of geographical grids adjacent to the geographical grid to which the user belongs from the interest point index according to the geographical grid number, and recommending the information of the interest points to the user.
The electronic device may negotiate the normalization algorithm used by the server in advance, or the electronic device may determine the normalization algorithm used by the server side according to the normalization processing indication information carried in the grid index feedback message, so as to realize the normalization processing of the position of the electronic device by using the same normalization algorithm as that used by the server side.
In some embodiments, the electronic device may retrieve the interest points in the one or more grids as target interest points in the grid index according to a preset rule. Referring to fig. 11A, after the geographic coordinates of the electronic device are normalized, the normalized coordinates of the electronic device belong to the shaded geographic grids shown in fig. 11A, and for convenience of description, the geographic grid where the user is located is numbered "5", and the geographic grids of one circle adjacent to the geographic grid "5" are numbered "1" to "4" and "6" to "9", respectively. According to the preset rule, the electronic device may retrieve only the information of the interest points in the geographic grid "5" (e.g., the information of the interest points shown in fig. 11B), that is, only the information of the interest points in the geographic grid "5" is recommended to the user; or, according to a preset rule, the electronic device may also retrieve the information of the points of interest (such as the information of the points of interest shown in fig. 11C) in the geographic grid "5" and a circle of the geographic grid around the geographic grid, "that is, recommend all the information of the points of interest in the geographic grid" 1 "to the grid" 9 "to the user. After normalization, the interest points in different regions are distributed more uniformly, so that the interest points in a specific number of grids can be retrieved and recommended according to the same preset rule in different regions. For example, the point of interest information in the grid where the user is located is recommended according to the mode shown in fig. 11B, or the point of interest information in the grid where the user is located and in a circle of grids around the grid are recommended according to the mode shown in fig. 11C.
It should be understood that the preset rules shown in fig. 11B and fig. 11C are only examples, and the information of interest points in which geographic grids are recommended in practical applications may be flexibly set as needed, for example, the information of interest points in the geographic grid where the user is located and two circles of geographic grids around the geographic grid may also be recommended, and the present application does not limit this.
In some embodiments, different priorities may be set for different geographic grids, and when retrieving the interest points in the grids, the target interest points may be retrieved according to the priorities. For example, the geographic grid where the user is located is set as the highest priority, the geographic grids in the circle immediately surrounding the geographic grid where the user is located are all set as the first-class priority, and the like. By retrieving the interest points in the geographic grid according to the priority sequence, the interest point information closest to the user can be preferentially recommended, and the convenience of the user for searching the target interest points is improved.
By flexibly adjusting the number of the grids where the recommended interest points are located, the stability of the number of the recommended interest points can be improved, for example, when the grid where the user is located is free of interest points, the number of the recommended grids can be adjusted to recommend the interest points in the peripheral grids to the user, and therefore the user can obtain information of interest points with balanced number.
In some embodiments, the electronic device may automatically present the recommended points of interest to the user via a particular application (local application or third party application) or via a negative screen of the electronic device (e.g., a cell phone).
It should be understood that the internal implementation principle of recommending, by an electronic device, an interest point to a user is based on a geographic grid (which refers to a geographic grid divided based on an interest point normalization processing coordinate) where the electronic device (or the user) is located, and according to a preset rule, the interest point in the geographic grid or the interest point in the geographic grid and a surrounding adjacent geographic grid is recommended to the user as a target interest point. Therefore, after optimizing the distribution state of the interest points through the normalization processing procedure in the embodiment of the present application, even if the grid positions to which the user belongs change with the movement of the user position, the electronic device can acquire a relatively consistent number of interest points, in other words, the normalization processing procedure provided in the embodiment of the present application enables the number of recommended interest points to overcome the limitation of the grid positions (or the area positions). On the basis of ensuring that the number of the interest points is relatively balanced, the application layer of the electronic device can adjust the recommendation range of the interest points, so that the adaptation length sections (as shown in fig. 6A to 6C) can be automatically adjusted in different areas, a user can obtain a large number of interest point information in different areas, and the use experience of the user is improved.
The following describes a specific implementation process of the method for point of interest recommendation provided by the embodiment of the present application in more detail with reference to the accompanying drawings. Illustratively, as shown in fig. 9, a schematic interaction diagram of point of interest recommendation provided in the embodiment of the present application is provided. The process comprises the following stages:
stage one: the server builds a grid index.
The grid index established by the server in the stage one refers to a grid index established based on the normalized coordinates of the interest points.
In some embodiments, the stage-one server building the grid index may include the following specific steps:
s9101, the server calculates center point coordinates corresponding to the n interest points.
Specifically, the coordinates of the center point are obtained by averaging geographic coordinates (longitude and latitude) of a plurality of interest points in a certain area (e.g., a city where the user is currently located), that is, the longitude corresponding to the center point may be a longitude average of n interest points in the area, the latitude corresponding to the center point may be a latitude average of n interest points in the area, and n is an integer value greater than 1.
In some embodiments, the server may obtain data sets P1 to Pn in advance, where the data sets P1 to Pn respectively correspond to n pieces of interest point information distributed in a certain area, for example, pi in the data set may include an identifier and a geographic coordinate of an ith interest point of the area, where i and n are positive integers, and i is greater than or equal to 1 and less than or equal to n. Illustratively, as shown in table 3, this is an example of the point of interest information contained in some data sets, where the point of interest information includes n point of interest identifications, and the longitude and latitude of the actual geographic location of the point of interest.
TABLE 3
Data set Point of interest identification Longitude (longitude) Latitude
P1 POI1 -3.52713 -7.11934
…… …… …… ……
Pi POIi -2.36774 -1.37956
…… …… …… ……
Pn POIn 1.28444 -8.85377
In some embodiments, the grid indexing module of the server may calculate an average longitude (Eavg) and an average latitude (Navg) of the n points of interest to determine the coordinates corresponding to the center point G. Wherein the coordinates (Eavg, navg) of the center point G can be calculated according to the formula (1-1) and the formula (1-2).
Figure RE-GDA0003231160420000211
Figure RE-GDA0003231160420000212
Wherein Eavg is the longitude of the central point G; navg is the latitude of the central point G; n is the number of the interest points in the region; e i Longitude of the ith point of interest; n is a radical of i The latitude of the ith point of interest.
For example, the position of the center point G may be as shown in fig. 10. Optionally, in the process of calculating the coordinates of the center point in step S9101, each interest point may be in an existing original grid, for example, before the interest point is not normalized, the server may already establish and/or store an original grid (an original geographic grid as shown in fig. 10) and an original grid index according to the coordinates of the interest point, which is not limited in this application.
S9102, the server adopts an inverse cotangent function to normalize the longitude relative distances of the n interest points.
In some embodiments, after obtaining the longitude and latitude of the center point G, the grid index module of the server may calculate a longitude-relative distance and a latitude-relative distance between each point of interest and the center point. Specifically, the relative difference in longitude between the point of interest and the center point G in the data sets P1 Pn may be represented by D 1 ~D n Corresponding representation in which the relative difference D of the longitude of the point of interest i i Can be expressed by the formulas (1-3):
D i =E i -E avg (1-3)
then, the grid index module of the server adopts an inverse cotangent function to normalize the longitude difference value to obtain a data set X after normalization 1 ~X n The data set X 1 ~X n And normalizing the processed longitude values corresponding to the n interest points in the region respectively. For example, X i The processed longitude may be normalized for the point of interest i. Wherein, X i Can be calculated using the following equations (1-4):
X i =atan(D i C 1 )*2/PI (1-4)
wherein, C 1 Is a longitude correction coefficient; PI is a natural constant.
It should be understood that a correction coefficient may be used to adjust the degree of dispersion of the interest points, for example, the distribution of the interest points is tighter when the correction coefficient is 0.1, and the distribution of the interest points is looser when the correction coefficient is 0.9, and the correction coefficient may be flexibly set according to the degree of dispersion of the interest points.
S9103, the server adopts an inverse cotangent function to normalize the relative latitude distances of the n interest points.
Similarly, theThe grid index module of the server may perform normalization processing on the latitude relative distance of the interest point by using a similar process as described above. Specifically, the grid index module of the server may first calculate a relative latitude difference between the latitude of each point of interest and the latitude of the center point. Wherein the relative difference in latitude W of the points of interest i i Can be expressed by the formulas (1-5):
W i =N i -N avg (1-5)
then, the grid index module of the server adopts an inverse cotangent function to normalize the latitude difference value, and obtains a data set Y of the interest point latitude after normalization processing 1 ~Y n The data set Y 1 ~Y n Respectively representing the latitude values of the n interest points in the region after the normalization processing of the relative distances, e.g. Y i The normalized latitude of the point of interest i may be included. Wherein Y is i Can be calculated using the following equations (1-6):
Y i =atan(W i C 2 )*2/PI (1-6)
wherein, C 2 The latitude correction coefficient can be flexibly set according to the dispersion degree of the interest points.
It should be understood that the procedure of normalizing the interest points in step S9102 and step S9103 is only one example. In practical applications, the calculation process may be performed in other manners, for example, the longitude difference and the latitude difference of the point of interest are calculated first, and then the normalization result of the longitude difference and the normalization result of the latitude difference are calculated respectively, which is not limited in this application.
For example, as shown in table 4, the geographic coordinates (the original longitude and the original latitude) and the normalized coordinates (the longitude after the normalization processing of the inverse cotangent function and the latitude after the normalization processing of the inverse cotangent function) of the interest point are illustrated.
TABLE 4
Figure RE-GDA0003231160420000221
For example, after the server performs normalization processing on the relative distance between the interest point and the center point by using the inverse cotangent function, a schematic distribution diagram of the interest point may be as shown in fig. 11A (a correction coefficient of latitude and longitude is 0.2 in the normalization processing). Compared with the distribution state of the interest points without normalization processing shown in fig. 10, it can be seen that the distribution of the interest points is more uniform through the normalization process, and the arrangement order of the relative positions of the interest points after normalization processing can be substantially kept unchanged by the characteristics of the inverse cotangent function. For example, the relative distance between Point of interest 1 and Point of interest 2 is labeled d (1,2) The relative distance between interest point 1 and interest point 3 is marked as d (1,3) The relative distance between point of interest 2 and point of interest 3 is marked d (2,3) Before the normalization process is not performed, the relative distances between the three interest points satisfy the relationship: d (1,2) <d (1,3) <d (2,3) Then, after the normalization process in the embodiment of the present application, the relative distances between the three interest points can still be maintained: d (1,2) <d (1,3) < d (2,3) . When the number of interest points is larger, the normalization process can keep the relative distance ranking between the interest points substantially the same as the actual relative distance ranking. Therefore, through the normalization processing of the embodiment of the application, the distribution of the interest points can be more uniform on the basis of keeping the relative distance sequence between the interest points basically unchanged, so that the information recommended to the user based on the optimized distribution of the interest points is ensured to be accurate.
S9104, the server establishes a grid index based on the normalized coordinates of the n interest points.
In some embodiments, after the normalization process, new longitudes and latitudes (i.e., normalized coordinates of the points of interest) corresponding to the points of interest are obtained, and the grid index module of the server may divide a geographic grid (e.g., the geographic grid shown in fig. 11A) based on the normalized coordinates of the points of interest. Wherein each geographic grid has a longitude interval and a latitude interval, that is, each geographic grid may correspond to a longitude range (e.g., 112.2 ° east longitude to 112.3 ° east longitude) and a latitude range (e.g., 22.1 ° north latitude to 22.2 °), and each geographic grid may have the same longitude interval and latitude interval, for example, each geographic grid may be a grid with a longitude interval and a latitude interval of 0.1 ° or 0.01 °. The longitude interval and the latitude interval of the geographic grid can be flexibly set, and the embodiment of the application is not limited to this.
In some embodiments, a point of interest is determined to be on a geographic grid when its normalized coordinates belong to a longitude range and a latitude range corresponding to the geographic grid. For example, the grid index module of the server may determine, according to the normalized coordinates of the point of interest, the number of the geographic grid in which the point of interest is located. For example, assuming that the normalized coordinates of the point of interest are (-0.35, -0.65), and the longitude range and the latitude range corresponding to the geographic grid with grid number 5 are (-0.4-0.5, -0.7-0.6), respectively, since the normalized longitude of the point of interest falls within the range of-0.4-0.5 and the normalized longitude of the point of interest falls within the range of-0.7-0.6, it can be determined that the point of interest is the point of interest in the geographic grid 5.
In some embodiments, the grid index module of the server may establish a grid index indicating a correspondence between the n interest points and the geographic grid according to the geographic grid and the interest points in the geographic grid. For example, the grid index may include the identification of the point of interest, the actual geographic coordinates of the point of interest, and the normalized coordinates of the point of interest, as well as information about contact, address, introduction, and the like. Illustratively, as shown in table 5, is an example of a grid index that includes the point of interest identification, the actual geographic coordinates of the point of interest (raw longitude, raw latitude).
TABLE 5
Grid numbering Point of interest name Point of interest raw longitude Original latitude of interest point
M101 Point of interest 1 -3.52713 -7.11934
M101 Point of interest 2 -2.46489 -0.90862
M102 Point of interest 3 -2.36774 -1.37956
M103 Point of interest 4 1.28444 -8.85377
It should be understood that the grid indices shown in table 5 are merely examples. In practical applications, the grid index may further include other more information items (such as addresses, contact information, descriptions, and the like of the points of interest), which is not limited in this embodiment of the application.
It should also be understood that the geographic grid involved in the grid index built based on the normalized longitude and latitude is different from the original grid (e.g., the original grid shown in fig. 10). If the area is previously divided into the original grids, in the process of establishing the grid index in the step, the grids need to be re-divided based on the interest point coordinates after the normalization processing.
And a second stage: the electronic device synchronizes the grid index.
For example, the second stage may specifically include step S9201 to step S9202:
s9201, the electronic device sends a grid index request message to the server.
In some embodiments, the timer may trigger the data storage module of the electronic device to generate the grid index request when a preset condition is satisfied. The preset conditions may include, for example: the network connection type of the electronic equipment is switched; or, the timer of the electronic equipment triggers the electronic equipment to send the grid index request message according to a certain period; or the timer detects that a preset time is reached, and the like. Illustratively, when the electronic device is switched from being connected to the Wi-Fi by the cellular network, the data storage module is triggered to generate a grid index request message; or, when a preset time (for example, 00 per day) is reached or every certain period (for example, 24 h), triggering the data storage module to generate the grid index request message.
Optionally, in other embodiments, before the electronic device sends the grid index request message to the server, the server may also actively send an interest point index information indication message to the electronic device, where the interest point index information is used to indicate that the current area of the electronic device has available interest point index information, or that the interest point information of the current area has an update. For example, the electronic device may display an indication message to the user (e.g., pop up a prompt message when the user opens the relevant App), prompt the user whether the point of interest index information needs to be acquired, or whether the point of interest index information needs to be updated, and if the user determines to acquire or update, the electronic device may feed back a grid index request message to the server. When the server updates the interest point information, the indication message for updating the interest point index information can be broadcasted or unicasted; alternatively, the server may periodically broadcast or unicast the indication message of the point of interest index information.
In some embodiments, upon receiving the trigger of the timer, the data storage module may generate a grid index request message according to the communication protocol and send the grid index request message to the server through another module (e.g., the data transmission module).
Specifically, the internal implementation process of step S9201 may include the following steps S9201 (a) to S9202 (c):
and S9201 (a), the data storage module of the electronic equipment sends the grid index request message to the data transmission module of the electronic equipment.
And S9201 (b), the data transmission module of the electronic equipment sends the grid index request message to the data transmission module of the server.
And S9201 (c), the data transmission module of the server sends the grid index request message to the grid index module of the server.
S9202, the server sends a grid index feedback message to the electronic equipment.
In some embodiments, the grid index module of the server generates a grid index feedback message in response to a grid index request message sent by the electronic device; and then, sending a grid index feedback message to the electronic equipment through the data transmission module. The grid index feedback message may include a grid index generated by the server based on the normalized points of interest (as shown in table 4). Optionally, the grid index feedback message may further include parameters related to the normalization process, such as a center point coordinate of the n interest points, a correction coefficient of the normalization process, and the like, where a longitude of the center point coordinate is a longitude average of the n interest point geographic coordinates, and a latitude of the center point is a latitude average of the n interest point geographic coordinates. Optionally, the grid index feedback message may further include longitude and latitude ranges corresponding to the geographic grids, which may be used to indicate the longitude and latitude ranges corresponding to each geographic grid in the grid index (as shown in table 6). Optionally, when there are multiple normalization algorithms for use, the grid index feedback message may further carry information indicating a type of the normalization algorithm. For example, in practical applications, the parameters involved in the normalization process may also be sent to the electronic device by the server alone, and are not carried in the grid index feedback message.
TABLE 6
Grid numbering Longitude range Latitude range
M101 -0.40~-0.39 -0.61~-0.62
M102 -0.29~-0.28 -0.18~-0.17
It should be understood that the latitude and longitude ranges of the geographic grid shown in table 6 are only examples, and the embodiment of the present application is not limited thereto.
Illustratively, the internal implementation process of step S9202 may include the following steps S9202 (a) to S9202 (c):
and S9202 (a), the grid index module of the server sends the grid index feedback message to the data transmission module of the server.
And S9202 (b), the data transmission module of the server sends the grid index feedback message to the data transmission module of the electronic equipment.
S9202 (c), the data transmission module of the electronic device sends the grid index feedback message to the data storage module of the electronic device.
In some embodiments, after receiving the mesh index feedback message, the data storage module of the electronic device may store mesh index information included in the mesh index feedback message to the data storage module, so that when the electronic device needs to perform the normalization processing, the data storage module invokes information indicating the normalization processing parameter.
And a third stage: the electronic device recommends the points of interest.
Illustratively, stage three may specifically include steps S9301 to S9306:
in some embodiments, the electronic device may recommend the point of interest upon receiving a point of interest recommendation indication of the user. For example, the user may input the point of interest recommendation indication through an App related to the point of interest recommendation installed on the electronic device, and the manner of the point of interest recommendation indication may include: clicking the current position of the user on a map interface or inputting the current position of the user; and then clicking a search icon or clicking an interest point recommendation icon to acquire POI information and the like. The point of interest recommendation indication may be in a text form or a voice form, which is not limited in this application.
For example, for a map class App, the point of interest recommendation method may be: firstly clicking the current position of a user on a map App interface by the user; then, selecting an interest point recommendation type icon, such as clicking a gourmet recommendation icon; and then clicking the interest point searching icon, so that the map interface can display the food interest point distribution near the current position of the user.
For another example, for a life service type App, a user may first input an address where the user is currently located on a life service type App interface (or the user may click a positioning icon on the life service type App interface and the App automatically acquires the current position of the user); then, the user can select the point of interest recommendation type icon, such as clicking a gourmet recommendation icon; in response to the clicking operation of the user, the life service class App interface can display the food interest point information nearby the user.
For different apps, the manner in which the user inputs the point of interest recommendation indication may be different, and the several scenarios listed above are only examples, which are not limited in this application.
In some embodiments, the electronic device may receive an operation input by a user, and in response to the operation input by the user, perform the following point of interest recommendation process. The operation input by the user may be, for example, the following: and clicking the interest point searching icon by the user, clicking the current position by the user, and the like. Illustratively, the process of recommending the point of interest by the electronic device may include the following specific steps:
s9301, the grid index module of the electronic device obtains the first information of the normalization processing by the data storage module.
In some embodiments, the grid index module of the electronic device may be a module in the processor 110 of the electronic device that may perform the same normalization processing operation as the server side by calling the first information in the data storage module.
In some embodiments, the first information may be used to indicate parameters involved in the server side normalizing the n interest points, for example, the first information may be used to indicate coordinates of center points of the n interest points, correction coefficients (such as longitude correction coefficient and latitude correction coefficient) of a normalization algorithm used by the server side normalizing, and the like. Optionally, the first information may further include longitude and latitude ranges corresponding to the geographic grids, which may be used to indicate the longitude and latitude ranges corresponding to each geographic grid in the grid index (as shown in table 6). When a plurality of normalization algorithms are selectable on the server side, the first information can also be used for indicating the type of the normalization algorithm, such as an inverse cotangent function.
S9302, a grid index module of the electronic device calculates the normalized coordinates of the inverse cotangent function according to the geographic coordinates of the electronic device.
Wherein the geographic coordinates of the electronic device may represent the location of the user. The geographical coordinates of the electronic device in this step may be geographical coordinates of the location where the user is currently located.
In some embodiments, the electronic device may perform a positioning operation through a positioning module (not shown in fig. 9) to obtain current geographic coordinates of the electronic device. The positioning information acquired by the positioning module can be stored in the data storage module or directly sent to the grid index module. The grid index module can call the positioning information in the data storage module, for example, call the positioning information corresponding to the current moment of the user (namely, the positioning information corresponding to the current position), and acquire the current geographic coordinate of the user; or, the grid index module may also obtain the geographic coordinates of the current location of the user according to the received positioning information sent by the positioning module. For convenience of description, the geographic coordinates (longitude and latitude) of the user's current location in the embodiment of the present application may be referred to as (E) u ,N u ) To indicate.
In some embodiments, the electronic device calculates the current position (E) of the user from the first information using the same normalization algorithm (inverse cotangent function) as used on the server side u ,N u ) The result of normalization. For example, the electronic device may first calculate a relative distance between the current location of the user and the center point, i.e., a difference between the longitude of the current location of the user and the longitude of the center point, and a difference between the latitude of the current location of the user and the latitude of the center point. The longitude difference between the current position of the user and the position of the center point may be shown in formula (1-7), and the latitude difference may be shown in formula (1-8):
D u =E u -E avg (1-7)
W u =N u -N avg (1-8)
and then, the electronic equipment normalizes the longitude difference value and the latitude difference value of the user. Illustratively, the electronic device calculates the normalized user position using an inverse cotangent function according to equations (1-9) and (1-10) below.
X u =atan(D u C 1 )*2/PI (1-9)
Y u =atan(W u C 2 )*2/PI (1-10)
Wherein, X u Longitude of the user position after normalization processing; zxfoom Y u The latitude of the user after normalization processing; c 1 Is a longitude correction coefficient; c 2 Is a latitude correction factor; PI is a natural constant.
In some embodiments, the electronic device may negotiate with the server in advance to use the inverse cotangent function as the normalization algorithm, or when the user indicates the point of interest recommendation, determine to use the inverse cotangent function as the normalization algorithm according to the type of the normalization algorithm indicated by the first information.
It should be understood that, the electronic device performs the same normalization processing on the current position of the user by using the same normalization algorithm as that of the server side according to the first information, and can map the position of the user to a grid under the same coordinate system as the interest point, so as to ensure that the relative position relationship between the position of the user and the position of the interest point is consistent with the actual position relationship, so as to accurately recommend the information of the interest point around the position of the user to the user.
S9303, the grid index module of the electronic device calculates the geographic grid where the electronic device is located according to the normalized coordinates.
It should be understood that each geographic grid corresponds to a longitude range and a latitude range. After obtaining the normalized coordinates of the electronic device, the electronic device may determine the geographic grid where the electronic device is located according to the latitude range and the longitude range to which the normalized coordinates belong. For example, the electronic device may determine the number of the geographic grid in which it is located based on the normalized coordinates of the electronic device (e.g., grid number 5 as shown in fig. 11B). For example, assuming that the normalized coordinates of the electronic device are (-0.38, -0.62), and the longitude range and the latitude range corresponding to the geographic grid with grid number 5 are (-0.4 to-0.5, -0.7 to-0.6), respectively, since the normalized longitude of the electronic device falls within the range of-0.4 to-0.5 and the normalized longitude of the electronic device falls within the range of-0.7 to-0.6, it can be determined that the geographic grid in which the electronic device is located is the geographic grid with grid number 5.
For example, the geographic grid to which the user normalized coordinates belong may be as shown in FIG. 11A.
S9304, the grid index module of the electronic device retrieves the target interest points based on the geographic grid where the electronic device is located.
In some embodiments, the grid index module may retrieve the target points of interest from a grid index stored in the data storage module based on a geographic grid in which the electronic device is located.
In some embodiments, a grid indexing module of the electronic device may obtain a grid number of a geographic grid where the user is located, and retrieve the point of interest information using the grid number as an index key.
In some embodiments, the grid index module may retrieve the target points of interest based on a preset rule. The preset rule includes, for example: and determining the interest points in the geographic grid where the electronic equipment is located as target interest points in the grid index, or determining the interest points in the geographic grid where the electronic equipment is located and at least one circle of adjacent geographic grids around the geographic grid as the target interest points, or retrieving a preset number of target interest points in a specific geographic grid, and the like. It should be understood that the geographic grid where the electronic device is located in the embodiments of the present application refers to the geographic grid where the normalized coordinates of the electronic device are located.
S9305, the grid index module of the electronic device obtains the target interest point information through the data storage module.
In some embodiments, after the target point of interest retrieval process of step S9304, the grid index module of the electronic device may obtain information of the recommended point of interest from the data storage module. The information of the recommended interest point may include, for example, one or more items of information of an identification, an actual distance, an address, a contact, an introduction, and the like of the recommended interest point.
S9306, the electronic equipment recommends information of the target interest point.
In some embodiments, the grid index module may send the obtained interest point information to a specific APP, and the APP may adjust a range in which the interest point is displayed according to the actual geographic location of the interest point, for example, may adjust the length segments in fig. 6A to 6C, so that the recommended interest points can all be presented to the user on the display page.
In addition, the electronic equipment can also calculate the actual distance between each recommended interest point and the user according to the actual geographic position of the interest point and the current actual geographic position of the user, and send the actual distance to the APP, and the APP displays the actual distance on the display page.
In other embodiments, after obtaining the point of interest information, the grid indexing module may send the point of interest information to the display module, and the display module displays the point of interest information on a page (e.g., minus one screen) of the electronic device, as shown in fig. 7. The information of the displayed interest points may include the names of the interest points, the actual distances between the interest points and the user, the identifications of the interest points, the contact ways, brief descriptions and the like.
In some embodiments, the electronic device may automatically update the recommended point of interest information according to a change in the location information of the user, such as the point of interest changes in fig. 6A-6C. In addition, the point of interest recommendation information shown in fig. 7 may also be automatically updated according to the change of the user location, and when the user moves to a certain area, the point of interest recommendation information corresponding to the area is displayed.
According to the method for recommending the interest points, the distribution state of the interest points is optimized by using a specific normalization algorithm, even if the grid positions of the user change along with the movement of the user position, the electronic equipment can also acquire the interest points with relatively consistent quantity, and the recommended quantity of the interest points overcomes the limitation of the grid positions (or the area positions), so that the user can acquire a large quantity of interest point information in different areas, and the use experience of the user is improved.
It should be understood that the purpose of the normalization process is to make the non-uniform distribution of the interest points more uniform after the normalization process. Therefore, the normalization algorithm adopted in the embodiment of the present application is not limited to the inverse cotangent function, and the function has a larger slope near the origin, and a function having a slope gradually decreasing away from the origin may be used to optimize the distribution of the interest points, where the exponential function is also a typical function capable of optimizing the distribution of the interest points. The following describes a point of interest recommendation process when the normalization function is an exponential function, with reference to the accompanying drawings.
Illustratively, as shown in fig. 12, a schematic flow chart of another point of interest recommendation provided by the embodiment of the present application is provided. The embodiment of fig. 12 is similar to the embodiment of fig. 9 in process, and for brevity of description, only the difference between fig. 12 and fig. 9 will be specifically described. The point of interest recommendation process shown in fig. 12 includes at least the following stages:
in stage one, the server establishes a grid index.
The specific implementation process of the stage one may include steps S1211 to S1214:
s1211, the server calculates center point coordinates of the n interest points.
S1212, the server normalizes longitude relative distances of the n interest points by using an exponential function.
In some embodiments, after the position coordinates of the center point G are acquired through step S1211, the relative distance (including the longitude relative distance and the latitude relative distance) between the interest point and the center point may be calculated according to the formula shown in step S9102.
Then, the server adopts an exponential function to carry out normalization processing on the longitude difference value to obtain a data set X after the normalization processing 1 ~X n The data set X 1 ~X n Normalized longitude values, e.g. X, corresponding to n points of interest of the region i The normalized longitude of the ith point of interest may be included. Wherein, X i Can be calculated using the following equations (1-11):
X i =sing(D i )*log a1 (ABS(Di)*C1+1) (1-11)
wherein D is i Is the longitude difference between the ith point of interest and the center point; c1 is a longitude correction coefficient which can be flexibly set according to the dispersion degree of the interest points; a1 is the base of the longitude logarithm.
It should be understood that a correction coefficient may be used to adjust the degree of dispersion of the interest points, for example, the distribution of the interest points is tighter when the correction coefficient is 0.1, and the distribution of the interest points is looser when the correction coefficient is 0.9, and the correction coefficient may be flexibly set according to the degree of dispersion of the interest points. The logarithm base may also be used to adjust the dispersion degree of the interest points, the smaller the logarithm base is, the closer the interest point distribution may be, and the larger the logarithm base is, the looser the interest point distribution may be, for example, fig. 13A is a normalization result when the correction coefficient is 0.4 and the longitude and latitude logarithm base is 0.8, and fig. 13B is a normalization result when the correction coefficient is 0.4 and the longitude and latitude logarithm base is 0.2.
S1213, the server normalizes the latitude relative distances of the n interest points by using an exponential function.
Similarly, the server may perform normalization on the latitude of the point of interest by using a similar process as described above. Specifically, the server may first calculate a latitude difference between the latitude of each point of interest and the latitude of the center point. The latitude difference W of any interest point i i Reference may be made to equations (1-5) in step S9103 above.
Then, the server adopts an index function to carry out normalization processing on the latitude difference value to obtain a data set Y of the interest point latitude after the normalization processing 1 ~Y n The data set Y 1 ~Y n Respectively representing the latitude values of the n interest points in the region after the normalization processing of the relative distances, e.g. Y i The normalized latitude of the ith point of interest may be included. Wherein, Y i Can be calculated using the following equations (1-12):
Y i =sing(W i )*log a2 (ABS(Wi)*C2+1) (1-12)
wherein, W i Is the difference in latitude between the ith point of interest and the center point, C 2 The latitude correction factor can be flexibly set according to the dispersion degree of the interest points, and the latitude correction factor can be 0.4, and a2 is the base of the longitude logarithm.
It should be understood that the procedure of the normalization process on the interest points in steps S1212 and S1213 is only an example, and in practical applications, the calculation procedure may be executed in other manners, for example, the longitude difference value and the latitude difference value of the interest point are calculated first, and then the normalization result of the longitude difference value and the normalization result of the latitude difference value are calculated respectively, which is not limited in this application.
For example, after the server normalizes the relative distances between the interest points and the central point by using a logarithmic function, the distribution diagram of the interest points may be as shown in fig. 13A or 13B. Through the normalization process, the interest points are distributed more uniformly, and the relative positions of the interest points after normalization processing can be basically kept unchanged on the basis of the characteristic that the logarithm function is similar to the inverse cotangent function.
S1214, the server establishes a grid index based on the normalized coordinates of the n interest points.
And a second stage: the electronic device synchronizes the grid index.
The specific implementation process of stage one may include steps S1221 to S1222:
s1221, the electronic device sends a grid index request message to the server. This step S1221 may further specifically include steps S1221 (a) to S1221 (c):
s1221 (a), the data storage module of the electronic device sends the grid index request message to the data transmission module of the electronic device.
And S1221 (b), the data transmission module of the electronic device sends the grid index request message to the data transmission module of the server.
And S1221 (c), the data transmission module of the server sends the grid index request message to the grid index module of the server.
S1222, the server sends a grid index feedback message to the electronic device. Step S1222 may further specifically include steps S1222 (a) to S1222 (c):
s1222 (a), the grid index module of the server sends a grid index feedback message to the data transmission module of the server.
S1222 (b), the data transmission module of the server sends the grid index feedback message to the data transmission module of the electronic device.
S1222 (c), the data transmission module of the electronic device sends the grid index feedback message to the data storage module of the electronic device.
Step S1214 to step S1220 are similar to step S9104 to step S920, and the specific process can refer to the related description above, which is not described herein again.
And a third stage: the electronic device recommends points of interest.
In some embodiments, the electronic device may receive a user input operation and perform the following point of interest recommendation process in response to the user input operation. The operation input by the user may be, for example, the following: and clicking the interest point searching icon by the user, clicking the current position by the user, and the like.
The third stage may specifically include steps S1231 to S1236:
s1231, the grid index module of the electronic device obtains the first information through the data storage module.
In some embodiments, the first information may be used to indicate data obtained by calculation or parameters used in the normalization process of the n interest points on the server side. For example, the first information may be used to indicate coordinates of center points of the n interest points, correction coefficients (such as a longitude correction coefficient and a latitude correction coefficient) of a normalization algorithm employed for the server side to perform normalization processing, and the like. Optionally, the first information may further include longitude and latitude ranges corresponding to the geographic grids, which may be used to indicate the longitude and latitude ranges corresponding to each geographic grid in the grid index (as shown in table 6). When a plurality of normalization algorithms are selectable on the server side, the first information of the normalization processing can also be used for indicating the type of the normalization algorithm, such as an exponential function.
And S1232, the grid index module of the electronic equipment calculates the normalized coordinates of the index function according to the geographic coordinates of the electronic equipment.
Wherein the geographic coordinates of the electronic device may represent the location of the user. The geographical coordinates of the electronic device in this step may be geographical coordinates of the location where the user is currently located.
In some embodiments, an electronic deviceThe positioning module (not shown in fig. 12) may perform the positioning operation, wherein the positioning information obtained by the positioning module may be stored in the data storage module or directly sent to the grid index module. The grid index module may call the positioning information in the data storage module, for example, call the positioning information corresponding to the current time of the user (i.e., the positioning information corresponding to the current position), and obtain the geographic coordinates (longitude and latitude) of the user at the current time; or, the grid index module may also obtain the geographic coordinates of the current location of the user according to the received location information sent by the location module. For convenience of description, the geographic coordinates (longitude and latitude) of the current location of the user in the embodiment of the present application may be represented by (E) u ,N u ) To indicate.
In some embodiments, the electronic device calculates the current location of the user (E) based on the first information of the normalization process, using the same normalization algorithm (exponential function) as used on the server side by the electronic device u ,N u ) The result of normalization. For example, the electronic device may first calculate a relative distance between the current location of the user and the center point, i.e., a difference between the longitude of the current location of the user and the longitude of the center point, and a difference between the latitude of the current location of the user and the latitude of the center point. The longitude difference between the current position of the user and the position of the center point may be shown in formulas (1-13), and the latitude difference may be shown in formulas (1-14):
D u =E u -E avg (1-13)
W u =N u -N avg (1-14)
and then, the electronic equipment normalizes the longitude difference value and the latitude difference value of the user. Illustratively, the electronic device calculates the normalized user position using an inverse exponential function according to equations (1-15) and (1-16) below.
X u =sign(D u )*log a1 (ABS(Du)*C1+1) (1-15)
Y u =sign(W u )*log a2 (ABS(Wu)*C2+1) (1-16)
Wherein, X u For after normalization treatmentA longitude of the location of the user; y is u The latitude of the user after normalization processing; c 1 Is a longitude correction coefficient; c 2 Is latitude correction factor.
It should be understood that the electronic device performs similar normalization processing on the current position of the user according to the normalization processing first information, and the electronic device adopts the same normalization algorithm as that of the server side, so that the position of the user can be mapped into a grid under the same coordinate system as the interest point, and the relative position relationship between the position of the user and the position of the interest point is ensured to be consistent with the actual position relationship, so that the information of the interest point around the position of the user can be accurately recommended to the user.
And S1233, calculating the geographic grid where the electronic equipment is located by the grid index module of the electronic equipment according to the normalized coordinates.
S1234, the grid index module of the electronic device retrieves the target interest point based on the geographic grid where the electronic device is located.
And S1235, the grid index module of the electronic equipment acquires the information of the target interest point through the data storage module.
And S1236, recommending the interest points of the target interest points by the electronic equipment.
The steps S1233 to S1236 are similar to the steps S9303 to S9306, and the detailed process can refer to the related description above, which is not repeated herein.
According to the method for recommending the interest points, the distribution state of the interest points is optimized by using a specific normalization algorithm, even if the grid positions of the user change along with the movement of the user position, the electronic equipment can also acquire the interest points with relatively consistent quantity, and the quantity of the recommended interest points overcomes the limitation of the grid positions (or area positions), so that the user can acquire a large quantity of interest point information in different areas, and the use experience of the user is improved.
Exemplarily, the embodiment of the present application further provides a software structure diagram of an electronic device. The electronic device may include a receiving module, a positioning module, a processing module, and a display module.
In some embodiments, the receiving module may be configured to obtain a grid index feedback message sent by the server, where the grid index feedback message includes a grid index of the interest point, the grid index includes a correspondence between the n interest points and at least one geographic grid, and the geographic grid is obtained according to a normalized coordinate obtained by normalizing the geographic coordinate of the interest point.
In some embodiments, the receiving module may be further configured to receive a first operation of a user.
In some embodiments, the positioning module may be configured to obtain geographic coordinates of the electronic device based on the first operation.
In some embodiments, the processing module may be configured to obtain the target point of interest according to the geographic coordinates of the electronic device and the grid index.
In some embodiments, the display module may be configured to display information of the target point of interest.
In some embodiments, the processing module may be further configured to perform the normalization processing on the geographic coordinates of the electronic device, and obtain normalized coordinates of the electronic device; and acquiring a target interest point according to the normalized coordinates of the electronic equipment and the grid index.
In some embodiments, the first operation comprises: clicking the current position of the user on a map interface; or inputting the current position of the user; or clicking a recommendation icon of the interest point.
In some embodiments, the receiving module may be further configured to receive a second operation of the user, where the second operation is used to select a recommendation category of the point of interest.
In some embodiments, the display module may be further configured to display an actual distribution position of the target point of interest on the map.
In some embodiments, the information of the target point of interest comprises at least one of: name, address, contact way, actual distance from the current position of the electronic equipment, and introduction information.
In some embodiments, the processing module may be further configured to determine, according to the normalized coordinates of the electronic device, a first geographic grid corresponding to the electronic device, where the first geographic grid is a geographic grid in the grid index; and determining the interest point in the first geographic grid as the target interest point in the grid index, or determining the interest point in the first geographic grid and at least one circle of the peripheral adjacent geographic grids as the target interest point.
In some embodiments, the geographic grid corresponds to a longitude range and a latitude range; the processing module 1404 may be further configured to determine a first geographic grid corresponding to the electronic device according to the longitude range and the latitude range to which the normalized coordinates of the electronic device belong.
In some embodiments, the processing module may be further configured to adjust a selection range of the geographic grid according to the number of interest points of the first geographic grid, so that the number of the target interest points is greater than a first threshold; or adjusting the selection range of the geographic grids according to the first geographic grid and the number of the interest points in at least one circle of the adjacent geographic grids around the first geographic grid so as to enable the number of the target interest points to be larger than a first threshold value; or adjusting the selection range of the geographic grid according to the preset number of the target interest points so as to enable the number of the target interest points to be larger than a first threshold value; or selecting the target interest points according to the preset number of the target interest points, so that the number of the target interest points is the preset number.
In some embodiments, the grid index feedback message is further configured to indicate a center point coordinate of the n points of interest and a correction coefficient of the normalization process, where a longitude of the center point coordinate is a longitude average of the n point of interest geographic coordinates, and a latitude of the center point is a latitude average of the n point of interest geographic coordinates.
In some embodiments, the processing module may be further configured to perform the normalization processing on the geographic coordinates of the electronic device according to the coordinates of the center points of the n interest points and the correction coefficient of the normalization processing.
In some embodiments, the processing module may be further configured to calculate a relative longitude difference and a relative latitude difference between the electronic device and the center point according to the geographic coordinates of the electronic device and the coordinates of the center point; calculating the normalized longitude of the electronic equipment according to a normalization function, the correction coefficient and the relative longitude difference value; and calculating the normalized latitude of the electronic equipment according to the normalization function, the correction coefficient and the relative latitude difference value.
In some embodiments, the normalization function is an inverse cotangent function comprising: x i = atan(D i C1)*2/PI;Y i =atan(W i C2 2/PI; wherein X i Is the normalized longitude, D, of the electronic device i The relative longitude difference value of the electronic equipment and the central point is obtained, and C1 is a longitude correction coefficient; y is i Is the normalized latitude, W, of the electronic device i The relative latitude difference value between the electronic equipment and the central point is obtained, and C2 is a latitude correction coefficient; i is a positive integer not greater than n, and PI is a natural constant.
In some embodiments, the normalization function is a logarithmic function comprising: x i =sign(D i )*log a1 (ABS(Di)*C1+1);Y i =sign(W i )*log a2 (ABS (Wi) × C2+ 1); wherein X i Is the normalized longitude, D, of the electronic device i The relative longitude difference value of the electronic equipment and the central point is shown, C1 is a longitude correction coefficient, and a1 is a logarithm base of longitude; y is i For normalizing latitude, W, of the electronic device i The relative latitude difference value between the electronic equipment and the central point is C2, a2 is a latitude correction coefficient, and a2 is a longitude logarithm base; i is a positive integer not greater than n.
The embodiment of the present application further provides a server, which may include a processing module and a sending module.
In some embodiments, the processing module may be configured to perform normalization processing on geographic coordinates of n interest points to obtain normalized coordinates of the interest points, where n is an integer greater than 1; dividing a geographical grid based on the normalized coordinates of the interest points; and establishing a grid index according to the normalized coordinates of the interest points and the geographic grid, wherein the grid index comprises the corresponding relation between the geographic grid where the normalized coordinates of the n interest points are located and the n interest points.
In some embodiments, the transmitting module may be configured to transmit the grid index feedback message to an electronic device, where the grid index feedback message includes the grid index.
In some embodiments, the processing module may be further configured to calculate a center point coordinate according to the geographic coordinates of the n interest points, where a longitude of the center point coordinate is a longitude average of the geographic coordinates of the n interest points, and a latitude of the center point coordinate is a latitude average of the geographic coordinates of the n interest points; calculating a relative longitude difference and a relative latitude difference between each of the interest points and the center point; calculating a normalization longitude value of the interest point according to a normalization function, a correction coefficient and the relative longitude difference value; and calculating the normalized latitude of the interest point according to the normalization function, the correction coefficient and the relative latitude difference value.
In some embodiments, the grid index feedback lower message may be further configured to indicate a center point coordinate of the n interest points and the correction coefficient of the normalization process, where a longitude of the center point coordinate is a longitude average of the n interest point geographic coordinates, and a latitude of the center point is a latitude average of the n interest point geographic coordinates.
In some embodiments, the normalization function is an inverse cotangent function comprising: x i = atan(D i C1)*2/PI;Y i =atan(W i C2 2/PI; wherein, X i Normalized longitude, D, for the ith point of interest i The relative longitude difference value between the ith interest point and the central point is obtained, and C1 is a longitude correction coefficient; y is i Is the normalized latitude, W, of the ith point of interest i Is the ith point of interestC2 is a latitude correction coefficient; i is a positive integer not greater than n, and PI is a natural constant.
In some embodiments, the normalization function is a logarithmic function comprising: x i =sign(D i )*log a1 (ABS(Di)*C1+1);Y i =sign(W i )*log a2 (ABS (Wi) × C2+ 1); wherein, X i Normalized longitude, D, for the ith point of interest i The relative longitude difference value of the ith interest point and the central point is shown, C1 is a longitude correction coefficient, and a1 is a longitude logarithm base; y is i For normalizing latitudes of the ith point of interest, W i C2 is a relative latitude difference value between the ith interest point and the central point, and a2 is a latitude correction coefficient, and a logarithm base of longitude is a base of a 2; i is a positive integer not greater than n.
The embodiment of the present application further provides a system for point of interest recommendation, which is characterized by comprising at least one electronic device and a server, wherein the electronic device is configured to execute the method for point of interest recommendation, so that the function of the method on the electronic device is implemented, and the server is configured to execute the method for point of interest recommendation, so that the function of the method on the electronic device is implemented.
The embodiment of the present application also provides a computer-readable storage medium, which stores computer instructions, and when the computer instructions are executed, the method for point of interest recommendation is implemented.
The present application further provides a computer product storing computer instructions, which when executed, enable the above-mentioned method for point of interest recommendation to be implemented.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, it may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in or transmitted over a computer-readable storage medium. The computer instructions may be transmitted from one website site, computer, server, or data center to another website site, computer, server, or data center via wired (e.g., coaxial cable, fiber optics, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that includes one or more available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid State Disk (SSD)), among others.
Those skilled in the art can understand that all or part of the processes in the methods of the embodiments described above can be implemented by a computer program, which can be stored in a computer readable storage medium and can include the processes of the method embodiments described above when executed. And the aforementioned storage medium includes: various media capable of storing program codes, such as ROM or RAM, magnetic or optical disks, etc.
The above description is only a specific implementation of the embodiments of the present application, but the scope of the embodiments of the present application is not limited thereto, and any changes or substitutions within the technical scope disclosed in the embodiments of the present application should be covered within the scope of the embodiments of the present application. Therefore, the protection scope of the embodiments of the present application shall be subject to the protection scope of the claims.

Claims (22)

1. A method for recommending interest points is applied to an electronic device, and comprises the following steps:
acquiring a grid index feedback message sent by a server, wherein the grid index feedback message comprises grid indexes of interest points, the grid indexes comprise corresponding relations between n interest points and at least one geographic grid, and the geographic grid is obtained according to normalized coordinates after normalization processing is carried out on geographic coordinates of the interest points;
receiving a first operation of a user;
acquiring geographic coordinates of the electronic equipment based on the first operation;
acquiring a target interest point according to the geographic coordinate of the electronic equipment and the grid index;
and displaying the information of the target interest point.
2. The method according to claim 1, wherein the obtaining a target point of interest according to the geographic coordinates of the electronic device and the grid index specifically comprises:
the geographic coordinates of the electronic equipment are subjected to normalization processing, and normalized coordinates of the electronic equipment are obtained;
and acquiring a target interest point according to the normalized coordinates of the electronic equipment and the grid index.
3. The method according to claim 1 or 2, characterized in that the first operation comprises:
clicking the current position of the user on a map interface; alternatively, the first and second electrodes may be,
inputting the current position of the user; alternatively, the first and second electrodes may be,
and clicking a recommendation icon of the interest point.
4. The method of any of claims 1-3, wherein prior to obtaining a target point of interest from the geographic coordinates of the electronic device and the grid index, the method further comprises:
and receiving a second operation of the user, wherein the second operation is used for selecting the recommendation category of the interest point.
5. The method according to any one of claims 1-4, wherein the displaying the information of the target point of interest comprises:
and displaying the actual distribution position of the target interest point on the map.
6. The method according to any one of claims 1-5, wherein the information of the target point of interest comprises at least one of:
name, address, contact way, actual distance from the current position of the electronic equipment, and introduction information.
7. The method according to any one of claims 2 to 6, wherein the obtaining a target point of interest according to the normalized coordinates of the electronic device and the grid index specifically includes:
determining a first geographical grid corresponding to the electronic equipment according to the normalized coordinates of the electronic equipment, wherein the first geographical grid is a geographical grid in the grid index;
and determining the interest point in the first geographic grid as the target interest point in the grid index, or determining the interest point in the first geographic grid and at least one circle of the peripheral adjacent geographic grids as the target interest point.
8. The method of claim 7, wherein the geographic grid corresponds to a longitude range and a latitude range;
the determining, according to the normalized coordinates of the electronic device, a first geographic grid corresponding to the electronic device specifically includes:
and determining a first geographic grid corresponding to the electronic equipment according to the longitude range and the latitude range to which the normalized coordinates of the electronic equipment belong.
9. The method of claim 8, further comprising:
adjusting the selection range of the geographic grids according to the number of the interest points of the first geographic grid so as to enable the number of the target interest points to be larger than a first threshold value; alternatively, the first and second electrodes may be,
adjusting the selection range of the geographic grids according to the first geographic grid and the number of the interest points in at least one circle of the geographic grids adjacent to the first geographic grid, so that the number of the target interest points is larger than a first threshold value; alternatively, the first and second electrodes may be,
adjusting the selection range of the geographic grids according to the preset number of the target interest points so as to enable the number of the target interest points to be larger than a first threshold value; alternatively, the first and second electrodes may be,
and selecting the target interest points according to the preset number of the target interest points, so that the number of the target interest points is the preset number.
10. The method according to any one of claims 1-9, wherein the grid index feedback message is further used to indicate a center point coordinate of the n points of interest and a correction coefficient for the normalization process, the longitude of the center point coordinate being a longitude average of the n point of interest geographic coordinates, and the latitude of the center point being a latitude average of the n point of interest geographic coordinates;
the normalizing the geographic coordinate of the electronic device to obtain the normalized coordinate of the electronic device specifically includes:
and carrying out normalization processing on the geographic coordinates of the electronic equipment according to the central point coordinates and the correction coefficient of the normalization processing.
11. The method according to claim 10, wherein the normalizing the geographic coordinates of the electronic device according to the coordinates of the center point and the correction coefficient of the normalization process includes:
calculating a relative longitude difference value and a relative latitude difference value between the geographic coordinates of the electronic equipment and the coordinates of the center point;
calculating the normalized longitude of the electronic equipment according to the correction coefficient and the relative longitude difference value; and the number of the first and second electrodes,
and calculating the normalized latitude of the electronic equipment according to the correction coefficient and the relative latitude difference value.
12. The method according to claim 10 or 11, wherein the function of the normalization process is an inverse cotangent function comprising:
X i =atan(D i C1)*2/PI
Y i =atan(W i C2)*2/PI
wherein, X i Is the normalized longitude, D, of the electronic device i The relative longitude difference value of the electronic equipment and the central point is obtained, and C1 is a longitude correction coefficient; y is i Is the normalized latitude, W, of the electronic device i The relative latitude difference value between the electronic equipment and the central point is C2, and the latitude correction coefficient is C2; i is a positive integer not greater than n, and PI is a natural constant.
13. The method according to claim 10 or 11, wherein the function of the normalization process is a logarithmic function comprising:
X i =sign(D i )*log a1 (ABS(Di)*C1+1)
Y i =sign(W i )*log a2 (ABS(Wi)*C2+1)
wherein, X i Is the normalized longitude, D, of the electronic device i The relative longitude difference value between the electronic equipment and the central point is obtained, C1 is a longitude correction coefficient, and a1 is a logarithm base of longitude; y is i For normalization of the electronic device, W i The relative latitude difference value between the electronic equipment and the central point is shown, C2 is a latitude correction coefficient, and a2 is a longitude logarithm base; i is a positive integer not greater than n.
14. A method for recommending interest points is applied to a server and comprises the following steps:
carrying out normalization processing on geographic coordinates of n interest points to obtain normalized coordinates of the interest points, wherein n is an integer larger than 1;
dividing a geographical grid based on the normalized coordinates of the interest points;
establishing a grid index according to the normalized coordinates of the interest points and the geographic grid, wherein the grid index comprises the corresponding relation between the geographic grid where the normalized coordinates of the n interest points are located and the n interest points;
and sending the grid index feedback message to an electronic device, wherein the grid index feedback message comprises the grid index.
15. The method according to claim 14, wherein the normalizing the geographic coordinates of the n interest points comprises:
calculating a central point coordinate according to the geographic coordinates of the n interest points, wherein the longitude of the central point coordinate is the longitude average value of the geographic coordinates of the n interest points, and the latitude of the central point coordinate is the latitude average value of the geographic coordinates of the n interest points;
calculating a relative longitude difference and a relative latitude difference between each of the interest points and the center point;
calculating a normalization longitude value of the interest point according to a normalization function, a correction coefficient and the relative longitude difference value; and the number of the first and second electrodes,
and calculating the normalized latitude of the interest point according to the normalization function, the correction coefficient and the relative latitude difference value.
16. The method according to claim 14 or 15, wherein the grid index feedback message is further used to indicate a center point coordinate of the n points of interest and a correction coefficient of the normalization process, the longitude of the center point coordinate is a longitude average of the n points of interest geographic coordinates, and the latitude of the center point is a latitude average of the n points of interest geographic coordinates.
17. The method according to claim 15 or 16, wherein the function of the normalization process is an inverse cotangent function comprising:
X i =atan(D i C1)*2/PI
Y i =atan(W i C2)*2/PI
wherein, X i Normalized longitude, D, for the ith point of interest i The relative longitude difference value between the ith interest point and the central point is obtained, and C1 is a longitude correction coefficient; y is i Is the normalized latitude, W, of the ith point of interest i The relative latitude difference value of the ith interest point and the central point is C2, and the latitude correction coefficient is C2; i is a positive integer not greater than n, and PI is a natural constant.
18. The method according to claim 15 or 16, wherein the function of the normalization process is a logarithmic function comprising:
X i =sign(D i )*log a1 (ABS(Di)*C1+1)
Y i =sign(W i )*log a2 (ABS(Wi)*C2+1)
wherein X i Normalized longitude, D, for the ith point of interest i The relative longitude difference value of the ith interest point and the central point is shown, C1 is a longitude correction coefficient, and a1 is a longitude logarithm base; y is i Normalizing latitude, W, of the ith point of interest i C2 is a relative latitude difference value between the ith interest point and the central point, and a2 is a latitude correction coefficient, and a logarithm base of longitude is a base of a 2; i is a positive integer not greater than n.
19. An electronic device comprising at least one processor, a memory, and a communication interface for communicating with other devices, the memory storing computer instructions that, when executed in the processor, cause the electronic device to implement the point of interest recommendation method of any of claims 1-13.
20. A server, characterized in that it comprises at least one processor, a memory and a communication interface for communicating with other devices, said memory storing computer instructions which, when executed in said processor, cause said electronic device to implement the point of interest recommendation method according to any one of claims 14 to 18.
21. A system for point of interest recommendation, comprising at least one electronic device configured to perform the method of any of claims 1 to 13 and a server configured to perform the method of any of claims 14 to 18.
22. A computer readable storage medium having stored thereon computer instructions which, when executed, cause the method of any one of claims 1 to 18 to be carried out.
CN202110352817.5A 2021-03-31 2021-03-31 Method for recommending interest points and electronic equipment Pending CN115146151A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110352817.5A CN115146151A (en) 2021-03-31 2021-03-31 Method for recommending interest points and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110352817.5A CN115146151A (en) 2021-03-31 2021-03-31 Method for recommending interest points and electronic equipment

Publications (1)

Publication Number Publication Date
CN115146151A true CN115146151A (en) 2022-10-04

Family

ID=83404913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110352817.5A Pending CN115146151A (en) 2021-03-31 2021-03-31 Method for recommending interest points and electronic equipment

Country Status (1)

Country Link
CN (1) CN115146151A (en)

Similar Documents

Publication Publication Date Title
US11892299B2 (en) Information prompt method and electronic device
US9107178B2 (en) Geo-location signal fingerprinting
US10321274B2 (en) Apparatus and method for determining location of electronic device
KR102160975B1 (en) Method and system providing of location based service to a electronic device
EP3598726A1 (en) Method for adjusting precision level of positioning, device, storage medium and electronic device
US20140057649A1 (en) Method and apparatus for providing location information in mobile device
WO2021098442A1 (en) Positioning interaction method and apparatus
EP3562175B1 (en) Location-aware management of lists of uniform resource locators (urls) for mobile devices
WO2020211705A1 (en) Contact person recommendation method and electronic device
WO2018171105A1 (en) Alarm notification method and terminal device
KR20160039585A (en) Geocoded data detection and user interfaces for same
CN116070035B (en) Data processing method and electronic equipment
CN116156417A (en) Equipment positioning method and related equipment thereof
CN115146151A (en) Method for recommending interest points and electronic equipment
CN116709501A (en) Service scene identification method, electronic equipment and storage medium
CN117128985B (en) Point cloud map updating method and equipment
CN116437293B (en) Geofence establishment method, server and communication system
CN116049478B (en) Application program recommendation method and device and user equipment
WO2023142938A1 (en) Map query method and electronic device
WO2023024873A1 (en) Display method, electronic device, and system
CN117527092A (en) Method for determining calibration data, electronic equipment and mobile equipment
CN117978308A (en) Bluetooth ranging method, electronic equipment and system
CN116668997A (en) Positioning method, user interface and electronic equipment
CN118277400A (en) Display method and device
CN116095230A (en) Application program recommendation method and related device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination