WO2022042655A1 - Method for constructing fingerprint map of multi-floor building, positioning method, and apparatus - Google Patents

Method for constructing fingerprint map of multi-floor building, positioning method, and apparatus Download PDF

Info

Publication number
WO2022042655A1
WO2022042655A1 PCT/CN2021/114822 CN2021114822W WO2022042655A1 WO 2022042655 A1 WO2022042655 A1 WO 2022042655A1 CN 2021114822 W CN2021114822 W CN 2021114822W WO 2022042655 A1 WO2022042655 A1 WO 2022042655A1
Authority
WO
WIPO (PCT)
Prior art keywords
leveling
channel
data
location
floors
Prior art date
Application number
PCT/CN2021/114822
Other languages
French (fr)
Chinese (zh)
Inventor
张云
曾丹丹
王永亮
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2022042655A1 publication Critical patent/WO2022042655A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/33Services specially adapted for particular environments, situations or purposes for indoor environments, e.g. buildings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management

Definitions

  • the present application relates to the technical field of indoor positioning, and in particular, to a method for constructing a fingerprint map of a multi-storey building, a positioning method and a device.
  • GNSS Global Positioning System
  • GPS Global Positioning System
  • WiFi location fingerprinting method is a commonly used indoor positioning method. This method can utilize the existing wireless local area network infrastructure, and can achieve positioning through mobile terminals (such as smart phones), without the need for users to add additional equipment, so its application is the most widely.
  • the existing WiFi location fingerprinting method includes two stages: offline fingerprint collection and online positioning. The purpose of offline fingerprint collection is to build a WiFi location fingerprint database in the indoor area to form a WiFi fingerprint map; in the online positioning stage, according to the current WiFi signal strength (Received Signal Strength, RSS) information, the positioning algorithm is used to match it with the WiFi location fingerprint database. The WiFi fingerprint map is matched and compared to estimate the user's location.
  • RSS Current WiFi signal strength
  • the present application provides a method for constructing a fingerprint map of a multi-story building, a positioning method and a device, which can realize the automatic generation of the fingerprint map of the multi-story building, avoid the intervention of manual editing, and save the cost of manpower and material resources.
  • an embodiment of the present application provides a method for constructing a fingerprint map of a multi-story building.
  • the method is applied to a server and includes: receiving crowdsourced data from multiple mobile terminals, where the crowdsourced data includes the mobile terminal Motion data and position fingerprint data collected in the process of moving across floors in a multi-story building; according to the crowdsourcing data, determine the leveling skeletons of at least two floors in the multi-story building, and connect between the leveling skeletons The position point of the channel on the leveling frame and the configuration of the channel; according to the leveling frame of the at least two floors, the position point of the channel and the configuration of the channel, generate the Fingerprint maps of multi-story buildings.
  • the passage is a passage facility used to connect different floors of a multi-storey building, the passage is connected between different floors, and people and goods can be transferred between different floors through the passage.
  • passages There are many configurations of passages, such as stairs, elevators, escalators, ladders, steps, and ramps.
  • the location point of the passage refers to the connection position of the passage and the level skeleton, that is, the endpoints at both ends of the passage. It is understandable that each Channels all have pairs of location points.
  • the locations of landmark points of the channel on the leveling skeleton (such as the endpoints at both ends of the channel and the uplink and downlink connections of pairs of landmark points), the channel configuration , automatic creation of multi-floor 3D topology map, the whole process does not need manual editing and annotation, no map dependence, can automatically and efficiently output the fingerprint map of multi-floor buildings in the whole process, improve the efficiency and accuracy of fingerprint map generation, solve the problem
  • the problem of relying on manual editing for map construction in the prior art saves manpower and material costs.
  • the crowdsourced data is the data obtained by the mobile terminal through sensors, radio frequency signals, or network positioning without the user's perception.
  • the crowdsourced data includes the mobile terminal moving across floors in a multi-story building.
  • motion data and position fingerprint data collected during the process the motion data is specifically data collected by at least one sensor, and the at least one sensor includes at least one of an accelerometer, a gyroscope, a magnetometer, and an inertial measurement unit;
  • the Location fingerprint data includes the number and signal strength of wireless access points.
  • the server can make full use of crowdsourced data collected by various mobile terminals to construct a fingerprint map of a multi-story building, which replaces manual data collection and manual annotation, and can realize 3D topology without map dependence.
  • the construction of the map does not require the deployment of special data acquisition devices indoors, which greatly reduces the cost of labor and material resources.
  • the configuration of the channel includes a direct connection type or an oblique connection type;
  • the direct connection type means that the position points at both ends of the channel are collinear in the vertical direction, and
  • the diagonal connection type Type means that the location points at both ends of the channel are not collinear in the vertical direction
  • the generating a three-dimensional topological map according to the leveling skeleton, the location points of the channel and the configuration of the channel includes: according to the relationship between the leveling skeletons
  • the connection relationship of the passages is to sort the respective leveling skeletons so that the order of the respective leveling skeletons conforms to the upper and lower relationship of the floors in the multi-storey building; according to the location points of the passages and the structure of the passages type, and aligning the sorted flat skeletons in the three-dimensional coordinate space to obtain the fingerprint map.
  • this application makes full use of the characteristics of the landmark points of the passage, and automatically sorts and aligns multiple leveling skeletons.
  • the whole process does not require manual editing and labeling, and has no map dependence.
  • the entire process can be automated and efficiently output multi-story buildings. It improves the efficiency and accuracy of fingerprint map generation.
  • the method before aligning the sorted leveling skeletons in the three-dimensional coordinate space according to the location points of the channel and the configuration of the channel, the method further includes: : Determine the mapping relationship between the sorted leveling skeletons and the floors in the multi-storey building.
  • the solution of the present application can also identify the absolute floors corresponding to the leveling skeletons, which is helpful for automatically and efficiently outputting fingerprint maps of multi-story buildings.
  • the indoor positioning of the building can be accurately positioned to the absolute floor, which improves the efficiency of fingerprint map generation and the positioning accuracy.
  • sorting the leveling skeletons according to the connection relationship of the channels between the leveling skeletons includes: according to the channels between the leveling skeletons to construct a directed acyclic graph of the respective leveling skeletons; the respective leveling skeletons are sorted according to the directed acyclic graph.
  • the up-down direction of the vast majority of connection pairs can be taken as the up-down direction of the leveling skeleton among all the connection landmarks.
  • the directed acyclic graph segmentation adopts a depth-first search algorithm, starting from a certain node, the set is divided into a searched set and an unsearched set, the current search
  • the connection relationship is disconnected, and the search can continue until there is no connection relationship.
  • a directed acyclic graph including each leveling skeleton is finally obtained.
  • the ascending and descending ordering relationship can be sorted out according to the connection relationship between the leveling skeletons.
  • the determining the mapping relationship between the sorted leveling skeletons and the floors in the multi-story building includes: determining each of the levelings according to the crowdsourcing data. The number of entrances and exits of the floor corresponding to the floor frame; the floor frame with the largest number of entrances and exits corresponds to the first floor of the multi-storey building; according to the sorting result of each floor frame, the floors corresponding to the remaining floor frames are determined.
  • the absolute floor recognition first uses the entrance and exit identification results to perform meanshiff clustering on the entrance and exit to obtain an effective entrance and exit clustering. According to the number of entrance and exit clusters, identify the reference floor - the first floor, and finally use the floor sorting relationship to obtain the absolute floor.
  • aligning the sorted leveling skeletons in the three-dimensional coordinate space includes: when When there is a direct connection type channel between two leveling skeletons, the two leveling skeletons are aligned by aligning the position points at both ends of the channel in the vertical direction; when there is an oblique connection type between the two leveling skeletons When the channel is set, the two leveling skeletons are aligned according to the horizontal offset between the position points at both ends of the channel.
  • the RANSAC algorithm can be used to calculate the similarity transformation between points with the same name, and then the skeleton coordinates to be aligned are transformed to the aligned leveling skeleton coordinate system using the similarity transformation.
  • the alignment results can be further corrected based on the identified inclined stairs.
  • the PDR distance between the connected landmark points is used as the hypotenuse distance
  • the estimated height of the connected floor is used as a right-angle side, so that the horizontal offset between the diagonally connected landmark points can be estimated.
  • all landmark points can be used for ICP fine alignment, giving higher weights to the directly connected elevators and stairs, and using the escalators with implicit direct connection relationships for further precision Align floors to get a 3D topology map.
  • the landmark point of the channel belongs to a direct connection type (such as a direct connection staircase and a direct connection elevator), an oblique connection type (such as an inclined connection staircase) or an implicit direct connection type.
  • connection type such as escalator
  • the direct connection type channel can be preferentially used for the initial direct connection alignment of the leveling frame
  • the horizontal offset is calculated using the PDR track distance and floor height difference in the inclined connection type channel, so that Compensate the horizontal offset of the leveling skeleton to further optimize the calculation of the alignment relationship
  • the implicit direct connection relationship of all landmark points can be used to perform ICP fine alignment.
  • a 3D topology map can be obtained through the above process.
  • the fine alignment of floors can be achieved without resorting to indoor floor plans or manual editing, which is conducive to the realization of automatic multi-floor fingerprint map construction, and improves the efficiency of map construction.
  • Accuracy, and the construction process of the 3D topological map does not need to rely on the existing indoor floor plan.
  • the process of determining the leveling skeletons of at least two floors in the multi-story building according to crowdsourcing data includes: obtaining the plurality of movements according to the motion data the movement trajectories of the terminal in the at least two floors; the movement trajectories of the multiple mobile terminals are aggregated to obtain the leveling framework of the at least two floors; wherein, the leveling framework and the position Fingerprint data association.
  • the embodiment of the present application can grow the leveling skeleton in a distributed and parallel manner based on the seed track (single movement track), realize the automation of the whole process and the high-quality leveling skeleton growth, and greatly improve the fingerprint map construction. Efficiency and Precision.
  • the process of determining, according to the crowdsourced data, the location points of the channels connected between the leveling skeletons includes: obtaining the multiple The movement trajectories of the mobile terminals in the at least two floors; identifying the position points belonging to the passage distributed on each of the movement trajectories; combining each of the movement trajectories with the leveling skeleton of the at least two floors Matching is performed to obtain the location point of the channel on the flat skeleton.
  • the matching each of the movement trajectories with the leveling skeletons of the at least two floors to obtain the position points of the passage includes: based on the position point distribution on the movement trajectories, The moving track is divided into a leveling segment track and a cross-layer segment track; according to the leveling segment track and the leveling skeleton, a plurality of candidate position points of the channel on the leveling skeleton are obtained; according to For the plurality of candidate position points, the position points of the channel are obtained.
  • the trajectory of the leveling segment and the leveling skeleton are matched by the K-nearest neighbor algorithm to obtain multiple candidate position points of the channel on the leveling skeleton.
  • each cross-layer movement trajectory (eg, a PDR trajectory) can be divided into two levels of flat-layer trajectory and a cross-layer trajectory.
  • the track of the leveling segment firstly calculates the effective AP coincidence degree with each leveling skeleton.
  • the maximum AP coincidence degree is the matching leveling skeleton, and then according to the KNN registration algorithm in the matching leveling skeleton, the leveling segment is calculated.
  • the track is registered to the leveling skeleton, and the location of the landmark point on the leveling skeleton can be obtained after the coordinate transformation is performed by using the marks of the landmark points carried by the track of the leveling segment.
  • Cross-segment trajectories are used for subsequent fingerprint clustering to obtain more precise landmark locations. Implementing the embodiments of the present application can achieve fast and accurate acquisition of channel location points.
  • the obtaining the position points of the channel according to the plurality of candidate position points includes: according to the cross-layer segment clustering centers, from the plurality of candidate positions The candidate position points of the selected part are clustered to obtain the position points of the channel; wherein, the cross-layer clustering center is based on the fingerprint similarity of the cross-layer trajectories of the multiple movement trajectories.
  • the cluster centers obtained by clustering.
  • each cross-segment trajectories can be clustered by WiFi similarity to obtain the cross-segment clustering center.
  • Initial classification and then combined with the spatial coordinate information of each category of landmark points to perform meanshift clustering, remove outliers, and obtain an accurate cluster center, which is used as the precise location of the landmark points of the levelable skeleton.
  • the identifying the location point distribution of the channel on the moving track includes: for each mobile terminal in the plurality of mobile terminals, according to the mobile terminal
  • the movement data is used to identify the position where the user behavior change occurs on the moving track; the user behavior change refers to the transition between the user behavior on the floor and the user behavior on the passage.
  • the location point distribution of the location points at both ends of the channel on the movement track is determined.
  • the server can output various user behaviors of pedestrians walking with mobile phones through the behavior recognition program, including user behaviors such as going up and down stairs, elevators, and escalators.
  • user behaviors such as going up and down stairs, elevators, and escalators.
  • the transition between the user behavior on the floor and the user behavior on the passage can be a gradual process rather than a sudden process.
  • the junction point of can get the position point of the channel.
  • the crowdsourced data further includes altitude data collected by a barometer; and the identifying the location distribution of the channel on the moving track includes: for the multiple Each of the mobile terminals identifies, according to the motion data of the mobile terminal, the position where the user behavior change occurs on the moving track; the user behavior change refers to the user behavior on the floor and the user behavior on the floor.
  • the location of the event determines the location point distribution of the channel on the moving track.
  • the mobile terminal with the barometer can detect the landmark point of the channel by detecting the significant height change switching point according to the height change of the air pressure response. Further, the behavior recognition results and the barometer cross-layer event results can be combined to determine the landmark points of the channel, so as to realize the prediction of the landmark points of the channel robustly, and improve the prediction quality and accuracy.
  • the fingerprint map of the multi-storey building is generated according to the leveling framework of the at least two floors, the connection position of the passage and the configuration of the passage.
  • the method includes: generating a three-dimensional topological map according to the leveling skeleton, the location points of the passage and the configuration of the passage; and mapping the three-dimensional topological map to a world coordinate system to obtain a fingerprint map of the multi-storey building.
  • the mobile terminal can detect the GPS information of the entrance and exit of the reference floor (referred to as entrance GPS) through the GPS module, or the GPS information obtained occasionally in the indoor environment (referred to as Opportunistic GPS).
  • the server obtains the GPS of the entrance or the indoor opportunity GPS by identifying the position of the entrance and exit of the reference floor.
  • the 3D topology map can be mapped to the world coordinate system, such as the WGS84 coordinate system, by using the entrance and exit GPS or indoor opportunistic GPS, so as to realize the absolute coordinate mapping of the whole floor, that is, to obtain the fingerprint map of the multi-story building in the world coordinate system.
  • a fingerprint map of a multi-story building under the WGS84 coordinate system can be obtained without the aid of an indoor floor plan, and a full-floor map coordinate mapping can be realized, so as to achieve a seamless indoor and outdoor positioning effect of multi-floor and full-scene.
  • the process of determining the configuration of the channel according to the crowdsourcing data includes: performing pedestrian dead reckoning (PDR) according to the motion data, and obtaining the location where the mobile terminal is located.
  • PDR pedestrian dead reckoning
  • the PDR information when moving in the channel; the PDR information includes one or more of changes in speed, number of steps, distance, and height; and the configuration of the channel is determined according to the PDR information.
  • the position of the start and end points in the trajectory is determined to realize single-track landmark point detection.
  • the status, speed/step number, distance, height change, etc. are identified, so as to distinguish the specific configuration of the passage, such as stairs, elevators or escalators, etc., and assign the passage corresponding up and down row direction property.
  • an embodiment of the present application proposes an indoor positioning method, which is applied to a first mobile terminal, and includes: downloading a fingerprint map from a server, where the fingerprint map is a The leveling frame of the multi-storey building determined by the package data, the position points on the leveling frame and the configuration of the passage are generated; the real-time position of the first mobile terminal in the multi-storey building is collected. fingerprint data; matching the location fingerprint data with the fingerprint map to obtain the real-time location of the first mobile terminal in the multi-story building, where the real-time location is a floor in the multi-story building or in the passageway between two floors.
  • the embodiment of the present application actually provides an indoor offline positioning method.
  • offline positioning can be performed by using the fingerprint map cached in advance in the case of no network signal or poor network signal.
  • it can also be beneficial to combine the data of sensors, GPS, etc. for fusion positioning, so as to further improve the accuracy of indoor positioning.
  • an embodiment of the present application provides an indoor positioning method, wherein the method is applied to a server, including:
  • the location fingerprint data is matched with the fingerprint map to obtain a positioning result;
  • the fingerprint map is the flat skeleton of the multi-story building determined by the server according to the crowdsourcing data of a plurality of second mobile terminals, in the generated from the position points on the flat skeleton and the configuration of the channel;
  • the first mobile terminal sends the positioning result, and the positioning result is used to indicate the real-time position of the first mobile terminal in the multi-storey building, and the real-time position is the location in the multi-storey building.
  • the corresponding method includes:
  • the positioning result is used to indicate the real-time position of the first mobile terminal in the multi-storey building, where the real-time position is in a floor in the multi-storey building location or in the passageway between two floors.
  • the embodiment of the present application actually provides an indoor online positioning method.
  • the cloud server can provide the mobile terminal positioning service interface, and according to the received positioning request of the mobile terminal and the position fingerprint data. , through the positioning algorithm, use the latest fingerprint map to locate the mobile terminal, and return the positioning result to the mobile terminal, which improves the convenience of indoor positioning of the mobile terminal and saves data storage overhead.
  • an embodiment of the present application proposes a device for constructing a fingerprint map of a multi-story building, the device comprising:
  • a receiving module configured to receive crowdsourcing data from a plurality of mobile terminals, where the crowdsourcing data includes motion data and position fingerprint data collected by the mobile terminal during a process of moving across floors in a multi-storey building;
  • a fingerprint map building module for determining, according to the crowdsourcing data, the leveling skeletons of at least two floors in the multi-storey building and the positions of the passages connected between the leveling skeletons on the leveling skeletons point, and the configuration of the passage; generating a fingerprint map of the multi-storey building according to the leveling framework of the at least two floors, the location points of the passage and the configuration of the passage.
  • the functional modules of the apparatus are used to implement the method described in any embodiment of the first aspect.
  • an embodiment of the present application provides an apparatus for indoor positioning, where the apparatus is applied to a first mobile terminal, including:
  • the receiving module is used for downloading a fingerprint map from the server, where the fingerprint map is the leveling skeleton of the multi-story building and the position on the leveling skeleton determined by the server according to the crowdsourcing data of a plurality of second mobile terminals generated by the configuration of the points and channels;
  • a data collection module configured to collect real-time location fingerprint data of the first mobile terminal in the multi-storey building
  • a local positioning module for matching the location fingerprint data with the fingerprint map to obtain the real-time location of the first mobile terminal in the multi-story building, where the real-time location is in the multi-story building A position in a floor in a , or a position in a passageway between two floors.
  • the functional modules of the apparatus are used to implement the method described in the second aspect.
  • an embodiment of the present application provides an apparatus for indoor positioning, where the apparatus is applied to a server, including:
  • a receiving module for receiving a positioning request and the position fingerprint data from the first mobile terminal
  • the cloud positioning service module is used for matching the position fingerprint data with a fingerprint map to obtain a positioning result;
  • the fingerprint map is the data of the multi-story building determined by the server according to crowdsourcing data of a plurality of second mobile terminals. Generated by the leveling framework, the position points on the leveling framework and the configuration of the channel;
  • a sending module configured to send the positioning result to the first mobile terminal, where the positioning result is used to indicate the real-time position of the first mobile terminal in the multi-storey building, where the real-time position is in the A location in a floor in a multi-story building or in a passageway between two floors.
  • the functional modules of the apparatus are used to implement the method described in the third aspect.
  • an embodiment of the present application provides a chip, the chip includes a processor and a data interface, and the processor reads an instruction stored in a memory through the data interface to execute the first aspect or the second aspect or the method described in any embodiment of the third aspect.
  • an embodiment of the present invention provides another non-volatile computer-readable storage medium; the computer-readable storage medium is used to store the data described in any embodiment of the first aspect or the second aspect or the third aspect.
  • method's implementation code The program code, when executed by a computing device, can implement the method described in any embodiment of the first aspect or the second aspect or the third aspect.
  • an embodiment of the present invention provides a computer program product; the computer program product includes program instructions, and when the computer program product is executed by a computing device, executes any of the foregoing first aspect or second aspect or third aspect methods described in the examples.
  • the computer program product may be a software installation package, and the computer program product may be downloaded and executed on the controller to implement the method described in any embodiment of the first aspect or the second aspect or the third aspect.
  • FIG. 1 is a schematic diagram of a scenario for explaining terms provided by an embodiment of the present application
  • FIG. 2 is a schematic diagram of a system architecture provided by an embodiment of the present application.
  • FIG. 3 is a schematic structural diagram of a device in a system architecture provided by an embodiment of the present application.
  • FIG. 4 is a schematic diagram of a system architecture including functional modules provided by an embodiment of the present application.
  • FIG. 5 is a schematic flowchart of a map construction method provided by an embodiment of the present application.
  • 6A is a schematic flowchart of a positioning method provided by an embodiment of the present application.
  • 6B is a schematic flowchart of another positioning method provided by an embodiment of the present application.
  • FIG. 7 is a schematic flowchart of a mobile phone operation scenario provided by an embodiment of the present application.
  • FIG. 8 is a schematic diagram of a fingerprint map construction module provided by an embodiment of the present application.
  • FIG. 9 is a schematic diagram of a channel self-learning module provided by an embodiment of the present application.
  • FIG. 10 is a schematic diagram of a multi-sensor fusion scenario provided by an embodiment of the present application.
  • FIG. 11 is a schematic diagram of a scenario of trajectory segmentation provided by an embodiment of the present application.
  • FIG. 12 is a schematic diagram of a scene in which a trajectory and a skeleton are matched according to an embodiment of the present application
  • FIG. 13 is a schematic diagram of a scene of KNN registration provided by an embodiment of the present application.
  • FIG. 14 is a schematic diagram of a scenario based on fingerprint similarity registration provided by an embodiment of the present application.
  • FIG. 15 is a schematic diagram of a skeleton sequence, floor identification, and alignment provided by an embodiment of the present application.
  • 16 is an example diagram of a trajectory and skeleton matching scene provided by an embodiment of the present application.
  • 17 is a schematic diagram of floor alignment provided by an embodiment of the present application.
  • FIG. 18 is a schematic diagram of a directed acyclic graph construction process provided by an embodiment of the present application.
  • Fig. 19 is a scene example diagram of absolute floor recognition provided by an embodiment of the present application.
  • Fig. 20 is another scene example diagram of absolute floor recognition provided by an embodiment of the present application.
  • 21 is an example diagram of several channel configurations provided by an embodiment of the present application.
  • FIG. 22 is an example diagram of a skeleton alignment scenario provided by an embodiment of the present application.
  • FIG. 24 is a schematic diagram of a map mapping scenario provided by an embodiment of the present application.
  • FIG. 25 is a schematic diagram of a scenario of a fingerprint map provided by an embodiment of the present application.
  • words such as “exemplary” or “for example” are used to represent examples, illustrations or illustrations. Any embodiments or designs described in the embodiments of the present application as “exemplary” or “such as” should not be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as “exemplary” or “such as” is intended to present the related concepts in a specific manner.
  • Crowdsourcing technology is a method of obtaining resources through a large number of user terminals.
  • the available data such as sensors, radio frequency signals or network positioning of user terminals are collected without the user's perception.
  • Such data Can be called crowdsourced data.
  • the crowdsourced data collected by the mobile terminal in this embodiment of the present application may include motion data and location fingerprint data, and the motion data may be data collected by sensors such as a speedometer, a gyroscope, a magnetometer, and a GPS, such as motion speed, attitude, rotation, etc.
  • the location fingerprint data can be the radio frequency information scanned by WiFi technology and Bluetooth technology, such as WiFi signal strength (Received Signal Strength, RSS) information, the number of wireless access points (Access Point, AP) ,etc.
  • the crowdsourced data can also include altitude data collected by barometers.
  • a user can walk around with a mobile terminal such as a smartphone. With the authorization of the user in advance, the mobile terminal can autonomously collect crowdsourced data during the movement.
  • Fingerprint maps are fingerprint datasets with absolute location information that can be used for indoor positioning.
  • Fingerprints also known as location fingerprints or signal fingerprints, refer to the characteristic sequence of wireless signals received at a specific location indoors.
  • the wireless signal may be a WiFi signal, a Bluetooth signal, or the like.
  • the fingerprint of the WiFi signal can be characterized by the statistical value of the received signal strength (Received Signal Strength, RSS) of the WiFi signal from different wireless access points (Access Point, AP) and the number of APs. It can be understood that the WiFi signal strength and the number of APs detected at each location in the indoor space are different. Therefore, when the indoor AP is fixedly deployed, each location point in the indoor space is different from that location.
  • the location fingerprint data collected by the point has a one-to-one correspondence.
  • a multi-story building is a building with multiple floors, and the solution of the present application is suitable for the construction of a fingerprint map of a multi-story building.
  • the floors in the multi-storey building may be floors above the surface such as the first, second, and third floors, or may be floors below the surface such as the basement, minus 1 floor, and minus 2 floors.
  • the passage is a passage facility used to connect different floors of a multi-storey building.
  • the passage is connected between different floors, and people and goods can be transferred between different floors through the passage.
  • the connection relationship between the passages between floors is determined by the attributes of the passage, which include: the connection position of the passage on the floor, and the structural type (or configuration) of the passage.
  • passageways such as stairs, elevators, escalators, ladders, steps, ramps, etc. in:
  • Stairs are the main access facilities in multi-storey buildings for people to walk between different floors and for emergency evacuation.
  • An elevator is a passage facility that uses electricity to drive the car to run in a vertical direction to transport people or goods.
  • Escalator also known as escalator, is a passage facility that automatically transports people through chain conveyors.
  • a ladder refers to a passage facility with a gradient of more than 45° and requires the help of both hands to go up and down.
  • the steps are stair-shaped for different indoor elevations, which is convenient for people to climb up the steps.
  • a ramp is a ramp-type passage facility for wheeled vehicles in a multi-storey building.
  • connection position of the passage on the floor is the end point of the passage on the floor, which is simply understood as the position of the entrance and exit of the passage on the floor.
  • the connection position of the elevator on the 1st floor is the entrance and exit position of the elevator on the 1st floor
  • the connection position on the 2nd floor is the entrance and exit position of the elevator on the 2nd floor.
  • connection relationship between floors is also different.
  • the connection relationship between the passage and the floor it can be divided into directly connected passages (such as elevators, ladders, some stairs folded in the middle) and inclined connected passages (such as inclined stairs, escalators, steps, ramps).
  • directly connected passages such as elevators, ladders, some stairs folded in the middle
  • inclined connected passages such as inclined stairs, escalators, steps, ramps.
  • the configurations, quantities and connection positions of passages between different floors may be the same or different, which is not limited in the present application.
  • the 1st and 2nd floors can be connected by elevators, escalators and stairs
  • the 2nd and 3rd floors can be connected by elevators and stairs.
  • passages are not necessarily connected only to adjacent floors, but may also be connected across floors.
  • an escalator may be designed to directly connect the 1st floor and the 3rd floor; another example, an elevator may be configured to be configured to go from the 1st floor to the 4th floor without stopping at other floors, and so on.
  • the fingerprint map constructed in the embodiment of the present application may be a three-dimensional (3D) fingerprint map. That is to say, there is not only the fingerprint map information corresponding to the floor, which is used for the positioning of the mobile terminal on the floor, but also the fingerprint map information corresponding to the channel, which is used for the positioning of the mobile terminal on the channel.
  • 3D three-dimensional
  • the fingerprint map constructed in the embodiment of the present application may be a fingerprint map corresponding to a part of floors in a multi-story building.
  • a multi-story building has 5 floors, but based on the deployment of APs, only the fingerprint map of floors 1-3 can be constructed to realize the positioning of floors 1-3.
  • the three-dimensional (3D) topology map is a three-dimensional topology structure generated by an aggregation algorithm based on the movement trajectories formed by crowdsourcing data of multiple mobile terminals, and the 3D topology map includes multiple Each leveling skeleton corresponds to a floor, and each position point in the leveling skeleton is bound with the position fingerprint data. It can be seen that the landmark points in the floor are also projected to the corresponding positions on the leveling skeleton.
  • the fingerprint map (or 3D fingerprint map) can be obtained by mapping the 3D topological map to the world coordinate system (eg, the WGS84 coordinate system).
  • the fingerprint map construction method described in this application can be executed by a server, and the mobile terminal provides crowdsourced data to the server.
  • the positioning method described in this application can also be jointly implemented through the interaction between the mobile terminal and the server.
  • the mobile terminal can be a smart phone, a tablet computer, a notebook computer, a handheld computer, a mobile internet device (MID, mobile internet device), a wearable device (such as a smart bracelet, a smart watch, etc.), a special AR device, a special VR equipment, camera equipment (such as video recorders, smart cameras, digital cameras, video cameras, etc.) or other equipment.
  • MID mobile internet device
  • wearable device such as a smart bracelet, a smart watch, etc.
  • special AR device such as a smart bracelet, a smart watch, etc.
  • camera equipment such as video recorders, smart cameras, digital cameras, video cameras, etc.
  • a mobile terminal may also be referred to as user equipment (UE), subscriber station, mobile unit, subscriber unit, wireless unit, remote unit, mobile device, wireless device, wireless communication device, remote device, mobile subscriber station, terminal device, access Terminal, electronic device, wireless terminal, smart terminal, remote terminal, handset, user agent, mobile client, client, or some other appropriate term.
  • UE user equipment
  • subscriber station mobile unit, subscriber unit, wireless unit, remote unit, mobile device, wireless device, wireless communication device, remote device, mobile subscriber station, terminal device, access Terminal, electronic device, wireless terminal, smart terminal, remote terminal, handset, user agent, mobile client, client, or some other appropriate term.
  • the server can be an independent server, a cloud platform, a data center, or a server cluster.
  • the type of server can be, for example, a database server, an application server, a general purpose server, a dedicated server, and the like.
  • the server may also include one or more processing nodes, or include one or more virtual machines running on the server.
  • FIG. 2 shows a system architecture in which a terminal interacts with a server.
  • the system architecture includes a mobile terminal 10 and a server 20 . Communication between the mobile terminal 10 and the server 20 is possible through a network.
  • the server 20 can receive crowdsourced data from a large number of mobile terminals 10, and construct fingerprint maps of one or more multi-story buildings according to the crowdsourced data of these mobile terminals.
  • the present application does not limit the type and quantity of these mobile terminals 10 , nor does it limit the communication mode between the mobile terminal 10 and the server 10 .
  • the real-time positioning of the terminal can be realized in at least two ways:
  • the method of cloud positioning service the server 20 provides the mobile terminal 10 with a positioning service interface, and the server 20 uses the pre-built fingerprint map to locate the mobile terminal according to the received positioning request and the position fingerprint data of the mobile terminal 10 through the positioning algorithm.
  • the terminal 10 performs positioning and returns the positioning result to the mobile terminal 10 .
  • the server 20 may also push the fingerprint map of the building where the mobile terminal 10 is located to the mobile terminal 10, so as to support the positioning function of the mobile terminal 10 in the case of no network or poor network signal.
  • the method of local positioning of the terminal the mobile terminal 10 downloads the fingerprint map from the server 20 in advance, and when it is judged that there is no current network signal or the network signal is poor, it no longer needs to interact with the server, but directly uses the current acquisition
  • the location fingerprint data and the locally stored fingerprint map can be used to achieve positioning. In addition, it can also be further combined with data such as motion sensors and GPS for fusion positioning.
  • the end-cloud system includes a mobile terminal 10 and a server 20 .
  • the mobile terminal and the server 20 establish a communication connection through their respective communication devices, and the communication method can be a wireless communication method.
  • the wireless communication method includes but is not limited to: WiFi method, radio frequency (Radio Frequency, RF) method, data communication method, Bluetooth method, etc. one or more of etc.
  • the mobile terminal 10 comprises: at least one processor 13, memory 15, at least one sensor 11, satellite positioning means 14, display means 17, signal detection means 12 and communication means 16, which components can communicate on one or more communication buses to The functions of the mobile terminal 10 are realized.
  • the processor 13 may also be referred to as a central processing unit (CPU, central processing unit), and the processor 13 may specifically include one or more processing units, for example, the processor 13 may include a general-purpose processor, an application processor (application processor, AP) ), modem processor, graphics processor (graphics processing unit, GPU), image signal processor (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP) , baseband processor, and/or neural-network processing unit (NPU), etc. Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
  • CPU central processing unit
  • processor 13 may specifically include one or more processing units, for example, the processor 13 may include a general-purpose processor, an application processor (application processor, AP) ), modem processor, graphics processor (graphics processing unit, GPU), image signal processor (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP) , baseband processor, and/or neural-network processing unit (
  • processor 13 may include one or more interfaces.
  • the interface may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous transceiver (universal asynchronous transmitter) receiver/transmitter, UART) interface, mobile industry processor interface (MIPI), general-purpose input/output (GPIO) interface, subscriber identity module (SIM) interface, and / or universal serial bus (universal serial bus, USB) interface, etc.
  • I2C integrated circuit
  • I2S integrated circuit built-in audio
  • PCM pulse code modulation
  • PCM pulse code modulation
  • UART universal asynchronous transceiver
  • MIPI mobile industry processor interface
  • GPIO general-purpose input/output
  • SIM subscriber identity module
  • USB universal serial bus
  • the communication device 16 is used for receiving and transmitting data, and mainly integrates the receiver and the transmitter of the mobile terminal 10 .
  • the communication device 16 may include, but is not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chip, a SIM card, and storage medium, etc.
  • the communication device 16 may be implemented on a separate chip.
  • the communication device 16 may, for example, support data network communication through at least one of 2G/3G/4G/5G, etc., and/or support at least one of the following short-range wireless communication methods: Bluetooth (Bluetooth, BT) communication, Wireless Fidelity (WiFi) communication, Near Field Communication (NFC), Infrared (Infrared, IR) wireless communication, Ultra Wide Band (UWB, Ultra Wide Band) communication, ZigBee communication.
  • the mobile terminal 10 communicates and interacts with the server 20 through the communication device 16 . For example, crowdsourced data or a positioning request is sent to the server 20 , and for example, a positioning result or a fingerprint map sent by the server 20 is received.
  • the signal detection device 12 is used for scanning/detecting the radio frequency information of the wireless access point (Access Point, AP) in the indoor environment through WiFi technology, Bluetooth technology, etc., such as detecting WiFi signal strength (Received Signal Strength, RSS) information, The number of wireless access points (Access Point, AP), etc. to obtain the location fingerprint data of the current location.
  • WiFi signal strength Receiveived Signal Strength, RSS
  • the function of the signal detection device 12 can also be integrated into the communication device 16, that is, the communication device 16 can not only communicate with the server 20, but also be used to obtain the location fingerprint data of the current location.
  • the communication device 16 can not only scan the WiFi signal in the indoor environment to obtain the location fingerprint data, but also send the crowdsourced data to the server in the form of WiFi.
  • the functions of the signal detection device 12 can also be integrated into the processor 13, and after the communication device 16 scans the indoor environment for signals, the processor 13 performs signal analysis to obtain location fingerprint data.
  • the sensor 11 may include one or more sensors, such as a barometer, a magnetometer, a gyroscope, an accelerometer, a wheel speedometer, an inertial measurement unit (Inertial Measurement Unit, IMU), etc., for detecting when the mobile terminal 10 moves ( For example, the user carries the movement data of the mobile terminal 10, such as movement speed, posture, rotation angle, movement direction, etc., so as to form crowdsourced data in combination with the above-mentioned position fingerprint data. Motion data can also be used to assist positioning during indoor positioning.
  • the sensor 11 may also include more or other sensors.
  • the satellite positioning device 14 is used to realize satellite positioning of the mobile terminal 10.
  • the satellite positioning device 14 may be provided with a Global Navigation Satellite System (Global Navigation Satellite System, GNSS), and GNSS is not limited to the Global Positioning System (Global Positioning System, GPS) , GLONASS positioning system (GLONASS), Galileo satellite navigation and positioning system (Galileo satellite navigation system), Beidou positioning system, etc. to assist positioning.
  • the mobile terminal 10 may obtain GPS signals at the entrances and exits of a multi-story building through the satellite positioning device 14 (referred to as entrance and exit GPS), or may also obtain GPS signals (referred to as opportunistic GPS) when the signals at certain indoor locations allow.
  • the mobile terminal 10 may include one or more display devices 17 .
  • the mobile terminal 10 may jointly implement the display function through the display device 17, a graphics processing unit (GPU) in the chip 310, an application processor (AP), and the like.
  • the GPU is a microprocessor for image processing, and connects the display device 17 and the application processor.
  • the GPU is used to perform mathematical and geometric calculations for graphics rendering.
  • the display device 17 is used to display the interface content currently output by the system
  • the interface content may include the interface of the running application program and the system level menu, etc., and may be specifically composed of the following interface elements: input interface elements, such as buttons (Button), text Input box (Text), slide bar (Scroll Bar), menu (Menu), etc.; and output interface elements, such as window (Window), label (Label), image, video, animation, etc.
  • input interface elements such as buttons (Button), text Input box (Text), slide bar (Scroll Bar), menu (Menu), etc.
  • output interface elements such as window (Window), label (Label), image, video, animation, etc.
  • the display device 17 may be a display panel, a lens (eg, VR glasses), a projection screen, and the like.
  • the display panel may also be called a display screen, for example, it may be a touch screen, a flexible screen, a curved screen, etc., or other optical components. That is to say, when the electronic device has a display screen in this application, the display screen can be a touch screen, a flexible screen, a curved screen or other forms of screen, and the display screen of the electronic device has the function of displaying images. Shape This application does not make any limitation in this regard.
  • the display panel may use a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active matrix organic light emitting diode or an active matrix Organic light emitting diodes (active-matrix organic light emitting diodes, AMOLED), flexible light emitting diodes (flex light-emitting diodes, FLED), Miniled, MicroLed, Micro-oLed, quantum dot light emitting diodes (quantum dot light emitting diodes, QLED), etc.
  • LCD liquid crystal display
  • OLED organic light-emitting diode
  • AMOLED active matrix organic light emitting diodes
  • FLED flexible light emitting diodes
  • Miniled MicroLed, Micro-oLed
  • quantum dot light emitting diodes quantum dot light emitting diodes
  • the touch panel and the display panel in the display device 17 may be coupled together and disposed, for example, the touch panel may be disposed below the display panel, and the touch panel may be used to detect a user's input of a touch operation through the display panel Touch pressure acting on the display panel (such as clicking, sliding, touching, etc.), and the display panel is used for content display.
  • the content displayed in the embodiment of the present application may be, for example, a map application operation interface, a fingerprint map, an indoor positioning interface, and the like.
  • the memory 15 can be connected with the processor 13 through a bus, or can be coupled with the processor 13, and is used for storing various software programs and/or groups of instructions.
  • the memory 15 may include a high-speed random access memory (such as a cache memory), and may also include a non-volatile memory, such as a random access memory (RAM), a read-only memory (Read- Only Memory, ROM), Erasable Programmable Read Only Memory (EPROM), or Portable Read-Only Memory (Compact Disc Read-Only Memory, CD-ROM) and so on.
  • RAM random access memory
  • ROM read-only memory
  • EPROM Erasable Programmable Read Only Memory
  • CD-ROM Portable Read-Only Memory
  • the memory 15 can store an operating system, such as ANDROID, IOS, WINDOWS, Hongmeng operating system or LINUX embedded operating system, and so on.
  • an operating system such as ANDROID, IOS, WINDOWS, Hongmeng operating system or LINUX embedded operating system, and so on.
  • Memory 15 may be used to store data (eg crowdsourced data, fingerprint map data).
  • Memory 15 may also store communication programs that may be used to communicate with one or more servers or other devices.
  • the memory 15 may also store one or more application programs. As shown in the figure, these applications may include: map applications, virtual scene applications such as AR/VR/MR, shopping applications, life service applications, and the like.
  • the memory 15 can also store a user interface program, which can vividly display the content of the application program through the graphical operation interface and present it through the display device 17, and realize the reception through input controls such as menus, dialog boxes and keys. The user's control operation on the application.
  • the memory 15 may store codes including methods of any of the embodiments discussed herein, and/or codes of functional modules.
  • the processor 13 is configured to invoke the code in the memory 15 to implement the functions on the side of the mobile terminal 10 in any of the embodiments herein.
  • the server 20 may include one or more processors 21 , one or more memories 23 , a communication device 22 . These components can be connected via a bus.
  • the processor 21 may be the processor 13 and may include a general-purpose processor, an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), controller, video codec, digital signal processor (DSP), baseband processor, and/or neural-network processing unit (NPU), etc.
  • the processor 21 is mainly used to realize the construction of fingerprint maps of one or more multi-story buildings.
  • the communication device 22 is used to realize the communication between the server 20 and the mobile terminal, for example, a receiver and a transmitter can be integrated, wherein the receiver is used to receive data (such as positioning requests, crowdsourcing data, etc.) sent by various mobile terminals, and the transmitter is used to send data to the mobile terminal.
  • the mobile terminal sends data (eg, positioning results, fingerprint map data, etc.).
  • the memory 23 can be connected with the processor 21 through a bus, or can be coupled with the processor 21 for storing various software programs and/or multiple sets of instructions, and data (eg, fingerprint map data, crowdsourced data, etc.).
  • the memory 23 includes, but is not limited to, a random access memory (Random Access Memory, RAM), a read-only memory (Read-Only Memory, ROM), an erasable programmable read-only memory (Erasable Programmable Read Only Memory, EPROM), or portable read-only memory (Compact Disc Read-Only Memory, CD-ROM).
  • the memory 15 may store codes including methods of any of the embodiments discussed herein, and/or codes of functional modules.
  • the processor 21 may be configured to invoke program instructions in the memory 23 to perform the server-side functions in any of the embodiments herein.
  • the mobile terminal 10 and the server 20 may also include more or less components than those shown, or combine certain components, or arrange different components.
  • the device structure shown in FIG. 2 does not constitute a limitation to the present application.
  • Coupled means connected directly to, or connected through one or more intervening components or circuits. Any of the signals described herein provided on the various buses may be time multiplexed with other signals and provided on one or more shared buses. Additionally, the interconnections between various circuit elements or software blocks may be shown as buses or as single signal lines. Each bus is alternatively a single signal line, and each single signal line is alternatively a bus, and the single line or bus may represent any one or more of a number of physical or logical mechanisms for communication between components .
  • FIG. 4 is a functional implementation block diagram of a possible system architecture provided by an embodiment of the present application.
  • the system architecture includes a mobile terminal 10 and a server 20.
  • the mobile terminal 10 may include a local positioning module 101, a database 102 for saving crowdsourced data collected by the mobile terminal 10, and a database 103 for saving offline fingerprint maps ;
  • the functional modules in the mobile terminal 10 may, for example, run on the processor 13 shown in the embodiment of FIG. 3
  • the database in the mobile terminal 10 may, for example, store data through the memory 15 shown in the embodiment of FIG. 3 .
  • the server 20 may include a fingerprint map construction module 201 , a database 202 for storing crowdsourced data from the mobile terminal 10 , a database 203 for storing the constructed fingerprint map, a data normalization module 204 and a cloud location service module 205 .
  • the mobile terminal 10 may include a receiving module and a sending module, which are respectively used to receive data and send data from the outside world (such as a server), and the server 20 may also include a receiving module and a sending module, which are respectively used to send data from the outside world. (such as a mobile terminal) to receive data and send data.
  • the functional modules in the server 20 may run on, for example, the processor 21 shown in the embodiment of FIG. 3 , and the database in the server 20 may, for example, store data through the memory 23 shown in the embodiment of FIG. 3 .
  • the relevant descriptions are as follows:
  • the mobile terminal 10 can store the crowdsourced data collected by the mobile terminal 10 in the multi-story building through the database 102.
  • the crowdsourced data includes two parts: motion data collected by sensors and data collected by signals
  • the location fingerprint data collected by the device is, for example, the sensor 11 shown in the embodiment of FIG. 3 , for example, relevant data is obtained through a speedometer, gyroscope, magnetometer, barometer, GPS, etc., and the signal acquisition device here is, for example, shown in the embodiment of FIG. 2 .
  • the signal collection device 12 detects the radio frequency information of the surrounding APs by means of WiFi, Bluetooth and the like.
  • the mobile terminal 10 can upload its own crowdsourced data to the cloud server 20 to support the server's collection of the crowdsourced data.
  • Database 103 used to store the fingerprint map data downloaded by the mobile terminal 10 from the server 20 in advance to support the offline positioning of the mobile terminal 10 when there is no network signal or the network signal is poor, so the fingerprint map data can also be called Fingerprint map for offline.
  • the mobile terminal 10 sends a positioning request to the server 20 according to the position fingerprint data collected at the current position, and receives the positioning result returned by the server 20 .
  • offline positioning can be performed by using the offline fingerprint map cached in the database 203 in advance, and fusion positioning can also be performed in combination with data such as sensors and GPS to further improve the accuracy of indoor positioning.
  • Database 202 used to store crowdsourced data uploaded by various mobile terminals, the database 102 can be used as a data source for the server 20 to construct a fingerprint map.
  • Database 103 used to store the fingerprint maps of various multi-story buildings constructed by the server 20 to support indoor positioning service of the mobile terminal by the server 20, and also support the download of part or all of the fingerprint maps by the mobile terminal.
  • Data regularization module 204 used to implement regularization of crowdsourced data uploaded by various mobile terminals. For example, for a large amount of crowdsourced data uploaded by different mobile terminals, the data regularization module 204 can verify the valid crowdsourced data through data standard verification; it can also identify valid crowdsourced data according to GPS information and AP information (such as WiFi signal characteristics, Bluetooth signal Features, etc.), according to the initial grid division, the coarse granularity is classified and stored according to the country, city and other information. It supports the construction of fingerprint maps of different multi-story buildings through efficient classification of data.
  • GPS information and AP information such as WiFi signal characteristics, Bluetooth signal Features, etc.
  • Fingerprint map building module 201 for building a fingerprint map of a multi-story building according to the database 202 .
  • the respective leveling skeletons of at least two floors in the multi-story building and the connections of the channels connected to the respective leveling skeletons can be determined according to crowdsourcing data
  • the connection relationship of the channel is determined by the connection position of the channel on the leveling frame and the configuration of the channel; and then according to the connection relationship between the leveling frame of the at least two floors and the channel, Generate a fingerprint map of the multi-story building.
  • the fingerprint map construction module 201 may further include the following functional modules:
  • the channel self-learning module is used to determine the position of the channel between each leveling frame in the multi-storey building on the leveling frame according to the crowdsourced data, and can also be used to determine the configuration of the channel. For example, the channel self-learning module can fuse the mobile behavior recognition results and the cross-layer event detection results, and use the leveling segment to splicing the leveling skeleton to initially locate the candidate landmark points. Combined with the WiFi information similarity across layers and the spatial distribution of candidate landmark points, joint clustering is used to accurately locate landmark points on the flat skeleton of multi-story buildings.
  • the 3D topology building module is used to generate a 3D topology map according to the leveling skeleton of the multi-story building, the location points of the channel and the configuration of the channel. For example, the 3D topology building module can identify the uplink and downlink connections between the leveling skeletons based on the uplink and downlink connections of the candidate landmark points located on the leveling skeletons, and then sort the leveling skeletons according to their high-low relationship. , identify the absolute floor, and finally align the floor with the coordinate system according to the configuration of the identified passage, so as to obtain the 3D topology map of the multi-story building.
  • the map mapping module is used for mapping the three-dimensional topological map to the world coordinate system to obtain the fingerprint map of the multi-storey building.
  • the map mapping module can convert the 3D topology map of the multi-story building to the WGS84 coordinate system according to the identified entrance and exit GPS, opportunity GPS points, output control points or local floor maps, so as to obtain the final fingerprint map (or 3D map). Fingerprint map) to achieve seamless indoor and outdoor positioning.
  • Cloud positioning service module 205 can provide the mobile terminal positioning service interface, and according to the received positioning request and position fingerprint data of the mobile terminal, through the positioning algorithm, the fingerprint map in the database 203 is used to locate the mobile terminal. The terminal performs positioning and returns the positioning result to the mobile terminal. In addition, the fingerprint map of the building can also be pushed to the mobile terminal to support the offline positioning function of the mobile terminal when there is no network or poor network signal.
  • the following describes a method for constructing a fingerprint map of a multi-story building provided by an embodiment of the present application.
  • the method is described from the perspective of the server side, including but not limited to the following steps:
  • S301 Receive crowdsourced data from multiple mobile terminals, where the crowdsourced data includes motion data and location fingerprint data collected by the mobile terminals in the process of moving across floors in a multi-story building.
  • the motion data may be data collected by sensors such as a speedometer, a gyroscope, a magnetometer, and a GPS, such as motion speed, attitude, rotation angle, movement direction, and the like.
  • the location fingerprint data can be radio frequency information scanned by WiFi technology or Bluetooth technology, such as WiFi signal strength (Received Signal Strength, RSS) information, the number of wireless access points (Access Point, AP), and so on.
  • WiFi signal strength Receiveived Signal Strength, RSS
  • AP wireless access Point
  • the crowdsourced data can also include altitude data collected by barometers.
  • the multiple mobile terminals may be different types of mobile terminals, and the sensors configured on each mobile terminal may also be different.
  • the collection of crowdsourced data by various users' mobile terminals replaces the collection of manual data and manual annotation, and there is no need to deploy a special data collection device indoors, which greatly reduces the cost of labor and material resources.
  • S302. Determine, according to the crowdsourcing data, the leveling frames of at least two floors in the multi-storey building, the position points on the leveling frames of the passages connected between the leveling frames, and the channel configuration.
  • Each leveling skeleton corresponds to a floor, and each location point in the leveling skeleton is bound with the location fingerprint data.
  • the passage is a passage facility used to connect different floors of a multi-storey building.
  • the configuration of the passage includes stairs, elevators, escalators, ladders, steps, ramps, etc.
  • the location point of the passage on the floor is the end point of the passage on the floor.
  • the simple understanding is the position of the entrance and exit of the passage on the floor.
  • the location point of the passage can also be called the landmark point, so each passage has a pair of ground punctuation.
  • the landmark point, and the channel configuration reference may be made to the relevant descriptions before and after this application, which will not be repeated here.
  • the process of generating a leveling skeleton may include: obtaining movement trajectories of the plurality of mobile terminals in the at least two floors according to motion data of the mobile terminals; The movement trajectories of the terminal are aggregated to obtain the leveling skeleton of the at least two floors; wherein, each position point of the leveling skeleton has corresponding position fingerprint data.
  • the process of determining the location of the landmark point of the passage may include: obtaining the movement trajectories of the plurality of mobile terminals in the at least two floors according to the movement data of the mobile terminal; distribution of the position points on each of the moving trajectories; matching each of the moving trajectories with the leveling skeletons of the at least two floors to obtain the position points of the passage.
  • the process of determining the configuration of the channel may include: performing pedestrian dead reckoning (PDR) according to the motion data of the mobile terminal, and obtaining PDR information when the mobile terminal moves in the channel;
  • the PDR information includes one or more of changes in speed, number of steps, distance, and height; according to the PDR information, the configuration of the channel is determined.
  • PDR pedestrian dead reckoning
  • S303 Generate a fingerprint map of the multi-storey building according to the leveling framework of the at least two floors, the location points of the passage, and the configuration of the passage.
  • a 3D topology map can be generated according to the leveling framework of the at least two floors, the location points of the passage, and the configuration of the passage, and the construction process of the 3D topology map does not need to depend on the existing indoor plane. map. Then, the 3D topology map is mapped to the world coordinate system to obtain the fingerprint map of the multi-story building, which can be used by the server to provide online or offline indoor full-floor location services.
  • the server can make full use of the crowdsourced data collected by various mobile terminals to construct a fingerprint map of a multi-story building, replacing the collection of manual data and manual labor. It can also realize the construction of 3D topology map without map dependence, without deploying special data acquisition devices indoors, which greatly reduces the cost of labor and material resources.
  • the embodiment of the present application automatically creates a multi-floor 3D topology map by using the landmark position of the channel, the uplink and downlink connection relationship of the paired landmark points, and the channel configuration, so as to solve the problem that the map construction in the prior art relies on manual editing, Improved the efficiency and accuracy of fingerprint map generation.
  • the indoor positioning method based on fingerprint map is described below, and the method includes two types: online positioning method and offline positioning method.
  • online positioning method and offline positioning method.
  • offline positioning method The following descriptions are respectively described in the way of terminal-cloud interaction.
  • FIG. 6A shows an online positioning method, which includes but is not limited to the following steps:
  • the mobile terminal collects real-time location fingerprint data of the mobile terminal in a multi-storey building; the location fingerprint data includes the number and/or signal strength of wireless access points (APs).
  • AP wireless access points
  • the AP is used to generate WiFi signals, and the location fingerprint data may include the number of APs and/or WiFi signal strengths scanned/detected by the mobile terminal in the current location.
  • the current position of the mobile terminal may be in the floor, or may be in the passage of the floor.
  • the mobile terminal sends a positioning request and the position fingerprint data to the server, where the positioning request is used to request the server to provide an online positioning service.
  • the server matches the location fingerprint data with a pre-built fingerprint map, thereby obtaining a positioning result; wherein the fingerprint map may be the multiple pre-determined by the server according to crowdsourcing data of multiple mobile terminals. It is generated from the leveling skeleton of the floor building, the position points on the leveling skeleton and the configuration of the passage; for the specific generation process of the fingerprint map, please refer to the description of the relevant embodiments in the context of this application , which will not be repeated here.
  • the server sends a positioning result to the mobile terminal. Accordingly, the mobile terminal receives the positioning result, and the positioning result is used to indicate the real-time position of the mobile terminal in the multi-storey building, and the real-time position corresponds to the mobile terminal.
  • the positioning result may support subsequent services such as user indoor navigation, location search, AR/VR/MR or advertisement push, which is not limited in this application.
  • the method of the present application may be presented in the form of indoor positioning service software, deployed in the operating system layer of the mobile terminal, and used by the application layer LBS through an API interface.
  • the operating system layer of the intelligent mobile terminal system initiates a positioning request to the server in the cloud, the server returns the positioning result to the system layer of the terminal device, and finally uploads it to the application layer through the API interface, so that the user can obtain the positioning result.
  • the cloud server can provide the mobile terminal positioning service interface.
  • the mobile terminal According to the received positioning request and position fingerprint data of the mobile terminal, the mobile terminal can be positioned by using the latest fingerprint map through the positioning algorithm. The positioning result is returned to the mobile terminal, which improves the convenience of indoor positioning of the mobile terminal and saves data storage overhead.
  • FIG. 6B shows an offline positioning method, which includes but is not limited to the following steps:
  • the mobile terminal downloads and saves a fingerprint map from the server in advance, and the fingerprint map may be a leveling skeleton of a multi-story building determined by the server in advance according to crowdsourcing data of multiple mobile terminals, on the leveling skeleton
  • the location point of the fingerprint map and the configuration of the channel are generated; for the specific generation process of the fingerprint map, reference may be made to the description of the relevant embodiments in the context of the present application, which will not be repeated here.
  • the mobile terminal collects real-time location fingerprint data of the mobile terminal in the multi-storey building; the location fingerprint data includes the number and/or signal strength of wireless access points (APs).
  • AP wireless access points
  • the AP is used to generate WiFi signals, and the location fingerprint data may include the number of APs and/or WiFi signal strengths scanned/detected by the mobile terminal in the current location.
  • the current position of the mobile terminal may be in the floor, or may be in the passage of the floor.
  • the mobile terminal matches the location fingerprint data with the stored fingerprint map to obtain a positioning result, for example, obtains the real-time location of the first mobile terminal in the multi-storey building, where the real-time location is in the A location in a floor in a multi-story building or in a passageway between two floors.
  • the positioning result may support subsequent services such as user indoor navigation, location search, AR/VR/MR or advertisement push, which is not limited in this application.
  • the offline positioning method can use the fingerprint map cached in advance for offline positioning when there is no network signal or the network signal is poor.
  • a mobile phone 10 is used as an example for the mobile terminal.
  • the mobile phone 10 is located in a multi-floor building (eg, a shopping mall with multiple floors), for example, a user is walking in the shopping mall with the mobile phone 10
  • the WiFi positioning function has been activated.
  • the application scenario can be an online positioning scenario or an offline positioning scenario.
  • a certain map application is installed in the mobile phone 10 , and ( 1 ) in FIG. 7 shows the desktop 101 on the display panel of the mobile phone 10 .
  • a user interface 104 of the application as shown in (2) in FIG. 7 is displayed on the display panel of the electronic device 10, where the The user interface 104 includes an electronic map interface and a plurality of controls, such as an electronic map control, a satellite map control and an indoor map control 103 as shown in the figure.
  • the user interface 105 of the application as shown in (3) in FIG. 7 is displayed on the display panel, and the user interface 105 shows that the user is currently on the first floor of the shopping mall real-time location in .
  • the real-time location of the user displayed in the user interface 105 will also be updated accordingly.
  • the user interface 105 When the user moves across floors, the user interface 105 will also seamlessly display the process of moving across floors. As shown in (4) in FIG. 7 , when the user takes the escalator (of course, other passages, such as elevators, stairs, etc.) can be used to go to the second floor of the shopping mall, the user interface 106 displays the current location as being on the first floor. Go to the escalator on the 2nd floor, and the current real-time altitude can also be displayed.
  • the escalator of course, other passages, such as elevators, stairs, etc.
  • the user's current real-time location on the second floor of the shopping mall continues to be displayed through the user interface 107 .
  • the embodiment of the present application it is possible to realize accurate positioning of a single point in each floor, such as the positioning in the first floor, the second floor, and the passage, and in the process of moving across floors, it can also display the process of crossing floors in real time (for example, the 3D effect of continuous positioning from the 1st floor to the 2nd floor can realize the accurate and seamless 3D transition effect between floors. It can be completed without switching when positioning between different floors, and the accurate height can be displayed in real time. Therefore, the embodiments of the present application can improve the efficiency and accuracy of indoor positioning, and improve user experience.
  • FIG. 8 is an exemplary flowchart of a fingerprint map construction process of a multi-story building.
  • the server may, on the one hand, generate the leveling skeleton of at least two floors of the multi-storey building based on the crowdsourcing data. For example, the server obtains the movement trajectories of the plurality of mobile terminals in the at least two floors according to the movement data in the crowdsourced data, and then aggregates the movement trajectories of the plurality of mobile terminals to obtain the The leveling skeleton of at least two floors; wherein, each position point of the leveling skeleton has corresponding position fingerprint data.
  • the crowdsourced data of the mobile terminal can be processed through the channel self-learning module, the three-dimensional topology building module and the map mapping module in the fingerprint map building module respectively, and then the fingerprint map of the multi-storey building can be output.
  • the processing of the channel self-learning module may further include processing stages of single-track channel detection, skeleton candidate channel detection, and skeleton accurate channel positioning.
  • the processing of the 3D topology building block it may further include several processing stages of multi-layer skeleton sorting, absolute floor recognition and multi-layer skeleton alignment.
  • the map mapping module it may further include several processing stages of base-level entrance and exit detection and absolute coordinate mapping. The following will be described in detail through specific examples.
  • the channel self-learning module can be used to determine the position of the channel between the leveling frameworks of at least two floors in a multi-story building on the leveling framework according to crowdsourcing data, and also to determine the configuration of the channel .
  • FIG. 9 shows a schematic flowchart of a possible implementation logic of the channel self-learning module. The process includes the following stages:
  • S401 Implement a single track channel detection stage based on cross-layer information fusion.
  • the crowdsourced data includes motion data, which is data collected by at least one sensor including at least one of an accelerometer, a gyroscope, a magnetometer, and an inertial measurement unit.
  • motion data is data collected by at least one sensor including at least one of an accelerometer, a gyroscope, a magnetometer, and an inertial measurement unit.
  • a position where a user behavior change occurs on the movement track may be identified according to the motion data of the mobile terminal, where the user behavior change refers to the user behavior on the floor and the passageway. Then, according to the position where the user behavior change occurs, the position point distribution of the channel on the moving track is determined.
  • the crowdsourced data includes both motion data and altitude data collected by a barometer; then, according to the motion data of the mobile terminal, it is possible to identify the user behavior change on the movement track. position; the user behavior change refers to the transition between the user behavior on the floor and the user behavior on the passage; according to the height data of the mobile terminal, identify the occurrence of cross-floor events on the moving track Location. Then, fusion processing is performed according to the position where the user behavior change occurs and the position where the cross-layer event occurs, so as to determine the position point distribution of the channel on the moving track. For example, filtering and preprocessing the user behavior recognition results to obtain continuous and accurate cross-layer switching states.
  • Kalman filtering is performed on the height change data retrieved from the height data of the barometer, and the cross-layer switching state is detected by the height change inflection point.
  • the weighted fusion is carried out, the time series cross-layer state is fused, and the cross-layer state switching point is further accurately determined by setting the threshold, and corresponding to the PDR trajectory according to the timestamp information. , and output the single-track landmark detection results.
  • the server can output various states of pedestrians walking with mobile phones through the behavior recognition program, including the states of going up and down stairs, elevators, escalators, etc. Therefore, cross-layer state detection can be performed with the help of behavior recognition output states. There is a discrete situation in the original behavior recognition output state, so it is first necessary to perform sequential filtering on the state to obtain a continuous floor switching state, and then detect the start and end points of the continuous state.
  • the sensor behavior model can be trained through machine learning, and the user behavior can be predicted at each moment.
  • the user's movement process includes walking on the floor.
  • Behavior also includes the behavior of going up in a corridor (such as an elevator).
  • the result input in (1) can be filtered, a segment of data window is taken during the filtering process, the state value with the most frequent occurrence in the right neighbor window is assigned to the current moment, and the current detection result is The confidence is set as the frequency ratio of the state in the current window, and the output result is shown in (3) in Figure 10.
  • the multi-segment elevator upward behavior is integrated into a continuous elevator upward behavior, and the multi-segment user walks The behavior is integrated into a continuous walking behavior.
  • the places where the user behavior changes are the start and end points of the passage (elevator).
  • the barometer can reflect the altitude change during the walking process, and the altitude of the mobile terminal can be inverted through the air pressure value output by the barometer during the walking process.
  • height represents the height value
  • pressure represents the air pressure value
  • the original height value may fluctuate greatly, and filtering processing is required first.
  • median filtering and Kalman filtering can be used to smooth the height curve, and the switching point of height change can be detected on the smooth height curve.
  • the median filter is used to remove invalid data, and the Kalman filter is used to smooth the height curve.
  • the barometric pressure value change curve is obtained through the barometer. Since the curve has more invalid data and noise, filtering processing is required. After the filtering is completed, the height change curve can be obtained, as shown in (5) in Figure 10.
  • inflection point detection can be performed to detect the inflection point of height change, and the inflection point corresponds to the start and end time of floor switching, that is, it corresponds to landmark points such as stair entrance, elevator entrance, and escalator entrance. By detecting the peaks and valleys on the height change curve, it can be determined whether a cross-layer event occurs.
  • the peak point of the height change curve greater than 0 represents the moment when the local height rises the fastest, corresponding to the upstairs event, and the valley point less than 0 corresponds to the moment when the local height drops the fastest, corresponding to the downstairs event.
  • the occurrence of cross-layer can be detected by detecting the peak and valley points on the change curve. Then, the flat area of height change at both ends of the peak and valley points on the height curve is detected by scribing the window, and the cross-layer switching point can be located by locating the height change to the gentle inflection point.
  • the confidence of the detection state in the detection section is given according to the change rate of the change curve. The greater the absolute value of the change rate, the greater the confidence.
  • the above implementation logic can be represented by the following formula 2:
  • h 0 is the height change rate threshold, which is set as the mean value of the absolute value of the height change rate at the start and end points of detection (h s + he )/2
  • h ⁇ is the absolute value of the height change rate
  • is the sensitivity coefficient, which is set to 0.5.
  • the state confidence obtained by behavior recognition and the state confidence obtained by barometer detection can be weighted and fused to obtain the final state confidence, and a higher weight can be given to the barometer detection result.
  • the weight of the result is set to 0.7
  • the weight of the result of user behavior recognition is set to 0.3
  • the threshold is set according to the final state confidence to determine the starting and ending points of the continuous state.
  • the position of the starting and ending point is the position of the landmark point of the passage (eg, the elevator) on the moving track (eg, the PDR track).
  • pedestrian dead reckoning can be performed according to motion data and/or altitude data to obtain PDR information when the mobile terminal moves in the channel, the PDR information including one or more of speed, number of steps, distance, and altitude change indivual.
  • the configuration of the channel is determined. For example, after the pedestrian dead reckoning (PDR) is performed to obtain the PDR trajectory, according to the detected start and end time stamps, corresponding to the PDR trajectory time stamps, the position of the start and end points in the trajectory is determined to realize single-track landmark point detection.
  • the status, speed/step number, distance, height change, etc. are identified, so as to distinguish the specific configuration of the passage, such as stairs, elevators or escalators, etc., and assign the passage corresponding up and down row direction property.
  • the mobile terminal with the barometer can detect the landmark point of the channel by detecting the significant height change switching point according to the height change of the air pressure response. Further, the behavior recognition results and the barometer cross-layer event results can be combined to determine the landmark points of the channel, so as to realize the prediction of the landmark points of the channel robustly, and improve the prediction quality and accuracy.
  • the server may divide the moving track into a flat segment track and a cross-segment segment based on the location point distribution on the moving track. Track; match the leveling segment track with the leveling skeleton through the K Nearest Neighbors (KNN) algorithm to obtain multiple candidate position points of the channel on the leveling skeleton.
  • KNN K Nearest Neighbors
  • the detection results of the landmark points of a single movement track of the mobile terminal can be used to divide each cross-layer movement track (eg, PDR track) into two levels of leveling segment tracks (eg, the leveling track in the figure).
  • Segment 1 and leveling segment 2) and a cross-level segment the leveling segment trajectory is first calculated with the effective AP coincidence degree of each leveling skeleton.
  • the track of the leveling segment is registered to the leveling skeleton, and the ground on the leveling skeleton can be obtained after coordinate transformation by using the marks of the landmark points carried by the track of the leveling segment. The location of the punctuation.
  • Cross-segment trajectories are used for subsequent fingerprint clustering to obtain more precise landmark locations.
  • the traditional matching method generally adopts the most similar matching algorithm, that is, the point with the largest WiFi similarity with the point to be matched is selected as the matching point, where the WiFi similarity is defined as: assuming that the i-th step point in the reference trajectory scans
  • the fingerprints of m APs are defined as: For the jth step point in the track to be spelled to scan n APs, it is defined as: but and Similarity of two fingerprint points defined as:
  • the most similar matching algorithm when used, it will be affected by the burr trajectory on the skeleton, outliers, AP disorder on the skeleton, etc., resulting in the situation that the most similar points in WiFi are not matching points.
  • the leveling segment is mainly used to find a matching leveling skeleton by using the number of AP intersections, selecting the leveling skeleton with the largest number of AP intersections as the matching leveling skeleton, and then passing KNN on the matching leveling skeleton.
  • the registration algorithm finds matching points one by one.
  • Using the KNN matching algorithm can reduce the interference of the above errors to a certain extent.
  • the segmented leveling segment trajectory includes leveling segment 1 and leveling segment 1. number, and determine the leveling skeleton matching the leveling segment from the set of leveling skeletons of the multi-story building. For example, determine that leveling section 1 matches leveling frame 1, and determine that leveling section 2 matches leveling frame 2. Then, KNN registration is performed on the flattened segments with their matching flattened skeletons respectively. As shown in Figure 12, after KNN registration, the candidate landmark point 1 on the leveling skeleton 1 and the candidate landmark point 2 on the leveling skeleton 2 are obtained. The candidate landmark point 1 and the candidate landmark point 2 are the ground points at both ends of the same channel. punctuation.
  • K-nearest neighbor search is performed first, and the K points with the highest fingerprint similarity are selected, as shown in (1) in Figure 13. Then, the spatial coordinates of these K points can be used to perform meanshift clustering to eliminate the interference of outliers, and obtain points with better spatial distribution consistency, and then use similarity weighting to obtain the cluster center as the final matching point position, as shown in (2) in Figure 13. In this way, the results obtained by matching the fingerprint similarity can meet the neighbor consistency of the spatial distribution.
  • the matching points of each point on the leveling section can be obtained, as shown in (3) in Fig. 13 .
  • the coordinates of the matching points are obtained, and the RANSAC algorithm can be used to calculate the similarity transformation relationship between the coordinates (as shown in formula 4) to convert the leveling segment with registration to the leveling skeleton, that is, convert the coordinates of the landmark point to the leveling skeleton.
  • the coordinate system of the skeleton is shown in (4) in Figure 13.
  • pairs of landmark points that is, landmark points at both ends of the same channel
  • pairs of landmark points on the same moving track can be recorded, so as to obtain the positions of the landmark points at both ends of the same channel on the leveling skeleton, and realize the candidate on the leveling skeleton. Detection of landmark points.
  • the moving trajectory is divided into a leveling segment trajectory and a cross-segment trajectory through S402, and KNN registration is performed according to the leveling segment to obtain the positions of multiple candidate landmark points on each leveling skeleton
  • the multiple The cross-segment trajectories of the moving trajectory are clustered based on the similarity of the fingerprints, and the cross-segment clustering center is obtained. , and the obtained cluster center is used as the location point of the channel.
  • each cross-segment trajectories can be clustered by WiFi similarity to obtain the cross-segment clustering center.
  • Initial classification and then combined with the spatial coordinate information of each category of landmark points to perform meanshift clustering, remove outliers, and obtain an accurate cluster center, which is used as the precise location of the landmark points of the levelable skeleton.
  • FIG. 14 After obtaining multiple candidate landmark points (as shown in (1) in FIG. 14 ) through the registration of the horizontal segment trajectories, according to the position fingerprint data corresponding to the cross-segment trajectories of the multiple moving trajectories, the fingerprint The similarity is clustered, as shown in (2) in Figure 14, and before clustering, it is first distinguished according to the configuration of the channel (such as stairs, escalators, elevators), and then according to the configuration of the channel (such as stairs, escalators, elevators) Elevator) to perform cross-layer WiFi similarity clustering respectively.
  • the category of the initial fingerprint point is obtained.
  • This category distinction can perform initial classification on the candidate landmark points in each leveling skeleton.
  • the initial classification result is shown in (3) in Figure 14.
  • meanshift clustering is performed using the spatial coordinates of the candidate landmark points in the initial classification to remove outliers in the initial classification, as shown in (4) in Figure 14.
  • Accurate cluster centers are obtained through the above-mentioned clustering as the precise positions of landmark points, thereby realizing the optimization of channel positions.
  • the optimized landmark positions are shown in (5) in FIG. 14 .
  • the WiFi similarity of the cross-layer trajectories in the above process can be defined by the intersection of trajectory APs, as shown in the following formula 5:
  • the similarity represents the WiFi similarity
  • S 1 and S 2 represent the set of APs whose Rssi value is greater than -95 in the APs of the two cross-layer trajectories.
  • the server can use the motion data collected by sensors such as accelerometers, gyroscopes, and magnetometers to fuse with the altitude data collected by the barometer to detect landmark points of a channel on a single track. . Then, using the leveling skeleton generated by the aggregation of the leveling segment trajectories of each mobile terminal, the single-track cross-layer KNN is registered to the leveling skeleton, and then the candidate landmark points on the leveling skeleton are located.
  • sensors such as accelerometers, gyroscopes, and magnetometers
  • the fingerprint similarity of the cross-segment trajectories is used to perform the initial classification of the candidate landmark points, and the spatial distribution of the candidate landmark points is used to perform meanshift clustering to eliminate the interference of outliers, so as to accurately locate the landmark points on the leveling skeleton.
  • the positioning accuracy of multiple floors in the subsequent establishment of fingerprint maps especially the positioning accuracy in passages (such as elevators, stairs, escalators, etc.), realize the function of fine positioning between floors, and enhance seamless indoor and outdoor multi-floor
  • the user experience of positioning and supports providing positioning height in indoor positioning to improve the user experience.
  • the 3D topology building module can be used to generate a 3D topology map according to the leveling skeleton of the multi-story building, landmark points of the passage, and the configuration of the passage.
  • FIG. 15 shows a schematic flowchart of a possible implementation logic of the three-dimensional topology building module. The process includes the following stages:
  • the server may sort the leveling frameworks according to the connection relationship of the channels between the leveling frameworks, so that the order of the leveling frameworks conforms to the order of floors in the multi-story building.
  • the floor height corresponding to each leveling skeleton can also be obtained according to the height clustering value of the floor.
  • a pair of landmark points from the same cross-layer movement trajectory (that is, the landmark points at both ends of the same channel) will be registered to the leveling skeleton through the trajectory.
  • the connectivity relationship between many landmark points can be used for clustering, and the upstream and downstream connectivity relationships between the two-level skeletons can be obtained.
  • the movement trajectory is divided according to the landmark points, and each end of the divided two leveling layers will have a landmark point (that is, in the figure start and end points), and obtain candidate landmark points on the leveling skeleton by registering to the leveling skeleton.
  • a landmark point that is, in the figure start and end points
  • candidate landmark points on the leveling skeleton by registering to the leveling skeleton.
  • a directed graph can be constructed by the connection relationship between the two-level skeletons, and the directed graph can be detected by ring detection, and the directed acyclic graph can be segmented.
  • the upper and lower order of each segmented sub-graph is performed to realize the upper and lower order of each leveling skeleton.
  • the height difference represented by a pair of landmark points between the two leveling skeletons can also be used for clustering to obtain the height difference between the two leveling skeletons, and then the floor height of each leveling skeleton relative to the ground can be obtained.
  • R(T 1 , T 2 ) ⁇ d(L 1 , L 2 )
  • a directed graph is constructed, and the directed graph is shown as (1) in FIG. 18 .
  • the directed graph of the leveling skeleton As shown in (2) in Figure 18, after completing the construction of the directed graph of the leveling skeleton, it needs to be segmented according to the uplink and downlink transfer relationship between the leveling skeletons to segment the directed acyclic graph.
  • the ring graph is sorted up and down.
  • the up-down direction of the vast majority of connection pairs can be taken as the up-down direction of the leveling skeleton among all the connection landmarks.
  • the direction is first converted into a consistent direction (both up or down), the directed acyclic graph is segmented using a depth-first search algorithm, starting from a certain node, the set is divided into a searched set and an unsearched set Set, when there is a connection relationship between the current search node and the node other than the direct parent node in the combination of the searched node, disconnect the connection relationship, until there is no connection relationship to continue the search, then save the currently divided subgraph, and continue in the remaining Search in the nodes of , and finally obtain a directed acyclic graph including each leveling skeleton.
  • the upstream and downstream sorting relationships can be sorted out according to the upstream and downstream connection relationships between the leveling skeletons. Specifically, for each directed acyclic graph, first find the node with only out-degree, which is the first layer, and then put it into the sorted set, and then disconnect all nodes in the sorted set and the unsorted set. Connect the relationship, and then use the same method to find the first layer of the remaining set, put the sorted set as the highest layer, and process the method in turn until all the leveling skeletons are sorted, then the upper and lower leveling skeletons of all floors can be completed. Row sorting, a sorting result is shown in (2) in Figure 17.
  • connection relationship between the skeletons of the two levels can be obtained, and the ground pressure value of each pair of connection relationship can be calculated according to the air pressure value of the landmark points with the connection relationship between the two floors.
  • the height difference between the punctuation points, the absolute value of the height difference between the landmark points of the connectivity relationship between the floors is clustered, and the height difference value of the cluster center is selected as the height difference between the two floors. Combined with the upper and lower ordering relationship of floors, the height of each floor relative to the lowest floor can be obtained.
  • the embodiment of the present application utilizes the connection relationship between landmark points to realize the ordering of the leveling skeleton, which can effectively overcome the uncertainty caused by the inaccuracy of the barometer, and realize a more robust floor ordering.
  • the embodiment of the present application calculates the relative height of each leveling frame according to the floor sorting result, and performs high clustering according to a large amount of crowdsourced data, which can effectively eliminate unstable factors such as environment and collection status, and achieve a more reliable floor height. estimate.
  • the server may determine the mapping relationship between the sorted leveling skeletons and the floors in the multi-story building. After the upper and lower relationship of the leveling skeleton is sorted, it is only necessary to identify the leveling skeleton corresponding to the reference floor.
  • the reference floor may be the first floor, and then the leveling skeletons of other floors can be determined.
  • the server determines the number of entrances and exits on each leveling skeleton according to the crowdsourcing data, maps the leveling skeleton with the largest number of entrances and exits to the first floor of the multi-story building, and according to the sorting result of each leveling skeleton, assigns the remaining leveling skeletons.
  • Floor skeletons are mapped to other floors in the multi-story building, enabling identification of absolute floors.
  • the absolute floor recognition first uses the entrance and exit identification results to perform meanshift clustering on the entrances and exits to obtain effective entrance and exit clusters, and identify the reference floor - the first floor according to the number of entrance and exit clusters, and finally use the floor sorting relationship to obtain the absolute floor.
  • the specific process is described as follows:
  • the distribution of entrances and exits on the leveling skeleton can be obtained.
  • the distribution of entrances and exits is relatively discrete, and it only represents the entrances and exits of a single passage, which requires spatial clustering to identify and real buildings.
  • the entrance and exit identification adopts the meanshift clustering method. It is not necessary to set the number of clusters. It only needs to limit the maximum distance of the entrance and exit to obtain the clustering of the entrance and exit. Then, by setting the cluster size threshold, the category of a certain number of clusters can be satisfied. It is determined as a valid entry and exit.
  • the discrete detection points can be further eliminated by clustering, and the accurate cluster center can be obtained as the position of the entrance and exit.
  • the identification of the reference floor uses the number of clusters of entrances and exits as the primary determining factor, and the one with the largest number of clusters is determined as the first floor.
  • the number of clusters is the same, it is further judged according to the orientation of the entrance and exit. Because the actual first floor generally has entrances and exits in all directions, and the entrances and exits will not be concentrated in a certain area, while the second and third floors or underground generally have cost or planning considerations, and the entrances and exits will be concentrated on a certain side, so they can be clustered according to the entrances and exits.
  • the degree of dispersion of the center is further judged, and the position variance of the entrance and exit cluster centers is used to judge, and the one with the largest variance is judged as the first floor.
  • a floor order is “leveling skeleton 3-leveling skeleton 2-leveling skeleton 1”, and the entrance and exit of leveling skeleton 3 are determined through the clustering of entrances and exits
  • the number is 3, and the number of entrances and exits of other leveling skeletons is 0, then it can be determined that leveling skeleton 3 corresponds to the reference floor (1st floor), thus, based on the sorting order, it can be determined that leveling skeleton 2 corresponds to the 2nd floor, and leveling skeleton 1 corresponds to 3rd floor.
  • the identification of the absolute floor may also be implemented in other ways.
  • the floor with the lowest height can be used as the reference floor, and the height of the reference floor is defined as 0m, so that other levels can be known.
  • the absolute height of the layer skeleton. Then divide the height of each leveling frame by the floor spacing value to estimate the absolute floor corresponding to the leveling frame.
  • the floor spacing value can be preset according to the actual building design, for example, the floor spacing value can be set to 3.5m.
  • the height of the leveling frame 2 relative to the ground is about 3.5m, and the height of the leveling frame 3 relative to the ground is about 7.2m, then it can be determined that the leveling frame 2 corresponds to the 2nd floor, and the leveling frame 1 corresponds to the 3rd floor. building.
  • each leveling skeleton belongs to a local two-dimensional rectangular coordinate system, there is no corresponding connection relationship between each leveling skeleton, and it is necessary to restore the connection relationship of each leveling skeleton through cross-level information.
  • the alignment of the leveling skeleton is to reconstruct the connection relationship between the leveling skeletons through the self-learned landmark positions and spatial configurations of the channels in the leveling skeleton, and unify the multi-level leveling skeletons into the same coordinate system. , in order to achieve seamless indoor positioning on multiple floors. That is, in the embodiment of the present application, the server may align the sorted leveling skeletons in the three-dimensional coordinate space according to the landmark points of the channel and the configuration of the channel to obtain the three-dimensional topological map.
  • floor alignment is a necessary step to construct a multi-floor 3D topology map. It mainly uses the configuration and connection relationship of elevators, stairs, escalators and other passages between floors to convert the coordinate systems of different leveling skeletons into a unified coordinate space.
  • the directly connected channels correspond to the same coordinate point on the X and Y planes, so that the leveling skeletons reconstructed from different floors can be aligned into the same three-dimensional coordinate space, and the same coordinate system mapping of the multi-floor fingerprint map can be realized.
  • give the floor height so as to realize the construction of 3D topology map.
  • the 3D topology map established in this way can realize seamless positioning when moving across floors and fine positioning on passages between floors, which greatly improves the user experience.
  • the alignment process is described in detail below:
  • the configuration of the channel can be a direct connection type and an oblique connection type; the configuration of the channel includes a direct connection type or an oblique connection type; the direct connection type means that the position points at both ends of the channel are in the vertical direction Collinear, the oblique connection type means that the position points at both ends of the channel are not collinear in the vertical direction.
  • a direct-connection type of passage is, for example, an elevator, a ladder, or some kind of staircase that folds in the middle, and an inclined type of passage is, for example, a sloped staircase, an escalator, a ramp, and the like.
  • Figure 21 shows five common configurations of stairs and escalators in the real world. in:
  • the stairs in (1) in Figure 21 are of the direct connection type, and the stair landmarks detected by cross-floor detection will be vertically aligned on different floors; in (2) in Figure 21, the even-numbered interval floors (1 -The stairs between floors 2, 1-4) are inclined connection types with horizontal offsets, while the stairs between floors with odd intervals (floors 1-3, 2-4, 1-5) can be regarded as Direct connection type; the escalator in (3) in Figure 21 is an inclined connection type, and the distance of this inclined connection can be estimated by sensors; in Figures (4) and (5) in Figure 21, 1-2
  • the escalators on the 2nd and 3rd floors are of the oblique connection type, but it should be noted that there may be implicit direct connections between the escalator landmarks on the other floors.
  • the so-called implicit direct connection refers to the landmarks without connection relationship. There may also be vertical alignment relationships between. For example, in (5) in Figure 21, although there is no channel connection between the landmark point on the 1st floor and the landmark point on the 3rd floor, there may also be an implicit direct connection between these two landmark points. Also assists in the alignment of the flat skeleton in this application.
  • the landmark points that can be used for cross-floor alignment can be divided into the following four categories: (1) For straight elevators and stairs, they can be directly used for straight alignment; (2) For diagonally connected stairs , the hypotenuse distance can be estimated by PDR, the horizontal offset can be calculated by using the floor height, and the horizontal offset can be optimized and corrected; (3) For the implicit directly connected landmarks, including the escalator landmarks, the ICP algorithm can be used to align the implicit The relationship can be used to achieve further alignment correction; in addition, for the escalator with simple inclined span, it is difficult to use it for floor alignment, but the speed of the escalator can be estimated by the detected starting and ending heights and time intervals for fine inter-floor positioning .
  • the coordinate system transformation matrix can be calculated by using the elevator landmark points. Due to the error uncertainty of the PDR step size estimation, there may be uneven scales between different leveling skeletons, so the similarity transformation can be used to calculate the transformation matrix.
  • the calculation of similarity transformation requires at least two pairs of corresponding points, so at least two pairs of elevator landmark points that are far enough apart are required when calculating the preliminary transformation matrix.
  • landmark points from two different elevator clusters are selected for calculation. When multiple elevator clusters or landmark points in multiple clusters exist, RANSAC is used for robust parameter estimation.
  • St is the calculated similarity transformation matrix
  • L i and L j are the landmark points of a pair of connection relationships.
  • the stairs with the back-projection error less than a certain threshold can be selected as the stairs of the direct connection type, otherwise the stairs of the inclined connection type can be selected.
  • connection relationship is basically the oblique connection type
  • subsequent weighted ICP correction process there is basically no need to know the corresponding relationship between the escalator landmarks, so there is no need to distinguish the type for the escalator.
  • the correction process can be applied directly.
  • a possible alignment strategy is: firstly initialize the first floor into the aligned floor set, then select the unaligned connected floor in the unaligned floor set that has the most direct connection with each floor in the aligned floor set for processing, and initialize it first Directly connect and align, then optimize the horizontal distance estimation, use weighted ICP fine alignment, and add the current processing floor to the set of lower aligned floors, and so on until all floors are aligned.
  • the related description is further expanded below.
  • the two leveling frameworks can be aligned by aligning the position points at both ends of the channel in the vertical direction.
  • the identified elevators and stairs of the direct connection type can be used to calculate the similarity transformation between the points with the same name by using the RANSAC algorithm, and then the skeleton coordinates to be aligned are transformed into the aligned leveling skeleton coordinate system using the similarity transformation.
  • the similarity transformation matrix since the calculation of the similarity transformation matrix requires at least two connected point pairs, and the distance between the two pairs of points is far enough, if the similarity transformation matrix is too close, the error of the fitted similarity transformation matrix will be large.
  • the alignment of the two leveling frameworks is further optimized according to the horizontal offset between the position points at both ends of the channel. That is to say, after the straight-connected alignment is performed, the alignment result can be further corrected according to the identified inclined-connected stairs.
  • the PDR distance between the connected landmark points is used as the hypotenuse distance, and the estimated height of the connected floor is used as a right-angle side, so that the distance between the diagonally connected landmark points can be estimated.
  • further direct-connected alignment calculations are performed to obtain further corrected alignments. result. Since the landmark point L2 is directly projected onto the floor F1 according to the calculated similarity transformation, there will be projection points This projection point will also have an offset between the landmark point L 1 on F1 to which it is connected. If the calculated similarity transformation matrix has good accuracy, the two offset values will be equal, so it is possible to pass these two The difference between the offset values can determine the quality of the similar transformation matrix fit.
  • This step is optional. After using the direct-connected elevators, stairs and inclined-connected stairs, there are still a large number of implicit direct-connected landmarks that are not used, that is, the stairs, elevators and escalators that have no connection relationship but are actually directly connected. To use this part of the implicit direct connection relationship, the ICP algorithm can be used for iterative optimization. After several iterations of optimization, the global direct connection alignment result will be output.
  • the directly connected elevator and stair landmark point pairs are repeatedly injected to increase the proportion of directly connected landmark points; each time the nearest neighbor point is selected, it is preferred to form a team of points with a connected relationship in the K adjacent points. If not, select the nearest neighbor point; use all directly connected elevator stairs for distance error evaluation, and select only the minimum error of other cross-floor points that account for one-third of the number of directly connected stairs and elevators for calculation.
  • the landmark point of the channel belongs to a direct connection type (such as a direct connection staircase and a direct connection elevator), an oblique connection type (such as an inclined connection staircase) or an implicit direct connection type.
  • a direct connection type such as a direct connection staircase and a direct connection elevator
  • an oblique connection type such as an inclined connection staircase
  • connection type such as escalator
  • the direct connection type channel can be preferentially used for the initial direct connection alignment of the leveling frame; then, the horizontal offset is calculated using the PDR track distance and floor height difference in the inclined connection type channel, so that Compensate the horizontal offset of the leveling skeleton to further optimize the calculation of the alignment relationship; finally, use all landmark points to perform ICP fine alignment, assign higher weights to directly connected elevators and stairs, and use the escalator with implicit direct relationship to further accurate Align floors to get a 3D topology map.
  • the fine alignment of floors can be realized without resorting to indoor floor plans or manual editing, which is conducive to the realization of automatic multi-floor fingerprint map construction and improves the efficiency and accuracy of map construction. , and the construction process of the 3D topological map does not need to rely on the existing indoor flat map.
  • the 3D topology building module can be used to map the 3D topology map to the world coordinate system to obtain a fingerprint map of a multi-story building.
  • the functional realization of the 3D topology building module can include two aspects:
  • the mobile terminal that can be included in the crowdsourcing data is based on the information obtained by the satellite navigation module.
  • Occasional GPS information in the environment Opportunistic GPS for short.
  • the server obtains the GPS of the entrance or the indoor opportunity GPS by identifying the position of the entrance and exit of the reference floor.
  • the 3D topology map can be mapped to the world coordinate system, such as the WGS84 coordinate system, by using the entrance and exit GPS or indoor opportunistic GPS, so as to realize the absolute coordinate mapping of the whole floor, that is, to obtain the fingerprint map of the multi-story building in the world coordinate system.
  • the embodiment of the present application also supports using pre-obtained indoor map, vector map, grid map, or control point information to map with the 3D topology map, so that the 3D topology map can be mapped with the 3D topology map.
  • the actual indoor floor map of the multi-story building is associated, thereby obtaining a fingerprint map corresponding to the actual map of the multi-story building.
  • a fingerprint map of a multi-storey building under the WGS84 coordinate system can be obtained without (or only based on part of) an indoor floor plan, thereby realizing the map coordinate mapping of all floors.
  • the fine connection relationship between floors can be reconstructed, so as to achieve refined and seamless switching of intra-floor positioning and intra-channel positioning.
  • the present application is compatible with two ways of realizing the absolute coordinate mapping of the 3D topology map without a map source and with a map source, so as to realize the seamless indoor and outdoor positioning effect of multi-floor and full-scene.
  • the present application replaces manual data collection and manual annotation by collecting crowdsourced data on various users' mobile terminals, and realizes the construction of 3D topological maps without map dependence, without deploying special data collection devices indoors. , greatly reducing the cost of labor and material resources.
  • the embodiment of the present application identifies landmark points on the trajectory of the mobile terminal by fusing data from multiple sensors, is compatible with scenarios with and without a barometer, and uses the KNN registration algorithm to self-learn candidates on the leveling skeleton.
  • Landmark points combined with the fingerprint space characteristics of the cross-layer trajectories on the channel and the Euclidean spatial distribution of the landmark points, can accurately locate the landmark points on the flat-layer skeleton, thereby avoiding the influence of the diversity of crowdsourcing data and the quality of crowdsourcing data collection. .
  • the application makes full use of the characteristics of the landmark points of the passage, automatically sorts and aligns multiple leveling skeletons, and identifies absolute floors.
  • the whole process does not require manual editing and labeling, and has no map dependence.
  • the entire process can be automated and highly efficient.
  • the fingerprint map of the multi-storey building can be outputted in place, which improves the efficiency and accuracy of the fingerprint map generation.
  • the multi-floor fingerprint map constructed based on this patent has an average floor alignment accuracy of 2-3.5m. Therefore, the fingerprint map based on this application can achieve high-precision positioning in actual indoor positioning. Since the generated multi-floor fingerprint map is represented in the same coordinate space, the positioning between different floors can be completed without switching. Combined with the map mapping module, it can realize the seamless positioning experience of indoor and outdoor multi-floor full-scene.
  • the existing methods mainly rely on indoor maps to achieve absolute coordinate mapping, and many multi-story buildings currently do not provide indoor maps, resulting in the failure of map construction.
  • the embodiment of the present application proposes a method based on entry-exit GPS and opportunistic DPS mapping to realize the mapping of fingerprint map to absolute coordinates. This method does not need to rely on indoor maps, has strong universality, and is effective when there is an indoor map or no indoor map.
  • each functional module in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
  • the functions, if implemented in the form of software functional units and sold or used as independent products, may be stored in a computer-readable storage medium.
  • the technical solution of the present application can be embodied in the form of a software product in essence, or the part that contributes to the prior art or the part of the technical solution.
  • the computer software product is stored in a storage medium, including Several instructions are used to cause a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), magnetic disk or optical disk and other media that can store program codes .

Abstract

Provided in embodiments of the present invention are a method for constructing a fingerprint map of a multi-floor building and an apparatus. The method is applied to a server, and comprises: receiving crowdsourced data from multiple mobile terminals, the crowdsourced data comprising motion data and location fingerprint data acquired when the mobile terminals move between floors in a multi-floor building; determining, according to the crowdsourced data, floor structures of at least two floors in the multi-floor building, locations of passages connecting the respective floor structures on the floor structures, and structures of the passages; and generating a fingerprint map of the multi-floor building according to the floor structures of the at least two floors, the locations of the passages, and the structures of the passages. By means of the embodiments of the present invention, a fingerprint map of a multi-floor building can be automatically generated, thereby eliminating the need for manual editing, and reducing required human and material resources and costs.

Description

多楼层建筑的指纹地图的构建方法、定位方法及装置Construction method, positioning method and device of fingerprint map of multi-story building
本申请要求于2020年08月31日提交中国专利局,申请号为202010899650.X,申请名称“多楼层建筑的指纹地图的构建方法、定位方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of the Chinese patent application filed on August 31, 2020 with the application number 202010899650.X and the application title "Construction method, positioning method and device for fingerprint map of multi-story buildings", all of which The contents are incorporated herein by reference.
技术领域technical field
本申请涉及室内定位技术领域,尤其涉及多楼层建筑的指纹地图的构建方法、定位方法及装置。The present application relates to the technical field of indoor positioning, and in particular, to a method for constructing a fingerprint map of a multi-storey building, a positioning method and a device.
背景技术Background technique
随着智能手机和移动互联网的快速发展,基于位置的服务吸引了越来越多的关注。实时定位已经成为交通、商业、物流、个性服务等多个高层次应用的基本技术。在室外的情况下,全球导航卫星系统提供了一个很好的定位服务,如全球定位系统(GPS)。然而,在室内环境中,由于信号衰落和多径效应,全球卫星定位系统无法达到合适的精度。因此,室内定位技术已经成为近年来的一个热门话题。据相关统计,人们涉及的移动通信服务、商业交易及公共娱乐80%发生在室内,其中80%的信息获取与时间和位置有关,随着智能终端及5G网络通信的大规模普及,面向室内场景如商场、办公园区、机场车站、地下车库,医院等环境下的位置服务及应用需求愈加迫切,如室内地图导航,商铺级广告推送及增值服务,火灾救援等。在大数据、万物智能化及政策支持等综合因素推动下,全球室内定位的市场规模将达到数百亿美元级别,因此室内定位具有很高的市场潜力和市场前景。With the rapid development of smartphones and mobile Internet, location-based services have attracted more and more attention. Real-time positioning has become a basic technology for many high-level applications such as transportation, commerce, logistics, and personalized services. In outdoor situations, GNSS provides a good positioning service such as Global Positioning System (GPS). However, in indoor environments, GPS cannot achieve suitable accuracy due to signal fading and multipath effects. Therefore, indoor positioning technology has become a hot topic in recent years. According to relevant statistics, 80% of people's mobile communication services, business transactions and public entertainment take place indoors, and 80% of information acquisition is related to time and location. With the large-scale popularization of intelligent terminals and 5G network communications, indoor scenarios Such as shopping malls, office parks, airport stations, underground garages, hospitals and other environments, the demand for location services and applications is becoming more and more urgent, such as indoor map navigation, store-level advertising push and value-added services, fire rescue, etc. Driven by comprehensive factors such as big data, intelligence of everything and policy support, the global indoor positioning market will reach tens of billions of dollars, so indoor positioning has high market potential and market prospects.
WiFi位置指纹法是一种常用的室内定位方法,这种方法可以利用现有的无线局域网基础设施,且通过移动终端(例如智能手机)即可实现定位,无需用户增加额外设备,因此其应用最为广泛。现有的WiFi位置指纹法包括离线指纹采集及在线定位两阶段。离线指纹采集的目的在于构建室内区域的WiFi位置指纹数据库,以形成WiFi指纹地图;在线定位阶段,根据当前WiFi信号强度(Received Signal Strength,RSS)信息,利用定位算法将其与WiFi位置指纹数据库中的WiFi指纹地图进行匹配比较,从而估计用户的位置。WiFi location fingerprinting method is a commonly used indoor positioning method. This method can utilize the existing wireless local area network infrastructure, and can achieve positioning through mobile terminals (such as smart phones), without the need for users to add additional equipment, so its application is the most widely. The existing WiFi location fingerprinting method includes two stages: offline fingerprint collection and online positioning. The purpose of offline fingerprint collection is to build a WiFi location fingerprint database in the indoor area to form a WiFi fingerprint map; in the online positioning stage, according to the current WiFi signal strength (Received Signal Strength, RSS) information, the positioning algorithm is used to match it with the WiFi location fingerprint database. The WiFi fingerprint map is matched and compared to estimate the user's location.
现在对多楼层建筑(例如多楼层的商场、办公楼等)的室内定位需要日益增加,现有的方案实现多楼层的室内定位通常要依赖各楼层的地图,并通过人工方式编辑不同楼层地图与WiFi指纹地图之间的对应关系,工作效率低,且无法实现楼层间的定位。Nowadays, the need for indoor positioning of multi-storey buildings (such as multi-storey shopping malls, office buildings, etc.) is increasing day by day. The existing solutions to achieve multi-floor indoor positioning usually rely on the maps of each floor, and manually edit different floor maps and The corresponding relationship between WiFi fingerprint maps has low work efficiency and cannot realize the positioning between floors.
发明内容SUMMARY OF THE INVENTION
本申请提供了多楼层建筑的指纹地图的构建方法、定位方法及装置,能够实现多楼层建筑的指纹地图的自动生成,避免人工编辑的介入节约人力物力成本。The present application provides a method for constructing a fingerprint map of a multi-story building, a positioning method and a device, which can realize the automatic generation of the fingerprint map of the multi-story building, avoid the intervention of manual editing, and save the cost of manpower and material resources.
第一方面,本申请实施例提供了一种多楼层建筑的指纹地图的构建方法,方法应用于服务器,包括:接收来自多个移动终端的众包数据,所述众包数据包括所述移动终端在多楼层建筑中跨楼层移动过程采集的运动数据和位置指纹数据;根据所述众包数据,确定所述多楼层建筑中的至少两个楼层的平层骨架、连接于各平层骨架之间的通道在所述平层骨架上的位置 点、以及所述通道的构型;根据所述至少两个楼层的平层骨架、所述通道的位置点和所述通道的构型,生成所述多楼层建筑的指纹地图。In a first aspect, an embodiment of the present application provides a method for constructing a fingerprint map of a multi-story building. The method is applied to a server and includes: receiving crowdsourced data from multiple mobile terminals, where the crowdsourced data includes the mobile terminal Motion data and position fingerprint data collected in the process of moving across floors in a multi-story building; according to the crowdsourcing data, determine the leveling skeletons of at least two floors in the multi-story building, and connect between the leveling skeletons The position point of the channel on the leveling frame and the configuration of the channel; according to the leveling frame of the at least two floors, the position point of the channel and the configuration of the channel, generate the Fingerprint maps of multi-story buildings.
其中,通道是用于联系多楼层建筑物不同楼层的通行设施,通道连接在不同楼层之间,人员和货物可以通过通道在不同楼层之间转移。通道的构型有多种,例如楼梯、电梯、自动扶梯、爬梯、台阶、坡道,通道的位置点是指通道和平层骨架的连接位置,也就是通道两端的端点,可理解的,每个通道都具有成对的位置点。Among them, the passage is a passage facility used to connect different floors of a multi-storey building, the passage is connected between different floors, and people and goods can be transferred between different floors through the passage. There are many configurations of passages, such as stairs, elevators, escalators, ladders, steps, and ramps. The location point of the passage refers to the connection position of the passage and the level skeleton, that is, the endpoints at both ends of the passage. It is understandable that each Channels all have pairs of location points.
可以看到,本申请实施例通过多个移动终端和服务器的交互,利用通道在平层骨架上的地标点位置(如通道两端的端点及成对地标点的上下行连接关系)、通道构型,自动化创建多楼层的3D拓扑地图,整套流程无需人工编辑和标注、无地图依赖,能够全流程自动化、高效率地输出多楼层建筑的指纹地图,提升了指纹地图生成的效率和准确性,解决现有技术中地图构建依赖人工编辑的问题,节约人力物力成本。It can be seen that in the embodiment of the present application, through the interaction of multiple mobile terminals and servers, the locations of landmark points of the channel on the leveling skeleton (such as the endpoints at both ends of the channel and the uplink and downlink connections of pairs of landmark points), the channel configuration , automatic creation of multi-floor 3D topology map, the whole process does not need manual editing and annotation, no map dependence, can automatically and efficiently output the fingerprint map of multi-floor buildings in the whole process, improve the efficiency and accuracy of fingerprint map generation, solve the problem The problem of relying on manual editing for map construction in the prior art saves manpower and material costs.
众包数据是在用户无感知的情况下,移动终端通过传感器、射频信号或网络定位等方式获得的数据,本申请实施例中,众包数据包括所述移动终端在多楼层建筑中跨楼层移动过程采集的运动数据和位置指纹数据,所述运动数据具体为通过至少一个传感器采集的数据,所述至少一个传感器包括加速度计、陀螺仪、磁力计、惯性测量单元中的至少一者;所述位置指纹数据包括无线访问接入点的数量和信号强度。The crowdsourced data is the data obtained by the mobile terminal through sensors, radio frequency signals, or network positioning without the user's perception. In the embodiment of this application, the crowdsourced data includes the mobile terminal moving across floors in a multi-story building. motion data and position fingerprint data collected during the process, the motion data is specifically data collected by at least one sensor, and the at least one sensor includes at least one of an accelerometer, a gyroscope, a magnetometer, and an inertial measurement unit; the Location fingerprint data includes the number and signal strength of wireless access points.
在一现有技术方案中,离线采集阶段需要大量的采集点样本,数据采集的工作量较大,特别是对于大范围的室内区域,需要部署特定的基础设施并基于人工离线采集,消耗巨大的人力、物力成本,严重的限制了WiFi位置指纹法的大规模普及和应用。In an existing technical solution, a large number of collection point samples are required in the offline collection stage, and the workload of data collection is relatively large, especially for a large-scale indoor area, it is necessary to deploy specific infrastructure and perform manual offline collection, which consumes huge amounts of data. The cost of manpower and material resources seriously limits the large-scale popularization and application of WiFi location fingerprinting.
而本申请实施例中,服务器可充分利用各种各样的移动终端采集的众包数据构建多楼层建筑的指纹地图,替代了人工数据的采集和人工标注,且能无地图依赖地实现3D拓扑地图的构建,无需在室内部署专门的数据采集装置,大大降低了人工物力成本。In the embodiment of the present application, the server can make full use of crowdsourced data collected by various mobile terminals to construct a fingerprint map of a multi-story building, which replaces manual data collection and manual annotation, and can realize 3D topology without map dependence. The construction of the map does not require the deployment of special data acquisition devices indoors, which greatly reduces the cost of labor and material resources.
基于第一方面,在可能的实施例中,通道的构型包括直连类型或斜连类型;所述直连类型是指所述通道两端的位置点在垂直方向上共线,所述斜连类型是指通道两端的位置点在垂直方向上不共线Based on the first aspect, in a possible embodiment, the configuration of the channel includes a direct connection type or an oblique connection type; the direct connection type means that the position points at both ends of the channel are collinear in the vertical direction, and the diagonal connection type Type means that the location points at both ends of the channel are not collinear in the vertical direction
基于第一方面,在可能的实施例中,所述根据所述平层骨架、所述通道的位置点和所述通道的构型,生成三维拓扑地图,包括:根据各个平层骨架之间的通道的连接关系,对所述各个平层骨架进行排序,以使所述各个平层骨架的顺序符合所述多楼层建筑中楼层的上下关系;根据所述通道的位置点和所述通道的构型,将经所述排序后的各个平层骨架在三维坐标空间进行对齐,以获得所述指纹地图。Based on the first aspect, in a possible embodiment, the generating a three-dimensional topological map according to the leveling skeleton, the location points of the channel and the configuration of the channel includes: according to the relationship between the leveling skeletons The connection relationship of the passages is to sort the respective leveling skeletons so that the order of the respective leveling skeletons conforms to the upper and lower relationship of the floors in the multi-storey building; according to the location points of the passages and the structure of the passages type, and aligning the sorted flat skeletons in the three-dimensional coordinate space to obtain the fingerprint map.
可以看到,本申请充分利用通道地标点的特性,对多个平层骨架自动进行排序、对齐,整套流程无需人工编辑和标注、无地图依赖,能够全流程自动化、高效率地输出多楼层建筑的指纹地图,提升了指纹地图生成的效率和准确性。It can be seen that this application makes full use of the characteristics of the landmark points of the passage, and automatically sorts and aligns multiple leveling skeletons. The whole process does not require manual editing and labeling, and has no map dependence. The entire process can be automated and efficiently output multi-story buildings. It improves the efficiency and accuracy of fingerprint map generation.
基于第一方面,在可能的实施例中,所述根据所述通道的位置点和所述通道的构型,将经所述排序后的各个平层骨架在三维坐标空间进行对齐之前,还包括:确定所述排序后的各个平层骨架与所述多楼层建筑中楼层的映射关系。Based on the first aspect, in a possible embodiment, before aligning the sorted leveling skeletons in the three-dimensional coordinate space according to the location points of the channel and the configuration of the channel, the method further includes: : Determine the mapping relationship between the sorted leveling skeletons and the floors in the multi-storey building.
可以看到,本申请方案除了对多个平层骨架自动进行排序、对齐外,并还可以识别平层骨架对应的绝对楼层,有助于实现自动化、高效率地输出多楼层建筑的指纹地图,从而实现在建筑的室内定位中精确定位到绝对楼层,提升了指纹地图生成的效率和定位准确性。It can be seen that, in addition to automatically sorting and aligning multiple leveling skeletons, the solution of the present application can also identify the absolute floors corresponding to the leveling skeletons, which is helpful for automatically and efficiently outputting fingerprint maps of multi-story buildings. In this way, the indoor positioning of the building can be accurately positioned to the absolute floor, which improves the efficiency of fingerprint map generation and the positioning accuracy.
基于第一方面,在可能的实施例中,根据所述各个平层骨架之间的通道的连接关系,对所述各个平层骨架进行排序,包括:根据所述各个平层骨架之间的通道的连接关系,构建所 述各个平层骨架的有向无环图;根据所述有向无环图对所述各个平层骨架进行排序。Based on the first aspect, in a possible embodiment, sorting the leveling skeletons according to the connection relationship of the channels between the leveling skeletons includes: according to the channels between the leveling skeletons to construct a directed acyclic graph of the respective leveling skeletons; the respective leveling skeletons are sorted according to the directed acyclic graph.
比如,在定义平层骨架上下行关系时,可以在所有连接地标点中,取绝大多数连接对的上下行方向作为平层骨架上下行方向。将方向转换为一致的方向(均为上行或者均为下行方向),有向无环图分割采用深度优先搜索算法,从某一节点开始,将集合分为已搜索集合和未搜索集合,当前搜索节点与已搜索节点结合中直接父节点之外的节点存在连接关系时,断开该连接关系,直至没有连接关系可以继续搜索,则保存当前分割出的子图,继续在剩下的节点中进行搜索,最终获得包括各个平层骨架的有向无环图,完成有向无环图分割之后,按照平层骨架之间的上下行连接关系即可梳理出上下行排序关系。通过构建有向无环图有利于实现快速、准确的平层骨架排序,有助于保证指纹地图的高效率生成。For example, when defining the up-down relationship of the leveling skeleton, the up-down direction of the vast majority of connection pairs can be taken as the up-down direction of the leveling skeleton among all the connection landmarks. Convert the direction to a consistent direction (both up or down), the directed acyclic graph segmentation adopts a depth-first search algorithm, starting from a certain node, the set is divided into a searched set and an unsearched set, the current search When there is a connection relationship between the node and the node other than the direct parent node in the combination of the searched node, the connection relationship is disconnected, and the search can continue until there is no connection relationship. After searching, a directed acyclic graph including each leveling skeleton is finally obtained. After the directed acyclic graph segmentation is completed, the ascending and descending ordering relationship can be sorted out according to the connection relationship between the leveling skeletons. By constructing a directed acyclic graph, it is beneficial to realize fast and accurate leveling skeleton sorting, which helps to ensure the efficient generation of fingerprint maps.
基于第一方面,在可能的实施例中,所述确定所述排序后的各个平层骨架与所述多楼层建筑中楼层的映射关系,包括:根据所述众包数据,确定各个所述平层骨架对应的楼层的出入口数量;所述出入口数量最多的平层骨架对应所述多楼层建筑的一楼;根据各个所述平层骨架的排序结果,确定剩余的平层骨架分别对应的楼层。Based on the first aspect, in a possible embodiment, the determining the mapping relationship between the sorted leveling skeletons and the floors in the multi-story building includes: determining each of the levelings according to the crowdsourcing data. The number of entrances and exits of the floor corresponding to the floor frame; the floor frame with the largest number of entrances and exits corresponds to the first floor of the multi-storey building; according to the sorting result of each floor frame, the floors corresponding to the remaining floor frames are determined.
通常来说,大部分建筑物为了通行、运输、消防等的便利,会在一楼设置最多的出入口,利用检测出的有效出入口个数,选择出入口最多的那一层作为一楼,根据楼层排序关系即可获得与真实物理建筑对应的楼层。因此绝对楼层识别首先利用出入口识别结果,对出入口进行meanshiff聚类,获得有效的出入口聚类,根据出入口聚类个数识别出基准楼层——一楼,最后利用楼层排序关系即可获得绝对楼层。Generally speaking, most buildings will set the most entrances and exits on the first floor for the convenience of passage, transportation, fire protection, etc., and use the detected number of valid entrances and exits to select the floor with the most entrances and exits as the first floor, and sort according to the floor. relationship to get the floor corresponding to the real physical building. Therefore, the absolute floor recognition first uses the entrance and exit identification results to perform meanshiff clustering on the entrance and exit to obtain an effective entrance and exit clustering. According to the number of entrance and exit clusters, identify the reference floor - the first floor, and finally use the floor sorting relationship to obtain the absolute floor.
基于第一方面,在可能的实施例中,所述根据所述通道的位置点和所述通道的构型,将经所述排序后的各个平层骨架在三维坐标空间进行对齐,包括:当两个平层骨架之间具有直连类型的通道时,通过在垂直方向对齐所述通道两端的位置点来使所述两个平层骨架对齐;当两个平层骨架之间具有斜连类型的通道时,根据所述通道两端的位置点之间的水平偏移量来对齐所述两个平层骨架。Based on the first aspect, in a possible embodiment, according to the position point of the channel and the configuration of the channel, aligning the sorted leveling skeletons in the three-dimensional coordinate space includes: when When there is a direct connection type channel between two leveling skeletons, the two leveling skeletons are aligned by aligning the position points at both ends of the channel in the vertical direction; when there is an oblique connection type between the two leveling skeletons When the channel is set, the two leveling skeletons are aligned according to the horizontal offset between the position points at both ends of the channel.
例如,对于直连通道,例如直连类型的电梯、楼梯,可采用RANSAC算法计算同名点之间的相似变换,然后将待对齐骨架坐标利用相似变换转换到已对齐平层骨架坐标系。For example, for directly connected passages, such as elevators and stairs of the direct connection type, the RANSAC algorithm can be used to calculate the similarity transformation between points with the same name, and then the skeleton coordinates to be aligned are transformed to the aligned leveling skeleton coordinate system using the similarity transformation.
在进行直连对齐之后,可以根据识别出的斜连楼梯进一步矫正对齐结果。以一种倾斜楼梯为例,首先,利用相连的地标点之间的PDR距离作为斜边距离,估计出的相连楼层高度作为一条直角边,这样可以估计出斜连地标点之间的水平偏移,通过将计算出的水平偏移补偿给斜连地标点,通过补偿后的斜连地标点纳入直连对齐楼梯、电梯之中,进行进一步直连对齐计算,获得进一步纠正的对齐结果。After the straight alignment is performed, the alignment results can be further corrected based on the identified inclined stairs. Taking an inclined staircase as an example, first, the PDR distance between the connected landmark points is used as the hypotenuse distance, and the estimated height of the connected floor is used as a right-angle side, so that the horizontal offset between the diagonally connected landmark points can be estimated. , by compensating the calculated horizontal offset to the obliquely connected landmarks, and incorporating the compensated obliquely connected landmarks into the directly-aligned stairs and elevators for further direct-alignment calculations to obtain further corrected alignment results.
另外,可选的,在完成直连对齐和斜连对齐后,还可利用所有地标点进行ICP精对齐,赋予直连电梯和楼梯较高的权值,利用隐含直连关系的扶梯进一步精确对齐楼层,获得3D拓扑地图。In addition, optionally, after the direct connection alignment and oblique connection alignment are completed, all landmark points can be used for ICP fine alignment, giving higher weights to the directly connected elevators and stairs, and using the escalators with implicit direct connection relationships for further precision Align floors to get a 3D topology map.
可以看到,本申请实施例首先根据检测通道的构型,判定通道的地标点是属于直连类型(例如直连楼梯和直连电梯)、斜连类型(例如斜连楼梯)还是隐含直连类型(例如扶梯);然后,可优先利用直连类型的通道进行平层骨架的初始直连对齐;然后,利用斜连类型通道中的PDR轨迹距离和楼层高度差计算水平偏移量,从而对平层骨架的水平偏移进行补偿,进一步优化计算对齐关系;最后可选的,还可以利用所有地标点的隐含直连关系进行ICP精对齐。通过上述过程可获得3D拓扑地图。这样,通过分阶段采用由粗到精的楼层坐标系对齐策略,实现楼层的精细化对齐,无需借助室内平面图或者人工编辑,有利于实现自动化的多楼层指纹地图构建,提升了地图构建的效率和准确性,且3D拓扑地图的构建过程不需要依 赖于现有的室内平面地图。It can be seen that, in the embodiment of the present application, firstly, according to the configuration of the detection channel, it is determined whether the landmark point of the channel belongs to a direct connection type (such as a direct connection staircase and a direct connection elevator), an oblique connection type (such as an inclined connection staircase) or an implicit direct connection type. connection type (such as escalator); then, the direct connection type channel can be preferentially used for the initial direct connection alignment of the leveling frame; then, the horizontal offset is calculated using the PDR track distance and floor height difference in the inclined connection type channel, so that Compensate the horizontal offset of the leveling skeleton to further optimize the calculation of the alignment relationship; finally, optionally, the implicit direct connection relationship of all landmark points can be used to perform ICP fine alignment. A 3D topology map can be obtained through the above process. In this way, by adopting the coarse-to-fine floor coordinate system alignment strategy in stages, the fine alignment of floors can be achieved without resorting to indoor floor plans or manual editing, which is conducive to the realization of automatic multi-floor fingerprint map construction, and improves the efficiency of map construction. Accuracy, and the construction process of the 3D topological map does not need to rely on the existing indoor floor plan.
基于第一方面,在可能的实施例中,所述根据众包数据确定所述多楼层建筑中的至少两个楼层的平层骨架的过程包括:根据所述运动数据,获得所述多个移动终端在所述至少两个楼层中的移动轨迹;将所述多个移动终端的移动轨迹进行聚合,以获得所述至少两个楼层的平层骨架;其中,所述平层骨架与所述位置指纹数据关联。Based on the first aspect, in a possible embodiment, the process of determining the leveling skeletons of at least two floors in the multi-story building according to crowdsourcing data includes: obtaining the plurality of movements according to the motion data the movement trajectories of the terminal in the at least two floors; the movement trajectories of the multiple mobile terminals are aggregated to obtain the leveling framework of the at least two floors; wherein, the leveling framework and the position Fingerprint data association.
可以看到,本申请实施例可基于种子轨迹(单移动轨迹)分布式并行化地生长平层骨架,实现全流程的自动化和高质量化的平层骨架生长,极大地提升了指纹地图构建的效率和精度。It can be seen that the embodiment of the present application can grow the leveling skeleton in a distributed and parallel manner based on the seed track (single movement track), realize the automation of the whole process and the high-quality leveling skeleton growth, and greatly improve the fingerprint map construction. Efficiency and Precision.
基于第一方面,在可能的实施例中,所述根据所述众包数据确定连接于各平层骨架之间的通道的所述位置点的过程包括:根据所述运动数据,获得所述多个移动终端在所述至少两个楼层中的移动轨迹;识别在各个所述移动轨迹上分布的属于所述通道的位置点;将各个所述移动轨迹和所述至少两个楼层的平层骨架进行匹配,以获得所述通道在所述平层骨架上的位置点。Based on the first aspect, in a possible embodiment, the process of determining, according to the crowdsourced data, the location points of the channels connected between the leveling skeletons includes: obtaining the multiple The movement trajectories of the mobile terminals in the at least two floors; identifying the position points belonging to the passage distributed on each of the movement trajectories; combining each of the movement trajectories with the leveling skeleton of the at least two floors Matching is performed to obtain the location point of the channel on the flat skeleton.
具体的,所述将各个所述移动轨迹和所述至少两个楼层的平层骨架进行匹配,以获得所述通道的所述位置点,包括:基于所述移动轨迹上的位置点分布,将所述移动轨迹切分为平层段轨迹和跨层段轨迹;根据所述平层段轨迹和所述平层骨架,获得所述通道在所述平层骨架上的多个候选位置点;根据所述多个候选位置点,获得所述通道的所述位置点。例如,通过K近邻算法将所述平层段轨迹和所述平层骨架进行匹配,以获得所述通道在所述平层骨架上的多个候选位置点。Specifically, the matching each of the movement trajectories with the leveling skeletons of the at least two floors to obtain the position points of the passage includes: based on the position point distribution on the movement trajectories, The moving track is divided into a leveling segment track and a cross-layer segment track; according to the leveling segment track and the leveling skeleton, a plurality of candidate position points of the channel on the leveling skeleton are obtained; according to For the plurality of candidate position points, the position points of the channel are obtained. For example, the trajectory of the leveling segment and the leveling skeleton are matched by the K-nearest neighbor algorithm to obtain multiple candidate position points of the channel on the leveling skeleton.
例如,可将将各跨层的移动轨迹(例如PDR轨迹)切分成两段平层段轨迹和一段跨层段。平层段轨迹首先与各平层骨架进行有效AP重合度计算,AP重合度最大的即为匹配上的平层骨架,然后在匹配上的平层骨架中按照KNN配准算法,将平层段轨迹配准至平层骨架上,利用平层段轨迹所带的地标点的标记,配准经过坐标转换之后,即可获得平层骨架上地标点的位置。跨层段轨迹用于后续的指纹聚类,以获得更精确的地标点位置。实施本申请实施例能够实现通道位置点的快速、准确获得。For example, each cross-layer movement trajectory (eg, a PDR trajectory) can be divided into two levels of flat-layer trajectory and a cross-layer trajectory. The track of the leveling segment firstly calculates the effective AP coincidence degree with each leveling skeleton. The maximum AP coincidence degree is the matching leveling skeleton, and then according to the KNN registration algorithm in the matching leveling skeleton, the leveling segment is calculated. The track is registered to the leveling skeleton, and the location of the landmark point on the leveling skeleton can be obtained after the coordinate transformation is performed by using the marks of the landmark points carried by the track of the leveling segment. Cross-segment trajectories are used for subsequent fingerprint clustering to obtain more precise landmark locations. Implementing the embodiments of the present application can achieve fast and accurate acquisition of channel location points.
基于第一方面,在可能的实施例中,所述根据所述多个候选位置点,获得所述通道的所述位置点,包括:根据跨层段聚类中心,从所述多个候选位置点筛选出部分的候选位置点进行聚类,以获得所述通道的所述位置点;其中,所述跨层段聚类中心是将所述多个移动轨迹的跨层段轨迹基于指纹相似度进行聚类得到的聚类中心。Based on the first aspect, in a possible embodiment, the obtaining the position points of the channel according to the plurality of candidate position points includes: according to the cross-layer segment clustering centers, from the plurality of candidate positions The candidate position points of the selected part are clustered to obtain the position points of the channel; wherein, the cross-layer clustering center is based on the fingerprint similarity of the cross-layer trajectories of the multiple movement trajectories. The cluster centers obtained by clustering.
以信号指纹为WiFi指纹为例,可将各个跨层段轨迹进行WiFi相似度聚类,获得跨层段聚类中心,根据该跨层段聚类中心将各平层骨架上的候选地标点进行初始分类,然后结合各类别地标点的空间坐标信息进行meanshift聚类,剔除掉离群点,得到准确的聚类中心,该聚类中心作为可平层骨架的地标点的精确位置。Taking the signal fingerprint as the WiFi fingerprint as an example, each cross-segment trajectories can be clustered by WiFi similarity to obtain the cross-segment clustering center. Initial classification, and then combined with the spatial coordinate information of each category of landmark points to perform meanshift clustering, remove outliers, and obtain an accurate cluster center, which is used as the precise location of the landmark points of the levelable skeleton.
基于第一方面,在可能的实施例中,所述识别所述通道在所述移动轨迹上的位置点分布,包括:对于所述多个移动终端中的每个移动终端,根据所述移动终端的运动数据,识别在所述移动轨迹上出现用户行为变化的位置;所述用户行为变化是指在所述楼层上的用户行为和在所述通道上的用户行为之间的转变。根据所述出现用户行为变化的位置,确定所述通道两端的位置点在所述移动轨迹上的位置点分布。Based on the first aspect, in a possible embodiment, the identifying the location point distribution of the channel on the moving track includes: for each mobile terminal in the plurality of mobile terminals, according to the mobile terminal The movement data is used to identify the position where the user behavior change occurs on the moving track; the user behavior change refers to the transition between the user behavior on the floor and the user behavior on the passage. According to the location where the user behavior change occurs, the location point distribution of the location points at both ends of the channel on the movement track is determined.
比如,服务器可以通过行为识别程序输出行人携带手机行走的各种用户行为,包括用户上下楼梯、电梯、扶梯等行为,因此可以借助行为识别输出的状态,进行跨层状态检测。需要理解的是,所述用户行为变化的定义中,楼层上的用户行为和通道上的用户行为之间的转变可以是一种渐变的过程而不是突变的过程,通过区别这两种行为之间的交界点可以获得通 道的位置点。For example, the server can output various user behaviors of pedestrians walking with mobile phones through the behavior recognition program, including user behaviors such as going up and down stairs, elevators, and escalators. It should be understood that, in the definition of user behavior change, the transition between the user behavior on the floor and the user behavior on the passage can be a gradual process rather than a sudden process. By distinguishing between the two behaviors The junction point of can get the position point of the channel.
基于第一方面,在可能的实施例中,所述众包数据还包括通过气压计采集的高度数据;所述识别所述通道在所述移动轨迹上的位置点分布,包括:对于所述多个移动终端中的每个移动终端,根据所述移动终端的运动数据,识别在所述移动轨迹上出现用户行为变化的位置;所述用户行为变化是指在所述楼层上的用户行为和在所述通道上的用户行为之间的转变;根据所述移动终端的高度数据,识别在所述移动轨迹上出现跨层事件的位置;根据所述出现用户行为变化的位置和所述出现跨层事件的位置,确定所述通道在所述移动轨迹上的位置点分布。Based on the first aspect, in a possible embodiment, the crowdsourced data further includes altitude data collected by a barometer; and the identifying the location distribution of the channel on the moving track includes: for the multiple Each of the mobile terminals identifies, according to the motion data of the mobile terminal, the position where the user behavior change occurs on the moving track; the user behavior change refers to the user behavior on the floor and the user behavior on the floor. The transition between user behaviors on the channel; according to the height data of the mobile terminal, identify the position where the cross-layer event occurs on the moving track; according to the position where the user behavior change occurs and the cross-layer occurs The location of the event determines the location point distribution of the channel on the moving track.
可以看到,由于目前包含气压计的移动终端占比较小,需要增大众包数据量就需要将大量没有气压计的收集数据利用起来,而运动传感器(加速度计、陀螺仪、磁力计)能够反映用户的行走方向,并且根据现有的手机行为识别APP可以输出用户手持手机行走的各种行为状态,包括用户在楼梯、电梯、自动扶梯等等通道上的用户行为状态,因此,本申请实施例一方面可以利用移动终端的行为识别输出的状态信息检测跨层。另一方面,带有气压计的移动终端可以根据气压反应的高度变换检测显著高度变化切换点来检测通道的地标点。进一步可以融合行为识别结果和气压计跨层事件结果来确定通道的地标点,实现鲁棒性的通道的地标点的预测,提高了预测质量和准确度。It can be seen that since the current proportion of mobile terminals containing barometers is relatively small, it is necessary to use a large amount of collected data without barometers to increase the amount of data in the public package, and motion sensors (accelerometers, gyroscopes, magnetometers) can reflect The user's walking direction, and according to the existing mobile phone behavior identification APP can output various behavior states of the user walking with the mobile phone, including the user behavior state of the user on stairs, elevators, escalators, etc., therefore, the embodiment of the present application On the one hand, the state information output by the behavior recognition of the mobile terminal can be used to detect cross-layers. On the other hand, the mobile terminal with the barometer can detect the landmark point of the channel by detecting the significant height change switching point according to the height change of the air pressure response. Further, the behavior recognition results and the barometer cross-layer event results can be combined to determine the landmark points of the channel, so as to realize the prediction of the landmark points of the channel robustly, and improve the prediction quality and accuracy.
基于第一方面,在可能的实施例中,所述根据所述至少两个楼层的平层骨架、所述通道的连接位置和所述通道的构型,生成所述多楼层建筑的指纹地图,包括:根据所述平层骨架、所述通道的位置点和所述通道的构型,生成三维拓扑地图;将所述三维拓扑地图映射到世界坐标系,获得所述多楼层建筑的指纹地图。Based on the first aspect, in a possible embodiment, the fingerprint map of the multi-storey building is generated according to the leveling framework of the at least two floors, the connection position of the passage and the configuration of the passage, The method includes: generating a three-dimensional topological map according to the leveling skeleton, the location points of the passage and the configuration of the passage; and mapping the three-dimensional topological map to a world coordinate system to obtain a fingerprint map of the multi-storey building.
例如,众包数据中可包含的移动终端基于卫星导航模块获得的信息,例如移动终端可通过GPS模块检测基准楼层的出入口的GPS信息(简称入口GPS),或者在室内环境中偶尔获得的GPS信息(简称机会GPS)。服务器通过对基准楼层的出入口位置的识别,获得该出入口GPS或室内机会GPS。那么,可利用该出入口GPS或室内机会GPS,将3D拓扑地图映射到世界坐标系,例如WGS84坐标系,从而实现全楼层绝对坐标映射,即获得在世界坐标系下该多楼层建筑的指纹地图。For example, the information obtained by the mobile terminal based on the satellite navigation module that can be included in the crowdsourced data, for example, the mobile terminal can detect the GPS information of the entrance and exit of the reference floor (referred to as entrance GPS) through the GPS module, or the GPS information obtained occasionally in the indoor environment (referred to as Opportunistic GPS). The server obtains the GPS of the entrance or the indoor opportunity GPS by identifying the position of the entrance and exit of the reference floor. Then, the 3D topology map can be mapped to the world coordinate system, such as the WGS84 coordinate system, by using the entrance and exit GPS or indoor opportunistic GPS, so as to realize the absolute coordinate mapping of the whole floor, that is, to obtain the fingerprint map of the multi-story building in the world coordinate system.
实施本申请实施例,无需借助室内平面图即可获得WGS84坐标系下多楼层建筑的指纹地图,实现全楼层地图坐标映射,以实现多楼层全场景无缝室内外定位效果。By implementing the embodiments of the present application, a fingerprint map of a multi-story building under the WGS84 coordinate system can be obtained without the aid of an indoor floor plan, and a full-floor map coordinate mapping can be realized, so as to achieve a seamless indoor and outdoor positioning effect of multi-floor and full-scene.
基于第一方面,在可能的实施例中,所述根据众包数据确定所述通道的构型的过程包括:根据所述运动数据进行行人航位推算(PDR),获得所述移动终端在所述通道中移动时的PDR信息;所述PDR信息包括速度、步数、距离、高度变化中的一个或多个;根据所述PDR信息,确定所述通道的构型。Based on the first aspect, in a possible embodiment, the process of determining the configuration of the channel according to the crowdsourcing data includes: performing pedestrian dead reckoning (PDR) according to the motion data, and obtaining the location where the mobile terminal is located. PDR information when moving in the channel; the PDR information includes one or more of changes in speed, number of steps, distance, and height; and the configuration of the channel is determined according to the PDR information.
例如,在进行行人航位推算(PDR)获得PDR轨迹后,根据检测出的起终点时戳,对应PDR轨迹时戳,确定起止点在轨迹中的位置,实现单轨迹地标点检测。同时根据PDR检测的起止点间的行为识别状态、速度/步数、距离、高度变化等等,从而区分该通道的具体构型,例如楼梯、电梯或自动扶梯等等,并赋予该通道相应上下行方向属性。For example, after the pedestrian dead reckoning (PDR) is performed to obtain the PDR trajectory, according to the detected start and end time stamps, corresponding to the PDR trajectory time stamps, the position of the start and end points in the trajectory is determined to realize single-track landmark point detection. At the same time, according to the behavior between the starting and ending points detected by the PDR, the status, speed/step number, distance, height change, etc. are identified, so as to distinguish the specific configuration of the passage, such as stairs, elevators or escalators, etc., and assign the passage corresponding up and down row direction property.
第二方面,本申请实施例提出一种室内定位方法,该方法应用于第一移动终端,包括:从服务器下载指纹地图,所述指纹地图是所述服务器根据由多个第二移动终端的众包数据确定的多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;采集所述第一移动终端在所述多楼层建筑中的实时的位置指纹数据;将所述位置指纹数据与所述指纹地图进行匹配,以获得所述第一移动终端在所述多楼层建筑中的实时位置,所述实时位置 为在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。In a second aspect, an embodiment of the present application proposes an indoor positioning method, which is applied to a first mobile terminal, and includes: downloading a fingerprint map from a server, where the fingerprint map is a The leveling frame of the multi-storey building determined by the package data, the position points on the leveling frame and the configuration of the passage are generated; the real-time position of the first mobile terminal in the multi-storey building is collected. fingerprint data; matching the location fingerprint data with the fingerprint map to obtain the real-time location of the first mobile terminal in the multi-story building, where the real-time location is a floor in the multi-story building or in the passageway between two floors.
可以看到,本申请实施例实际上提供了一种室内离线定位的方式,通过离线定位的方式,可以在无网络信号或者网络信号较差的情况下,利用事先缓存于的指纹地图进行离线定位,另外也可以有利于结合传感器、GPS等的数据进行融合定位,以进一步提高室内定位的精确性。It can be seen that the embodiment of the present application actually provides an indoor offline positioning method. Through the offline positioning method, offline positioning can be performed by using the fingerprint map cached in advance in the case of no network signal or poor network signal. In addition, it can also be beneficial to combine the data of sensors, GPS, etc. for fusion positioning, so as to further improve the accuracy of indoor positioning.
第三方面,本申请实施例提出一种室内定位方法,其特征在于,所述方法应用于服务器,包括:In a third aspect, an embodiment of the present application provides an indoor positioning method, wherein the method is applied to a server, including:
接收来自第一移动终端的定位请求和所述位置指纹数据;receiving a location request and the location fingerprint data from the first mobile terminal;
将所述位置指纹数据与指纹地图进行匹配获得定位结果;所述指纹地图是所述服务器根据由多个第二移动终端的众包数据确定的所述多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;The location fingerprint data is matched with the fingerprint map to obtain a positioning result; the fingerprint map is the flat skeleton of the multi-story building determined by the server according to the crowdsourcing data of a plurality of second mobile terminals, in the generated from the position points on the flat skeleton and the configuration of the channel;
将所述第一移动终端发送所述定位结果,所述定位结果用于指示所述第一移动终端在所述多楼层建筑中的实时位置,所述实时位置为在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。The first mobile terminal sends the positioning result, and the positioning result is used to indicate the real-time position of the first mobile terminal in the multi-storey building, and the real-time position is the location in the multi-storey building. A position in a floor or in a passageway between two floors.
另外,对于第一移动终端,相应的方法包括:In addition, for the first mobile terminal, the corresponding method includes:
采集所述第一移动终端在多楼层建筑中的实时的位置指纹数据;collecting real-time location fingerprint data of the first mobile terminal in a multi-storey building;
向服务器发送定位请求和所述位置指纹数据,以便于所述服务器将所述位置指纹数据与指纹地图进行匹配获得定位结果;所述指纹地图是所述服务器根据由多个第二移动终端的众包数据确定的所述多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;Send the location request and the location fingerprint data to the server, so that the server can match the location fingerprint data with the fingerprint map to obtain the location result; Generated by the leveling frame of the multi-storey building determined by the package data, the position point on the leveling frame and the configuration of the passage;
接收来自所述服务器的所述定位结果,所述定位结果用于指示所述第一移动终端在所述多楼层建筑中的实时位置,所述实时位置为在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。receiving the positioning result from the server, where the positioning result is used to indicate the real-time position of the first mobile terminal in the multi-storey building, where the real-time position is in a floor in the multi-storey building location or in the passageway between two floors.
可以看到,本申请实施例实际上提供了一种室内在线定位的方式,通过在线定位的方式,云端服务器可提供给移动终端定位服务接口,根据接收到的移动终端的定位请求及位置指纹数据,通过定位算法,利用最新的指纹地图对移动终端进行定位,并将定位结果返回给移动终端,提升移动终端室内定位的便捷性,节省数据存储开销。It can be seen that the embodiment of the present application actually provides an indoor online positioning method. Through the online positioning method, the cloud server can provide the mobile terminal positioning service interface, and according to the received positioning request of the mobile terminal and the position fingerprint data. , through the positioning algorithm, use the latest fingerprint map to locate the mobile terminal, and return the positioning result to the mobile terminal, which improves the convenience of indoor positioning of the mobile terminal and saves data storage overhead.
第四方面,本申请实施例提出一种用于多楼层建筑的指纹地图构建的装置,该装置包括:In a fourth aspect, an embodiment of the present application proposes a device for constructing a fingerprint map of a multi-story building, the device comprising:
接收模块,用于接收来自多个移动终端的众包数据,所述众包数据包括所述移动终端在多楼层建筑中跨楼层移动过程采集的运动数据和位置指纹数据;a receiving module, configured to receive crowdsourcing data from a plurality of mobile terminals, where the crowdsourcing data includes motion data and position fingerprint data collected by the mobile terminal during a process of moving across floors in a multi-storey building;
指纹地图构建模块,用于根据所述众包数据,确定所述多楼层建筑中的至少两个楼层的平层骨架、连接于各平层骨架之间的通道在所述平层骨架上的位置点、以及所述通道的构型;根据所述至少两个楼层的平层骨架、所述通道的位置点和所述通道的构型,生成所述多楼层建筑的指纹地图。A fingerprint map building module for determining, according to the crowdsourcing data, the leveling skeletons of at least two floors in the multi-storey building and the positions of the passages connected between the leveling skeletons on the leveling skeletons point, and the configuration of the passage; generating a fingerprint map of the multi-storey building according to the leveling framework of the at least two floors, the location points of the passage and the configuration of the passage.
具体实施例中,该装置的功能模块用于实现第一方面任意实施例描述的方法。In a specific embodiment, the functional modules of the apparatus are used to implement the method described in any embodiment of the first aspect.
第五方面,本申请实施例提出一种用于室内定位的装置,所述装置应用于第一移动终端,包括:In a fifth aspect, an embodiment of the present application provides an apparatus for indoor positioning, where the apparatus is applied to a first mobile terminal, including:
接收模块,用于从服务器下载指纹地图,所述指纹地图是所述服务器根据由多个第二移动终端的众包数据确定的多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;The receiving module is used for downloading a fingerprint map from the server, where the fingerprint map is the leveling skeleton of the multi-story building and the position on the leveling skeleton determined by the server according to the crowdsourcing data of a plurality of second mobile terminals generated by the configuration of the points and channels;
数据采集模块,用于采集所述第一移动终端在所述多楼层建筑中的实时的位置指纹数据;a data collection module, configured to collect real-time location fingerprint data of the first mobile terminal in the multi-storey building;
本地定位模块,用于将所述位置指纹数据与所述指纹地图进行匹配,以获得所述第一移动终端在所述多楼层建筑中的实时位置,所述实时位置为在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。A local positioning module for matching the location fingerprint data with the fingerprint map to obtain the real-time location of the first mobile terminal in the multi-story building, where the real-time location is in the multi-story building A position in a floor in a , or a position in a passageway between two floors.
具体实施例中,该装置的功能模块用于实现第二方面描述的方法。In a specific embodiment, the functional modules of the apparatus are used to implement the method described in the second aspect.
第六方面,本申请实施例提出一种用于室内定位的装置,所述装置应用于服务器,包括:In a sixth aspect, an embodiment of the present application provides an apparatus for indoor positioning, where the apparatus is applied to a server, including:
接收模块,用于接收来自第一移动终端的定位请求和所述位置指纹数据;a receiving module for receiving a positioning request and the position fingerprint data from the first mobile terminal;
云端定位服务模块,用于将所述位置指纹数据与指纹地图进行匹配获得定位结果;所述指纹地图是所述服务器根据由多个第二移动终端的众包数据确定的所述多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;The cloud positioning service module is used for matching the position fingerprint data with a fingerprint map to obtain a positioning result; the fingerprint map is the data of the multi-story building determined by the server according to crowdsourcing data of a plurality of second mobile terminals. Generated by the leveling framework, the position points on the leveling framework and the configuration of the channel;
发送模块,用于将所述第一移动终端发送所述定位结果,所述定位结果用于指示所述第一移动终端在所述多楼层建筑中的实时位置,所述实时位置为在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。A sending module, configured to send the positioning result to the first mobile terminal, where the positioning result is used to indicate the real-time position of the first mobile terminal in the multi-storey building, where the real-time position is in the A location in a floor in a multi-story building or in a passageway between two floors.
具体实施例中,该装置的功能模块用于实现第三方面描述的方法。In a specific embodiment, the functional modules of the apparatus are used to implement the method described in the third aspect.
第七方面,本申请实施例提供一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,以执行如第一方面或第二方面或第三方面的任意实施例描述的方法。In a seventh aspect, an embodiment of the present application provides a chip, the chip includes a processor and a data interface, and the processor reads an instruction stored in a memory through the data interface to execute the first aspect or the second aspect or the method described in any embodiment of the third aspect.
第八方面,本发明实施例提供了又一种非易失性计算机可读存储介质;所述计算机可读存储介质用于存储第一方面或第二方面或第三方面的任意实施例描述的方法的实现代码。所述程序代码被计算设备执行时能够实现第一方面或第二方面或第三方面的任意实施例描述的方法。In an eighth aspect, an embodiment of the present invention provides another non-volatile computer-readable storage medium; the computer-readable storage medium is used to store the data described in any embodiment of the first aspect or the second aspect or the third aspect. method's implementation code. The program code, when executed by a computing device, can implement the method described in any embodiment of the first aspect or the second aspect or the third aspect.
第九方面,本发明实施例提供了一种计算机程序产品;该计算机程序产品包括程序指令,当该计算机程序产品被计算设备执行时,执行前述第一方面或第二方面或第三方面的任意实施例描述的方法。该计算机程序产品可以为一个软件安装包,可以下载该计算机程序产品并在控制器上执行该计算机程序产品,以实现第一方面或第二方面或第三方面的任意实施例描述的方法。In a ninth aspect, an embodiment of the present invention provides a computer program product; the computer program product includes program instructions, and when the computer program product is executed by a computing device, executes any of the foregoing first aspect or second aspect or third aspect methods described in the examples. The computer program product may be a software installation package, and the computer program product may be downloaded and executed on the controller to implement the method described in any embodiment of the first aspect or the second aspect or the third aspect.
附图说明Description of drawings
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the accompanying drawings required for the description of the embodiments or the prior art. Obviously, the drawings in the following description are only These are some embodiments of the present application. For those of ordinary skill in the art, other drawings can also be obtained based on these drawings without any creative effort.
图1是本申请实施例提供的一种用于解释术语的场景示意图;FIG. 1 is a schematic diagram of a scenario for explaining terms provided by an embodiment of the present application;
图2是本申请实施例提供的一种系统架构示意图;2 is a schematic diagram of a system architecture provided by an embodiment of the present application;
图3是本申请实施例提供的一种系统架构中的设备的结构示意图;3 is a schematic structural diagram of a device in a system architecture provided by an embodiment of the present application;
图4是本申请实施例提供的一种包含功能模块的系统架构示意图;4 is a schematic diagram of a system architecture including functional modules provided by an embodiment of the present application;
图5是本申请实施例提供的一种地图构建方法的流程示意图;5 is a schematic flowchart of a map construction method provided by an embodiment of the present application;
图6A是本申请实施例提供的一种定位方法的流程示意图;6A is a schematic flowchart of a positioning method provided by an embodiment of the present application;
图6B是本申请实施例提供的又一种定位方法的流程示意图;6B is a schematic flowchart of another positioning method provided by an embodiment of the present application;
图7是本申请实施例提供的一种手机操作场景的流程示意图;7 is a schematic flowchart of a mobile phone operation scenario provided by an embodiment of the present application;
图8是本申请实施例提供的一种指纹地图构建模块的逻辑示意图;8 is a schematic diagram of a fingerprint map construction module provided by an embodiment of the present application;
图9是本申请实施例提供的一种通道自学习模块的逻辑示意图;9 is a schematic diagram of a channel self-learning module provided by an embodiment of the present application;
图10是本申请实施例提供的一种多传感器融合的场景示意图;FIG. 10 is a schematic diagram of a multi-sensor fusion scenario provided by an embodiment of the present application;
图11是本申请实施例提供的一种轨迹切分的场景示意图;11 is a schematic diagram of a scenario of trajectory segmentation provided by an embodiment of the present application;
图12是本申请实施例提供的一种轨迹与骨架匹配的场景示意图;12 is a schematic diagram of a scene in which a trajectory and a skeleton are matched according to an embodiment of the present application;
图13是本申请实施例提供的一种KNN配准的场景示意图;13 is a schematic diagram of a scene of KNN registration provided by an embodiment of the present application;
图14是本申请实施例提供的一种基于指纹相似度配准的场景示意图;14 is a schematic diagram of a scenario based on fingerprint similarity registration provided by an embodiment of the present application;
图15是本申请实施例提供的一种骨架排序、楼层识别和对齐的逻辑示意图;FIG. 15 is a schematic diagram of a skeleton sequence, floor identification, and alignment provided by an embodiment of the present application;
图16是本申请实施例提供的一种轨迹与骨架匹配场景的示例图;16 is an example diagram of a trajectory and skeleton matching scene provided by an embodiment of the present application;
图17是本申请实施例提供的一种楼层对齐的示意图;17 is a schematic diagram of floor alignment provided by an embodiment of the present application;
图18是本申请实施例提供的一种有向无环图构建过程示意图;18 is a schematic diagram of a directed acyclic graph construction process provided by an embodiment of the present application;
图19是本申请实施例提供的一种绝对楼层识别的场景示例图;Fig. 19 is a scene example diagram of absolute floor recognition provided by an embodiment of the present application;
图20是本申请实施例提供的又一种绝对楼层识别的场景示例图;Fig. 20 is another scene example diagram of absolute floor recognition provided by an embodiment of the present application;
图21是本申请实施例提供的几种通道构型示例图;21 is an example diagram of several channel configurations provided by an embodiment of the present application;
图22是本申请实施例提供的一种骨架对齐的场景示例图;FIG. 22 is an example diagram of a skeleton alignment scenario provided by an embodiment of the present application;
图23是本申请实施例提供的一些骨架对齐的场景示例图;23 is an example diagram of some skeleton alignment scenarios provided by an embodiment of the present application;
图24是本申请实施例提供的一种地图映射的场景示意图;FIG. 24 is a schematic diagram of a map mapping scenario provided by an embodiment of the present application;
图25是本申请实施例提供的一种指纹地图的场景示意图。FIG. 25 is a schematic diagram of a scenario of a fingerprint map provided by an embodiment of the present application.
具体实施方式detailed description
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。需要说明的是,在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application. It should be noted that the terms used in the embodiments of the present application are only for the purpose of describing specific embodiments, and are not intended to limit the present application.
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。In the embodiments of the present application, words such as "exemplary" or "for example" are used to represent examples, illustrations or illustrations. Any embodiments or designs described in the embodiments of the present application as "exemplary" or "such as" should not be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "such as" is intended to present the related concepts in a specific manner.
在本申请实施例或所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。如本文所使用的,单数形式的“一”、“某”和“该”旨在也包括复数形式,除非上下文另有明确指示。还将理解,术语“包括”、“具有”、“包含”和/或“含有”在本文中使用时指定所陈述的特征、整数、步骤、操作、要、和/或组件的存在,但并不排除一个或多个其他特征、整数、步骤、操作、要素、组件和/或其群组的存在或添加。As used in the embodiments of this application or the appended claims, the singular forms "a," "the," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It will also be understood that the term "and/or" as used herein refers to and includes any and all possible combinations of one or more of the associated listed items. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It will also be understood that the terms "comprising", "having", "including" and/or "comprising" when used herein designate the presence of stated features, integers, steps, operations, means, and/or components, but do not The presence or addition of one or more other features, integers, steps, operations, elements, components and/or groups thereof is not excluded.
还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。It will also be understood that the term "and/or" as used herein refers to and includes any and all possible combinations of one or more of the associated listed items.
为了更好理解本申请方案,首先解释本申请实施例涉及的一些术语。In order to better understand the solutions of the present application, some terms involved in the embodiments of the present application are explained first.
(1)众包数据:(1) Crowdsourced data:
众包技术是一种通过大量的用户终端来获取资源的方法,通过一定的触发机制,在用户无感知的情况下,收集用户终端的传感器、射频信号或网络定位等可用的数据,这样的数据可称为众包数据。例如,本申请实施例中移动终端采集的众包数据可包括运动数据和位置指 纹数据,运动数据可以是由速度计、陀螺仪、磁力计、GPS等传感器采集的数据,例如运动速度、姿态、旋转角度、移动方向等等,位置指纹数据可以是通过WiFi技术、蓝牙技术扫描到的射频信息,例如WiFi信号强度(Received Signal Strength,RSS)信息、无线访问接入点(Access Point,AP)的数量,等等。另外,众包数据中还可以包括通过气压计采集的高度数据。在室内环境下,用户可以携带着智能手机之类的移动终端随意走动,在预先征得用户授权的情况下,移动终端可以自主采集移动过程中的众包数据。Crowdsourcing technology is a method of obtaining resources through a large number of user terminals. Through a certain trigger mechanism, the available data such as sensors, radio frequency signals or network positioning of user terminals are collected without the user's perception. Such data Can be called crowdsourced data. For example, the crowdsourced data collected by the mobile terminal in this embodiment of the present application may include motion data and location fingerprint data, and the motion data may be data collected by sensors such as a speedometer, a gyroscope, a magnetometer, and a GPS, such as motion speed, attitude, rotation, etc. Angle, moving direction, etc., the location fingerprint data can be the radio frequency information scanned by WiFi technology and Bluetooth technology, such as WiFi signal strength (Received Signal Strength, RSS) information, the number of wireless access points (Access Point, AP) ,etc. In addition, the crowdsourced data can also include altitude data collected by barometers. In an indoor environment, a user can walk around with a mobile terminal such as a smartphone. With the authorization of the user in advance, the mobile terminal can autonomously collect crowdsourced data during the movement.
(2)指纹地图:(2) Fingerprint map:
指纹地图是具有绝对位置信息的指纹数据集,可用于室内定位。指纹也可以称为位置指纹或信号指纹,是指室内特定位置上接收到的无线信号特征序列。其中无线信号可以是WiFi信号、蓝牙信号等。例如,WiFi信号的指纹可以来自不同无线访问接入点(Access Point,AP)的WiFi信号的接收信号强度(Received Signa Strength,RSS)的统计值和AP个数来表征。可以理解的,在室内空间中的每个位置检测到的WiFi信号强度和AP个数皆有所差异,所以,在室内AP部署固定的情况下,在室内空间中的每个位置点与该位置点采集的位置指纹数据具有一一对应的关系。Fingerprint maps are fingerprint datasets with absolute location information that can be used for indoor positioning. Fingerprints, also known as location fingerprints or signal fingerprints, refer to the characteristic sequence of wireless signals received at a specific location indoors. The wireless signal may be a WiFi signal, a Bluetooth signal, or the like. For example, the fingerprint of the WiFi signal can be characterized by the statistical value of the received signal strength (Received Signal Strength, RSS) of the WiFi signal from different wireless access points (Access Point, AP) and the number of APs. It can be understood that the WiFi signal strength and the number of APs detected at each location in the indoor space are different. Therefore, when the indoor AP is fixedly deployed, each location point in the indoor space is different from that location. The location fingerprint data collected by the point has a one-to-one correspondence.
(3)多楼层建筑、楼层、通道和地标点:(3) Multi-story buildings, floors, passages and landmarks:
参见图1中的左图,多楼层建筑是具有多个楼层的建筑物,本申请方案适应于多楼层建筑的指纹地图的构建。其中,多楼层建筑中的楼层可以是1楼、2楼、3楼等地表以上的楼层,也可以是地下室、负1层、负2层等等地表以下的楼层。Referring to the left figure in FIG. 1 , a multi-story building is a building with multiple floors, and the solution of the present application is suitable for the construction of a fingerprint map of a multi-story building. The floors in the multi-storey building may be floors above the surface such as the first, second, and third floors, or may be floors below the surface such as the basement, minus 1 floor, and minus 2 floors.
通道是用于联系多楼层建筑物不同楼层的通行设施,通道连接在不同楼层之间,人员和货物可以通过通道在不同楼层之间转移。通道在楼层之间的连接关系由通道的属性决定,通道的属性包括:通道在楼层上的连接位置、通道的结构类型(或称构型)。The passage is a passage facility used to connect different floors of a multi-storey building. The passage is connected between different floors, and people and goods can be transferred between different floors through the passage. The connection relationship between the passages between floors is determined by the attributes of the passage, which include: the connection position of the passage on the floor, and the structural type (or configuration) of the passage.
通道的构型有多种,例如楼梯、电梯、自动扶梯、爬梯、台阶、坡道等。其中:There are various configurations of passageways, such as stairs, elevators, escalators, ladders, steps, ramps, etc. in:
楼梯是多层建筑中提供给人员在不同楼层之间行走、紧急疏散的主要通行设施。Stairs are the main access facilities in multi-storey buildings for people to walk between different floors and for emergency evacuation.
电梯是用电力带动轿厢运行于垂直方向以运送人员或货物的通行设施。An elevator is a passage facility that uses electricity to drive the car to run in a vertical direction to transport people or goods.
自动扶梯又称为自动楼梯,是通过链式输送机自动运送人员的通行设施。Escalator, also known as escalator, is a passage facility that automatically transports people through chain conveyors.
爬梯是指楼梯段的坡度超过45°,且上下行需要借助双手帮助才能使用的通行设施。A ladder refers to a passage facility with a gradient of more than 45° and requires the help of both hands to go up and down.
台阶为用于室内不同标高处的阶梯形,便于人员拾阶而上。The steps are stair-shaped for different indoor elevations, which is convenient for people to climb up the steps.
坡道是多层建筑中供轮式交通工具通行的斜坡式通行设施。A ramp is a ramp-type passage facility for wheeled vehicles in a multi-storey building.
通道在楼层上的连接位置即为通道在楼层上的端点,简单理解就是通道在楼层上的出入口位置。例如,对于1楼与2楼之间的电梯而言,电梯在1楼的连接位置就是电梯在1楼的出入口位置,在2楼的连接位置就是电梯在2楼的出入口位置。The connection position of the passage on the floor is the end point of the passage on the floor, which is simply understood as the position of the entrance and exit of the passage on the floor. For example, for the elevator between the 1st floor and the 2nd floor, the connection position of the elevator on the 1st floor is the entrance and exit position of the elevator on the 1st floor, and the connection position on the 2nd floor is the entrance and exit position of the elevator on the 2nd floor.
为了描述方便,本文中“通道在楼层上的位置点”、“通道在楼层上的连接位置”、“通道在楼层上的端点”、“通道在楼层上的出入口位置”还可统一采用“地标点”来简称。For the convenience of description, in this article, "the location of the passage on the floor", "the connection position of the passage on the floor", "the end point of the passage on the floor", and "the location of the entrance and exit of the passage on the floor" can also be uniformly used as "ground". Punctuation" for short.
可以理解的,对于不同构型的通道,其在楼层之间的连接关系也有所差异。按照通道与楼层的连接关系又可分为直连通道(例如电梯、爬梯、某些中间折叠的楼梯)和斜连通道(例如倾斜楼梯楼梯、自动扶梯、台阶、坡道)。对于直连通道,其在不同楼层的端点是垂直对齐的,没有水平偏移。对于斜连通道,其在不同楼层的端点是存在水平偏移的。It can be understood that, for channels of different configurations, the connection relationship between floors is also different. According to the connection relationship between the passage and the floor, it can be divided into directly connected passages (such as elevators, ladders, some stairs folded in the middle) and inclined connected passages (such as inclined stairs, escalators, steps, ramps). For a direct channel, its endpoints on different floors are vertically aligned with no horizontal offset. For the inclined channel, its endpoints on different floors are horizontally offset.
需要说明的是,不同楼层之间的通道的构型、数量、连接位置可以是相同的,也可以是各有差异的,本申请对此并不做限定。例如,1楼和2楼可以通过电梯、扶梯和楼梯相连,2楼和3楼可通过电梯和楼梯相连。It should be noted that the configurations, quantities and connection positions of passages between different floors may be the same or different, which is not limited in the present application. For example, the 1st and 2nd floors can be connected by elevators, escalators and stairs, and the 2nd and 3rd floors can be connected by elevators and stairs.
还需要说明的是,通道不一定只连接与相邻楼层,也可能跨楼层连接。例如,某扶梯可 能被设计于直接连接1楼和3楼;又例如,某电梯被配置于被配置于从1楼直达4楼,而不停靠其他楼层,等等。It should also be noted that passages are not necessarily connected only to adjacent floors, but may also be connected across floors. For example, an escalator may be designed to directly connect the 1st floor and the 3rd floor; another example, an elevator may be configured to be configured to go from the 1st floor to the 4th floor without stopping at other floors, and so on.
本申请实施例中所构建的指纹地图可以是三维(3D)指纹地图。也就是说,不仅有具有楼层对应的指纹地图信息,用于移动终端在楼层上的定位,还具有通道对应的指纹地图信息,用于移动终端在通道上的定位。The fingerprint map constructed in the embodiment of the present application may be a three-dimensional (3D) fingerprint map. That is to say, there is not only the fingerprint map information corresponding to the floor, which is used for the positioning of the mobile terminal on the floor, but also the fingerprint map information corresponding to the channel, which is used for the positioning of the mobile terminal on the channel.
另外,本申请实施例中所构建的指纹地图可以是多楼层建筑中的一部分楼层对应的指纹地图。例如,某多楼层建筑有5层楼层,但是基于AP的部署情况,可以只构建1-3楼的指纹地图,从而实现1-3楼的定位。In addition, the fingerprint map constructed in the embodiment of the present application may be a fingerprint map corresponding to a part of floors in a multi-story building. For example, a multi-story building has 5 floors, but based on the deployment of APs, only the fingerprint map of floors 1-3 can be constructed to realize the positioning of floors 1-3.
(4)三维拓扑地图和平层骨架:(4) 3D topological map and layer skeleton:
参见图1中的右图,本申请实施例中,三维(3D)拓扑地图是基于多个移动终端的众包数据的所形成的移动轨迹通过聚合算法生成的三维拓扑结构,3D拓扑地图包括多个平层骨架,每个平层骨架对应一个楼层,平层骨架中的每个位置点均与位置指纹数据绑定。可以看到,楼层中的地标点同样也会投射到平层骨架上的相应位置。本申请实施例生成3D拓扑地图后,将3D拓扑地图映射到世界坐标系(例如WGS84坐标系)即可获得指纹地图(或称3D指纹地图)。Referring to the right figure in FIG. 1 , in the embodiment of the present application, the three-dimensional (3D) topology map is a three-dimensional topology structure generated by an aggregation algorithm based on the movement trajectories formed by crowdsourcing data of multiple mobile terminals, and the 3D topology map includes multiple Each leveling skeleton corresponds to a floor, and each position point in the leveling skeleton is bound with the position fingerprint data. It can be seen that the landmark points in the floor are also projected to the corresponding positions on the leveling skeleton. After the 3D topological map is generated in the embodiment of the present application, the fingerprint map (or 3D fingerprint map) can be obtained by mapping the 3D topological map to the world coordinate system (eg, the WGS84 coordinate system).
本申请所描述的指纹地图构建方法可以由服务器执行,且由移动终端向服务器提供众包数据。本申请所描述的定位方法也可通过移动终端和服务器的交互来共同实现。The fingerprint map construction method described in this application can be executed by a server, and the mobile terminal provides crowdsourced data to the server. The positioning method described in this application can also be jointly implemented through the interaction between the mobile terminal and the server.
其中,移动终端可以是智能手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(MID,mobile internet device)、可穿戴设备(如智能手环、智能手表等)、专门的AR设备、专门的VR设备、摄像设备(例如录像机、智能相机、数码相机、摄影机等)或者其他设备。Among them, the mobile terminal can be a smart phone, a tablet computer, a notebook computer, a handheld computer, a mobile internet device (MID, mobile internet device), a wearable device (such as a smart bracelet, a smart watch, etc.), a special AR device, a special VR equipment, camera equipment (such as video recorders, smart cameras, digital cameras, video cameras, etc.) or other equipment.
移动终端也可能被称为用户装备(UE)、订户站、移动单元、订户单元、无线单元、远程单元、移动设备、无线设备、无线通信设备、远程设备、移动订户站、终端设备、接入终端、电子设备、无线终端、智能终端、远程终端、手持机、用户代理、移动客户端、客户端、或其他某个合适的术语。A mobile terminal may also be referred to as user equipment (UE), subscriber station, mobile unit, subscriber unit, wireless unit, remote unit, mobile device, wireless device, wireless communication device, remote device, mobile subscriber station, terminal device, access Terminal, electronic device, wireless terminal, smart terminal, remote terminal, handset, user agent, mobile client, client, or some other appropriate term.
服务器可以是独立的服务器,还可以是云平台、数据中心、或服务器集群。服务器的类型例如是可以是数据库服务器、应用服务器、通用服务器、专用服务器,等等。服务器中也可以包括一个或多个处理节点,或者包括运行于服务器的一个或多个虚拟机。The server can be an independent server, a cloud platform, a data center, or a server cluster. The type of server can be, for example, a database server, an application server, a general purpose server, a dedicated server, and the like. The server may also include one or more processing nodes, or include one or more virtual machines running on the server.
参见图2,图2示出了终端与服务器进行交互的系统架构,该系统架构包括移动终端10和服务器20。移动终端10与服务器20之间可通过网络进行通信。Referring to FIG. 2 , FIG. 2 shows a system architecture in which a terminal interacts with a server. The system architecture includes a mobile terminal 10 and a server 20 . Communication between the mobile terminal 10 and the server 20 is possible through a network.
当该系统架构为指纹地图构建过程的系统架构时,服务器20可以接收来自大量的移动终端10的众包数据,并根据这些移动终端的众包数据构建一个或多个多楼层建筑的指纹地图。其中,本申请不对这些移动终端10的类型、数量做限定,也不对移动终端10与服务器10之间的通信方式做限定。When the system architecture is the system architecture of the fingerprint map construction process, the server 20 can receive crowdsourced data from a large number of mobile terminals 10, and construct fingerprint maps of one or more multi-story buildings according to the crowdsourced data of these mobile terminals. Wherein, the present application does not limit the type and quantity of these mobile terminals 10 , nor does it limit the communication mode between the mobile terminal 10 and the server 10 .
当该系统架构为室内定位过程的系统架构时,可以通过至少两种方式实现终端的实时定位:When the system architecture is the system architecture of the indoor positioning process, the real-time positioning of the terminal can be realized in at least two ways:
(1)云端定位服务的方式:服务器20提供给移动终端10定位服务接口,服务器20根据接收到的移动终端10的定位请求及位置指纹数据,通过定位算法,利用预先建好的指纹地图对移动终端10进行定位,并将定位结果返回给移动终端10。服务器20还可以将该移动终端10所在的建筑物的指纹地图推送至移动终端10,以支撑移动终端10在无网络或者网络信号较差情况下的定位功能。(1) The method of cloud positioning service: the server 20 provides the mobile terminal 10 with a positioning service interface, and the server 20 uses the pre-built fingerprint map to locate the mobile terminal according to the received positioning request and the position fingerprint data of the mobile terminal 10 through the positioning algorithm. The terminal 10 performs positioning and returns the positioning result to the mobile terminal 10 . The server 20 may also push the fingerprint map of the building where the mobile terminal 10 is located to the mobile terminal 10, so as to support the positioning function of the mobile terminal 10 in the case of no network or poor network signal.
(2)终端本地定位的方式:移动终端10事先从服务器20上下载了指纹地图,在判断当前无网络信号或者网络信号较差的情况下,不再需要和服务器交互,而是直接利用当前采集的位置指纹数据和本地保存的指纹地图实现定位,此外也可以进一步结合运动传感器、GPS等的数据进行融合定位。(2) The method of local positioning of the terminal: the mobile terminal 10 downloads the fingerprint map from the server 20 in advance, and when it is judged that there is no current network signal or the network signal is poor, it no longer needs to interact with the server, but directly uses the current acquisition The location fingerprint data and the locally stored fingerprint map can be used to achieve positioning. In addition, it can also be further combined with data such as motion sensors and GPS for fusion positioning.
请参考图3以更好理解端-云系统下的设备内部结构。如图3所示,端-云系统包括移动终端10和服务器20。移动终端与服务器20通过各自的通信装置建立通信连接,通信方式可以是无线通信的方式,无线通信方式包括但不限于:WiFi方式,射频(Radio Frequency,RF)方式、数据通信方式、蓝牙方式等等中的一个或多个。Please refer to Figure 3 to better understand the internal structure of the device under the device-cloud system. As shown in FIG. 3 , the end-cloud system includes a mobile terminal 10 and a server 20 . The mobile terminal and the server 20 establish a communication connection through their respective communication devices, and the communication method can be a wireless communication method. The wireless communication method includes but is not limited to: WiFi method, radio frequency (Radio Frequency, RF) method, data communication method, Bluetooth method, etc. one or more of etc.
对于移动终端10:For mobile terminal 10:
移动终端10包括:至少一个处理器13、存储器15、至少一个传感器11、卫星定位装置14、显示装置17、信号检测装置12和通信装置16,这些部件可在一个或多个通信总线上通信以实现移动终端10的功能。The mobile terminal 10 comprises: at least one processor 13, memory 15, at least one sensor 11, satellite positioning means 14, display means 17, signal detection means 12 and communication means 16, which components can communicate on one or more communication buses to The functions of the mobile terminal 10 are realized.
处理器13又可称为中央处理器(CPU,central processing unit),处理器13具体可以包括一个或多个处理单元,例如:处理器13可以包括通用处理器,应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。The processor 13 may also be referred to as a central processing unit (CPU, central processing unit), and the processor 13 may specifically include one or more processing units, for example, the processor 13 may include a general-purpose processor, an application processor (application processor, AP) ), modem processor, graphics processor (graphics processing unit, GPU), image signal processor (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP) , baseband processor, and/or neural-network processing unit (NPU), etc. Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
在一些实施例中,处理器13可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。In some embodiments, processor 13 may include one or more interfaces. The interface may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous transceiver (universal asynchronous transmitter) receiver/transmitter, UART) interface, mobile industry processor interface (MIPI), general-purpose input/output (GPIO) interface, subscriber identity module (SIM) interface, and / or universal serial bus (universal serial bus, USB) interface, etc.
通信装置16用于接收和发送数据,主要集成了移动终端10的接收器和发射器。一种实施例中,通信装置16可包括但不限于:天线系统、RF收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、CODEC芯片、SIM卡和存储介质等。在一些实施例中,可在单独的芯片上实现通信装置16。通信装置16例如可支持通过2G/3G/4G/5G等中的至少一种的数据网络通信,和/或支持以下近距无线通信的方式中的至少一种:蓝牙(Bluetooth,BT)通信,无线保真(WirelessFidelity,WiFi)通信,近场通信(Near Field Communication,NFC),红外(Infrared,IR)无线通信,超宽带(UWB,Ultra Wide Band)通信,ZigBee通信。移动终端10通过通信装置16与服务器20进行通信交互。例如,向服务器20发送众包数据或定位请求,又例如,接收服务器20发送的定位结果或指纹地图。The communication device 16 is used for receiving and transmitting data, and mainly integrates the receiver and the transmitter of the mobile terminal 10 . In one embodiment, the communication device 16 may include, but is not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chip, a SIM card, and storage medium, etc. In some embodiments, the communication device 16 may be implemented on a separate chip. The communication device 16 may, for example, support data network communication through at least one of 2G/3G/4G/5G, etc., and/or support at least one of the following short-range wireless communication methods: Bluetooth (Bluetooth, BT) communication, Wireless Fidelity (WiFi) communication, Near Field Communication (NFC), Infrared (Infrared, IR) wireless communication, Ultra Wide Band (UWB, Ultra Wide Band) communication, ZigBee communication. The mobile terminal 10 communicates and interacts with the server 20 through the communication device 16 . For example, crowdsourced data or a positioning request is sent to the server 20 , and for example, a positioning result or a fingerprint map sent by the server 20 is received.
信号检测装置12,用于通过WiFi技术、蓝牙技术等扫描/检测室内环境中的无线访问接入点(Access Point,AP)的射频信息,例如检测WiFi信号强度(Received Signal Strength,RSS)信息、无线访问接入点(Access Point,AP)的数量,等等,以获得当前位置的位置指纹数据。The signal detection device 12 is used for scanning/detecting the radio frequency information of the wireless access point (Access Point, AP) in the indoor environment through WiFi technology, Bluetooth technology, etc., such as detecting WiFi signal strength (Received Signal Strength, RSS) information, The number of wireless access points (Access Point, AP), etc. to obtain the location fingerprint data of the current location.
在一可能实施例中,也可以将信号检测装置12的功能整合到通信装置16中,即通信装置16既可以与服务器20通信,还可以用于获得当前位置的位置指纹数据。例如,通信装置16进入WiFi通信模式后,既可以扫描室内环境中的WiFi信号以获得位置指纹数据,又可以 以WiFi的方式向服务器发送众包数据。In a possible embodiment, the function of the signal detection device 12 can also be integrated into the communication device 16, that is, the communication device 16 can not only communicate with the server 20, but also be used to obtain the location fingerprint data of the current location. For example, after the communication device 16 enters the WiFi communication mode, it can not only scan the WiFi signal in the indoor environment to obtain the location fingerprint data, but also send the crowdsourced data to the server in the form of WiFi.
又一可能实施例中,也可以将信号检测装置12的功能整合到处理器13中,通信装置16对室内环境进行信号扫描后,由处理器13执行对信号的分析,进而获得位置指纹数据。In yet another possible embodiment, the functions of the signal detection device 12 can also be integrated into the processor 13, and after the communication device 16 scans the indoor environment for signals, the processor 13 performs signal analysis to obtain location fingerprint data.
传感器11可包括一种或多种传感器,例如气压计,磁力计,陀螺仪,加速度计,轮速计,惯性测量单元(Inertial Measurement Unit,IMU)等等,用于检测移动终端10移动时(例如用户携带移动终端10行走)的运动数据,例如运动速度、姿态、旋转角度、移动方向等等,以便于结合上述位置指纹数据形成众包数据。运动数据还可以在室内定位过程中用于辅助定位。当然,传感器11还可以包括更多的或者其他的传感器。The sensor 11 may include one or more sensors, such as a barometer, a magnetometer, a gyroscope, an accelerometer, a wheel speedometer, an inertial measurement unit (Inertial Measurement Unit, IMU), etc., for detecting when the mobile terminal 10 moves ( For example, the user carries the movement data of the mobile terminal 10, such as movement speed, posture, rotation angle, movement direction, etc., so as to form crowdsourced data in combination with the above-mentioned position fingerprint data. Motion data can also be used to assist positioning during indoor positioning. Of course, the sensor 11 may also include more or other sensors.
卫星定位装置14用于实现对移动终端10的卫星定位,例如卫星定位装置14中可设置有全球导航卫星系统(Global Navigation Satellite System,GNSS),GNSS不限于全球定位系统(Global Positioning System,GPS)、格洛纳斯定位系统(GLONASS)、伽利略卫星导航定位系统(Galileo satellite navigation system)、北斗定位系统等等,以辅助定位。例如,移动终端10可通过卫星定位装置14在多楼层建筑的出入口位置获得GPS信号(简称出入口GPS),或者在室内某些位置的信号允许的情况下也可能获得GPS信号(简称机会GPS)。The satellite positioning device 14 is used to realize satellite positioning of the mobile terminal 10. For example, the satellite positioning device 14 may be provided with a Global Navigation Satellite System (Global Navigation Satellite System, GNSS), and GNSS is not limited to the Global Positioning System (Global Positioning System, GPS) , GLONASS positioning system (GLONASS), Galileo satellite navigation and positioning system (Galileo satellite navigation system), Beidou positioning system, etc. to assist positioning. For example, the mobile terminal 10 may obtain GPS signals at the entrances and exits of a multi-story building through the satellite positioning device 14 (referred to as entrance and exit GPS), or may also obtain GPS signals (referred to as opportunistic GPS) when the signals at certain indoor locations allow.
移动终端10可以包括一个或多个显示装置17。移动终端10可通过显示装置17、芯片310中的图形处理器(GPU)以及应用处理器(AP)等共同实现显示功能。GPU为用于图像处理的微处理器,连接显示装置17和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。显示装置17用于显示系统当前输出的界面内容,界面内容可包括正在运行的应用程序的界面以及系统级别菜单等,具体可由下述界面元素组成:输入型界面元素,例如按键(Button),文本输入框(Text),滑动条(Scroll Bar),菜单(Menu)等等;以及输出型界面元素,例如视窗(Window),标签(Label),图像,视频,动画等等。The mobile terminal 10 may include one or more display devices 17 . The mobile terminal 10 may jointly implement the display function through the display device 17, a graphics processing unit (GPU) in the chip 310, an application processor (AP), and the like. The GPU is a microprocessor for image processing, and connects the display device 17 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The display device 17 is used to display the interface content currently output by the system, the interface content may include the interface of the running application program and the system level menu, etc., and may be specifically composed of the following interface elements: input interface elements, such as buttons (Button), text Input box (Text), slide bar (Scroll Bar), menu (Menu), etc.; and output interface elements, such as window (Window), label (Label), image, video, animation, etc.
显示装置17在具体实现中,可以是显示面板,镜片(例如VR眼镜),投影屏等。显示面板也可以称为显示屏,例如可以是触摸屏、柔性屏、曲面屏等,或者其他光学组件。也即是说在本申请中电子设备具有显示屏时,显示屏可以是触摸屏、柔性屏、曲面屏或者其它形式的屏幕,电子设备的显示屏具有显示图像的功能,至于显示屏的具体材质以及形状本申请对此不作任何限定。In a specific implementation, the display device 17 may be a display panel, a lens (eg, VR glasses), a projection screen, and the like. The display panel may also be called a display screen, for example, it may be a touch screen, a flexible screen, a curved screen, etc., or other optical components. That is to say, when the electronic device has a display screen in this application, the display screen can be a touch screen, a flexible screen, a curved screen or other forms of screen, and the display screen of the electronic device has the function of displaying images. Shape This application does not make any limitation in this regard.
例如,当显示装置17包括显示面板时,显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。For example, when the display device 17 includes a display panel, the display panel may use a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active matrix organic light emitting diode or an active matrix Organic light emitting diodes (active-matrix organic light emitting diodes, AMOLED), flexible light emitting diodes (flex light-emitting diodes, FLED), Miniled, MicroLed, Micro-oLed, quantum dot light emitting diodes (quantum dot light emitting diodes, QLED), etc.
此外,一些具体实现中,可以将触控面板和显示装置17中的显示面板耦合在一起设置,例如触控面板可设置于显示面板下方,触控面板可用于检测用户通过显示面板输入触控操作(例如点击、滑动,触摸等)时作用于显示面板上的触控压力,显示面板用于进行内容显示。本申请实施例中显示的内容例如可以是地图应用程序操作界面、指纹地图、室内定位界面等等。In addition, in some specific implementations, the touch panel and the display panel in the display device 17 may be coupled together and disposed, for example, the touch panel may be disposed below the display panel, and the touch panel may be used to detect a user's input of a touch operation through the display panel Touch pressure acting on the display panel (such as clicking, sliding, touching, etc.), and the display panel is used for content display. The content displayed in the embodiment of the present application may be, for example, a map application operation interface, a fingerprint map, an indoor positioning interface, and the like.
存储器15可与处理器13通过总线连接,也可以与处理器13耦合在一起,用于存储各种软件程序和/或多组指令。具体实现中,存储器15可包括高速随机存取的存储器(例如高速缓冲存储器),并且也可包括非易失性存储器,例如随机存储记忆体(Random Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、或便携式只读存储器(Compact Disc Read-Only  Memory,CD-ROM)等等。The memory 15 can be connected with the processor 13 through a bus, or can be coupled with the processor 13, and is used for storing various software programs and/or groups of instructions. In a specific implementation, the memory 15 may include a high-speed random access memory (such as a cache memory), and may also include a non-volatile memory, such as a random access memory (RAM), a read-only memory (Read- Only Memory, ROM), Erasable Programmable Read Only Memory (EPROM), or Portable Read-Only Memory (Compact Disc Read-Only Memory, CD-ROM) and so on.
存储器15可以存储操作系统,例如ANDROID,IOS,WINDOWS,鸿蒙操作系统或者LINUX嵌入式操作系统等等。The memory 15 can store an operating system, such as ANDROID, IOS, WINDOWS, Hongmeng operating system or LINUX embedded operating system, and so on.
存储器15可用于存储数据(例如众包数据、指纹地图数据)。 Memory 15 may be used to store data (eg crowdsourced data, fingerprint map data).
存储器15还可以存储通信程序,该通信程序可用于与一个或多个服务器或者其他设备进行通信。 Memory 15 may also store communication programs that may be used to communicate with one or more servers or other devices.
存储器15还可以存储一个或多个应用程序。如图示中这些应用程序可包括:地图类应用程序、AR/VR/MR等虚拟场景应用程序、购物类应用程序、生活服务应用程序等等。The memory 15 may also store one or more application programs. As shown in the figure, these applications may include: map applications, virtual scene applications such as AR/VR/MR, shopping applications, life service applications, and the like.
存储器15还可以存储用户界面程序,该用户界面程序可以通过图形化的操作界面将应用程序的内容形象逼真的显示出来并通过显示装置17呈现,以及实现通过菜单、对话框以及按键等输入控件接收用户对应用程序的控制操作。The memory 15 can also store a user interface program, which can vividly display the content of the application program through the graphical operation interface and present it through the display device 17, and realize the reception through input controls such as menus, dialog boxes and keys. The user's control operation on the application.
本申请具体实施例中,存储器15可以存储包括本文所讨论的任意实施例的方法的代码,和/或,功能模块的代码。处理器13用于调用存储器15中的代码,以实现本文任意实施例中移动终端10侧的功能。In specific embodiments of the present application, the memory 15 may store codes including methods of any of the embodiments discussed herein, and/or codes of functional modules. The processor 13 is configured to invoke the code in the memory 15 to implement the functions on the side of the mobile terminal 10 in any of the embodiments herein.
对于服务器20:For server 20:
服务器20可包括一个或多个处理器21、一个或多个存储器23、通信装置22。这些部件可通过总线连接。The server 20 may include one or more processors 21 , one or more memories 23 , a communication device 22 . These components can be connected via a bus.
处理器21可以是处理器13可以包括通用处理器,应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。处理器21主要用于实现对一个或多个多楼层建筑的指纹地图的构建。The processor 21 may be the processor 13 and may include a general-purpose processor, an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), controller, video codec, digital signal processor (DSP), baseband processor, and/or neural-network processing unit (NPU), etc. The processor 21 is mainly used to realize the construction of fingerprint maps of one or more multi-story buildings.
通信装置22用于实现服务器20与移动终端的通信,例如可集成接收器和发射器,其中接收器用于接收各种移动终端发送的数据(例如定位请求、众包数据等),发射器用于向移动终端发送数据(例如定位结果、指纹地图数据等)。The communication device 22 is used to realize the communication between the server 20 and the mobile terminal, for example, a receiver and a transmitter can be integrated, wherein the receiver is used to receive data (such as positioning requests, crowdsourcing data, etc.) sent by various mobile terminals, and the transmitter is used to send data to the mobile terminal. The mobile terminal sends data (eg, positioning results, fingerprint map data, etc.).
存储器23可与处理器21通过总线连接,也可以与处理器21耦合在一起,用于存储各种软件程序和/或多组指令、以及数据(例如指纹地图数据、众包数据等)。具体实现中,存储器23包括但不限于是随机存储记忆体(Random Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、或便携式只读存储器(Compact Disc Read-Only Memory,CD-ROM)。The memory 23 can be connected with the processor 21 through a bus, or can be coupled with the processor 21 for storing various software programs and/or multiple sets of instructions, and data (eg, fingerprint map data, crowdsourced data, etc.). In a specific implementation, the memory 23 includes, but is not limited to, a random access memory (Random Access Memory, RAM), a read-only memory (Read-Only Memory, ROM), an erasable programmable read-only memory (Erasable Programmable Read Only Memory, EPROM), or portable read-only memory (Compact Disc Read-Only Memory, CD-ROM).
本申请具体实施例中,存储器15可以存储包括本文所讨论的任意实施例的方法的代码,和/或,功能模块的代码。处理器21可用于调用存储器23中的程序指令,执行本文任意实施例中服务器侧的功能。In specific embodiments of the present application, the memory 15 may store codes including methods of any of the embodiments discussed herein, and/or codes of functional modules. The processor 21 may be configured to invoke program instructions in the memory 23 to perform the server-side functions in any of the embodiments herein.
本领域技术人员应当理解的是,移动终端10和服务器20还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。图2中示出的设备结构并不构成对对本申请的限定。It should be understood by those skilled in the art that the mobile terminal 10 and the server 20 may also include more or less components than those shown, or combine certain components, or arrange different components. The device structure shown in FIG. 2 does not constitute a limitation to the present application.
另外,本文所使用的术语“耦合”意指直接连接到、或通过一个或多个居间组件或电路来连接。本文所描述的在各种总线上提供的任何信号可以与其他信号进行时间复用并且在一条或多条共用总线上提供。另外,各电路元件或软件块之间的互连可被示为总线或单信号线。每条总线可替换地为单信号线,而每条单信号线可替换地为总线,并且单线或总线可表示用于各组件之间的通信的大量物理或逻辑机制中的任一个或多个。Additionally, the term "coupled" as used herein means connected directly to, or connected through one or more intervening components or circuits. Any of the signals described herein provided on the various buses may be time multiplexed with other signals and provided on one or more shared buses. Additionally, the interconnections between various circuit elements or software blocks may be shown as buses or as single signal lines. Each bus is alternatively a single signal line, and each single signal line is alternatively a bus, and the single line or bus may represent any one or more of a number of physical or logical mechanisms for communication between components .
下面进一步从功能实现层面描述本申请实施例提供的系统架构。The following further describes the system architecture provided by the embodiments of the present application from the level of function implementation.
参见图4,图4是本申请实施例提供的一种可能的系统架构的功能实现框图。该系统架构包括移动终端10和服务器20,如图所示,移动终端10可包括本地定位模块101、用于保存移动终端10采集的众包数据的数据库102、用于保存离线指纹地图的数据库103;移动终端10中的功能模块例如可运行于图3实施例所示的处理器13,移动终端10中的数据库例如可通过图3实施例所示的存储器15来实现数据保存。服务器20可包括指纹地图构建模块201、用于保存来自移动终端10的众包数据的数据库202、用于保存所构建的指纹地图的数据库203、数据规整模块204和云端定位服务模块205。另外,虽然图未示,但移动终端10可包括接收模块和发送模块,分别用于从外界(如服务器)接收数据和发送数据,服务器20也可包括接收模块和发送模块,分别用于从外界(如移动终端)接收数据和发送数据。服务器20中的功能模块例如可运行于图3实施例所示的处理器21,服务器20中的数据库例如可通过图3实施例所示的存储器23来实现数据保存。相关描述如下:Referring to FIG. 4 , FIG. 4 is a functional implementation block diagram of a possible system architecture provided by an embodiment of the present application. The system architecture includes a mobile terminal 10 and a server 20. As shown in the figure, the mobile terminal 10 may include a local positioning module 101, a database 102 for saving crowdsourced data collected by the mobile terminal 10, and a database 103 for saving offline fingerprint maps ; The functional modules in the mobile terminal 10 may, for example, run on the processor 13 shown in the embodiment of FIG. 3 , and the database in the mobile terminal 10 may, for example, store data through the memory 15 shown in the embodiment of FIG. 3 . The server 20 may include a fingerprint map construction module 201 , a database 202 for storing crowdsourced data from the mobile terminal 10 , a database 203 for storing the constructed fingerprint map, a data normalization module 204 and a cloud location service module 205 . In addition, although not shown in the figure, the mobile terminal 10 may include a receiving module and a sending module, which are respectively used to receive data and send data from the outside world (such as a server), and the server 20 may also include a receiving module and a sending module, which are respectively used to send data from the outside world. (such as a mobile terminal) to receive data and send data. The functional modules in the server 20 may run on, for example, the processor 21 shown in the embodiment of FIG. 3 , and the database in the server 20 may, for example, store data through the memory 23 shown in the embodiment of FIG. 3 . The relevant descriptions are as follows:
(1)数据库102:在地图构建阶段,移动终端10可通过数据库102保存移动终端10在多楼层建筑内采集的众包数据,众包数据包括两部分:由传感器采集的运动数据和由信号采集装置采集的位置指纹数据。这里的传感器例如为图3实施例所示的传感器11,比如通过速度计、陀螺仪、磁力计、气压计、GPS等获得相关的数据,这里的信号采集装置例如为图2实施例所示的信号采集装置12,比如WiFi、蓝牙等方式检测周围的AP的射频信息。移动终端10可将自身的众包数据上传至云端服务器20,以支撑服务器对众包数据的采集。(1) Database 102: In the map construction stage, the mobile terminal 10 can store the crowdsourced data collected by the mobile terminal 10 in the multi-story building through the database 102. The crowdsourced data includes two parts: motion data collected by sensors and data collected by signals The location fingerprint data collected by the device. The sensor here is, for example, the sensor 11 shown in the embodiment of FIG. 3 , for example, relevant data is obtained through a speedometer, gyroscope, magnetometer, barometer, GPS, etc., and the signal acquisition device here is, for example, shown in the embodiment of FIG. 2 . The signal collection device 12 detects the radio frequency information of the surrounding APs by means of WiFi, Bluetooth and the like. The mobile terminal 10 can upload its own crowdsourced data to the cloud server 20 to support the server's collection of the crowdsourced data.
(2)数据库103:用于保存移动终端10事先从服务器20上下载的指纹地图数据,以支撑移动终端10在无网络信号或者网络信号较差时的离线定位,所以该指纹地图数据又可称为离线指纹地图。(2) Database 103: used to store the fingerprint map data downloaded by the mobile terminal 10 from the server 20 in advance to support the offline positioning of the mobile terminal 10 when there is no network signal or the network signal is poor, so the fingerprint map data can also be called Fingerprint map for offline.
(3)本地定位模块101:在室内定位阶段,移动终端10根据当前位置采集的位置指纹数据,对服务器20发送定位请求,接收服务器20返回的定位结果。在无网络信号或者网络信号较差的情况下,可以利用事先缓存于数据库203的离线指纹地图进行离线定位,还可以结合传感器、GPS等的数据进行融合定位,以进一步提高室内定位的精确性。(3) Local positioning module 101 : In the indoor positioning stage, the mobile terminal 10 sends a positioning request to the server 20 according to the position fingerprint data collected at the current position, and receives the positioning result returned by the server 20 . In the case of no network signal or poor network signal, offline positioning can be performed by using the offline fingerprint map cached in the database 203 in advance, and fusion positioning can also be performed in combination with data such as sensors and GPS to further improve the accuracy of indoor positioning.
(4)数据库202:用于保存由各种移动终端上传的众包数据,该数据库102可作为服务器20构建指纹地图的数据源。(4) Database 202: used to store crowdsourced data uploaded by various mobile terminals, the database 102 can be used as a data source for the server 20 to construct a fingerprint map.
(5)数据库103:用于保存服务器20所构建的各种多楼层建筑的指纹地图,以支持服务器20对移动终端的室内定位服务,还可支持移动终端对部分或全部的指纹地图的下载。(5) Database 103: used to store the fingerprint maps of various multi-story buildings constructed by the server 20 to support indoor positioning service of the mobile terminal by the server 20, and also support the download of part or all of the fingerprint maps by the mobile terminal.
(6)数据规整模块204:用于实现对各种移动终端上传的众包数据的规整化。例如,对于不同移动终端上传的大量的众包数据,数据规整模块204可通过数据标准校验,识别其中的有效的众包数据;还可根据GPS信息和AP信息(例如WiFi信号特征、蓝牙信号特征等),按照初始网格划分,进行粗粒度按照国家、城市等信息进行分类存储。通过对数据的有效分类以支持不同的多楼层建筑的指纹地图的构建。(6) Data regularization module 204: used to implement regularization of crowdsourced data uploaded by various mobile terminals. For example, for a large amount of crowdsourced data uploaded by different mobile terminals, the data regularization module 204 can verify the valid crowdsourced data through data standard verification; it can also identify valid crowdsourced data according to GPS information and AP information (such as WiFi signal characteristics, Bluetooth signal Features, etc.), according to the initial grid division, the coarse granularity is classified and stored according to the country, city and other information. It supports the construction of fingerprint maps of different multi-story buildings through efficient classification of data.
(7)指纹地图构建模块201:用于根据数据库202构建多楼层建筑的指纹地图。具体的,在构建某一多楼层建筑的指纹地图时,可根据众包数据确定该多楼层建筑中的至少两个楼层各自的平层骨架、以及连接于各平层骨架之间的通道的连接关系,所述通道的连接关系由所述通道在平层骨架上的连接位置和所述通道的构型决定;进而根据所述至少两个楼层各自的平层骨架和所述通道的连接关系,生成该多楼层建筑的指纹地图。(7) Fingerprint map building module 201 : for building a fingerprint map of a multi-story building according to the database 202 . Specifically, when constructing a fingerprint map of a certain multi-story building, the respective leveling skeletons of at least two floors in the multi-story building and the connections of the channels connected to the respective leveling skeletons can be determined according to crowdsourcing data The connection relationship of the channel is determined by the connection position of the channel on the leveling frame and the configuration of the channel; and then according to the connection relationship between the leveling frame of the at least two floors and the channel, Generate a fingerprint map of the multi-story building.
在一种具体的实现中,指纹地图构建模块201还可以包括如下功能模块:In a specific implementation, the fingerprint map construction module 201 may further include the following functional modules:
通道自学习模块,用于根据众包数据确定多楼层建筑中各平层骨架之间的通道在平层骨架上的位置点,还可以用于确定通道的构型。例如,通道自学习模块可以融合移动行为识别结果与跨层事件检测结果,利用平层段拼接平层骨架来初始定位候选的地标点。结合跨层段的WiFi信息相似度和候选的地标点的空间分布联合聚类,以精确定位多楼层建筑的平层骨架上的地标点。The channel self-learning module is used to determine the position of the channel between each leveling frame in the multi-storey building on the leveling frame according to the crowdsourced data, and can also be used to determine the configuration of the channel. For example, the channel self-learning module can fuse the mobile behavior recognition results and the cross-layer event detection results, and use the leveling segment to splicing the leveling skeleton to initially locate the candidate landmark points. Combined with the WiFi information similarity across layers and the spatial distribution of candidate landmark points, joint clustering is used to accurately locate landmark points on the flat skeleton of multi-story buildings.
3D拓扑构建模块,用于根据多楼层建筑的平层骨架、通道的位置点和通道的构型,生成三维拓扑地图。例如,3D拓扑构建模块可针对平层骨架定位出的候选的地标点的上下行连接关系,识别平层骨架间上下行连通关系,进而对平层骨架按照高低关系进行排序,通过对出入口聚类,识别绝对楼层,最后根据识别出的通道的构型,对楼层进行坐标系对齐,从而获得多楼层建筑的3D拓扑地图。The 3D topology building module is used to generate a 3D topology map according to the leveling skeleton of the multi-story building, the location points of the channel and the configuration of the channel. For example, the 3D topology building module can identify the uplink and downlink connections between the leveling skeletons based on the uplink and downlink connections of the candidate landmark points located on the leveling skeletons, and then sort the leveling skeletons according to their high-low relationship. , identify the absolute floor, and finally align the floor with the coordinate system according to the configuration of the identified passage, so as to obtain the 3D topology map of the multi-story building.
地图映射模块,用于将所述三维拓扑地图映射到世界坐标系,获得所述多楼层建筑的指纹地图。例如地图映射模块可根据识别出的出入口GPS、机会GPS点、输出的控制点或者局部楼层地图,将多楼层建筑的3D拓扑地图转换到WGS84坐标系下,从而获得最终的指纹地图(或称3D指纹地图),以实现室内外无缝定位功能。The map mapping module is used for mapping the three-dimensional topological map to the world coordinate system to obtain the fingerprint map of the multi-storey building. For example, the map mapping module can convert the 3D topology map of the multi-story building to the WGS84 coordinate system according to the identified entrance and exit GPS, opportunity GPS points, output control points or local floor maps, so as to obtain the final fingerprint map (or 3D map). Fingerprint map) to achieve seamless indoor and outdoor positioning.
(8)云端定位服务模块205:云端定位服务模块205可提供给移动终端定位服务接口,根据接收到的移动终端的定位请求及位置指纹数据,通过定位算法,利用数据库203中的指纹地图对移动终端进行定位,并将定位结果返回给移动终端。另外,还可将该建筑物的指纹地图推送至移动终端,以支撑移动终端在无网络或者网络信号较差的离线定位功能。(8) Cloud positioning service module 205: The cloud positioning service module 205 can provide the mobile terminal positioning service interface, and according to the received positioning request and position fingerprint data of the mobile terminal, through the positioning algorithm, the fingerprint map in the database 203 is used to locate the mobile terminal. The terminal performs positioning and returns the positioning result to the mobile terminal. In addition, the fingerprint map of the building can also be pushed to the mobile terminal to support the offline positioning function of the mobile terminal when there is no network or poor network signal.
对于下文描述的各方法实施例,为了方便起见,将其都表述为一系列的动作步骤的组合,但是本邻域技术人员应该知悉,本申请技术方案的具体实现并不受所描述的一系列的动作步骤的顺序的限制。For the method embodiments described below, for the sake of convenience, they are all expressed as a combination of a series of action steps, but those skilled in the art should know that the specific implementation of the technical solutions of the present application is not affected by the described series of steps. restrictions on the sequence of action steps.
基于上文描述的系统架构,下面描述本申请实施例提供的一种多楼层建筑的指纹地图的构建方法,参见图5,该方法从服务器侧的角度进行描述,包括但不限于以下步骤:Based on the system architecture described above, the following describes a method for constructing a fingerprint map of a multi-story building provided by an embodiment of the present application. Referring to FIG. 5 , the method is described from the perspective of the server side, including but not limited to the following steps:
S301、接收来自多个移动终端的众包数据,所述众包数据包括所述移动终端在多楼层建筑中跨楼层移动过程采集的运动数据和位置指纹数据。S301. Receive crowdsourced data from multiple mobile terminals, where the crowdsourced data includes motion data and location fingerprint data collected by the mobile terminals in the process of moving across floors in a multi-story building.
其中,运动数据可以是由速度计、陀螺仪、磁力计、GPS等传感器采集的数据,例如运动速度、姿态、旋转角度、移动方向等等。位置指纹数据可以是通过WiFi技术、蓝牙技术扫描到的射频信息,例如WiFi信号强度(Received Signal Strength,RSS)信息、无线访问接入点(Access Point,AP)的数量等等。另外,众包数据中还可以包括通过气压计采集的高度数据。The motion data may be data collected by sensors such as a speedometer, a gyroscope, a magnetometer, and a GPS, such as motion speed, attitude, rotation angle, movement direction, and the like. The location fingerprint data can be radio frequency information scanned by WiFi technology or Bluetooth technology, such as WiFi signal strength (Received Signal Strength, RSS) information, the number of wireless access points (Access Point, AP), and so on. In addition, the crowdsourced data can also include altitude data collected by barometers.
其中,所述多个移动终端可以是不同类型的移动终端,每个移动终端配置的传感器也可以是各有差异。本申请通过各种各样用户的移动终端对众包数据的收集替代了人工数据的采集和人工标注,也无需在室内部署专门的数据采集装置,大大降低了人工物力成本。The multiple mobile terminals may be different types of mobile terminals, and the sensors configured on each mobile terminal may also be different. In the present application, the collection of crowdsourced data by various users' mobile terminals replaces the collection of manual data and manual annotation, and there is no need to deploy a special data collection device indoors, which greatly reduces the cost of labor and material resources.
S302、根据所述众包数据,确定所述多楼层建筑中的至少两个楼层的平层骨架、连接于各平层骨架之间的通道在所述平层骨架上的位置点、以及所述通道的构型。S302. Determine, according to the crowdsourcing data, the leveling frames of at least two floors in the multi-storey building, the position points on the leveling frames of the passages connected between the leveling frames, and the channel configuration.
每个平层骨架对应一个楼层,平层骨架中的每个位置点均与位置指纹数据绑定。通道是用于联系多楼层建筑物不同楼层的通行设施,通道的构型有楼梯、电梯、自动扶梯、爬梯、台阶、坡道等。通道在楼层上的位置点即为通道在楼层上的端点,简单理解就是通道在楼层上的出入口位置,本文中通道的位置点又可称为地标点,所以每个通道都具有成对的地标点。关于平层骨架、地标点、通道构型的概念可参考本申请前后文的相关描述,这里不再赘述。Each leveling skeleton corresponds to a floor, and each location point in the leveling skeleton is bound with the location fingerprint data. The passage is a passage facility used to connect different floors of a multi-storey building. The configuration of the passage includes stairs, elevators, escalators, ladders, steps, ramps, etc. The location point of the passage on the floor is the end point of the passage on the floor. The simple understanding is the position of the entrance and exit of the passage on the floor. In this article, the location point of the passage can also be called the landmark point, so each passage has a pair of ground punctuation. For the concepts of the leveling skeleton, the landmark point, and the channel configuration, reference may be made to the relevant descriptions before and after this application, which will not be repeated here.
本申请一种具体实施例中,生成平层骨架的过程可包括:根据移动终端的运动数据,获 得所述多个移动终端在所述至少两个楼层中的移动轨迹;将所述多个移动终端的移动轨迹进行聚合,以获得所述至少两个楼层的平层骨架;其中,所述平层骨架的每个位置点均有与之对应的位置指纹数据。In a specific embodiment of the present application, the process of generating a leveling skeleton may include: obtaining movement trajectories of the plurality of mobile terminals in the at least two floors according to motion data of the mobile terminals; The movement trajectories of the terminal are aggregated to obtain the leveling skeleton of the at least two floors; wherein, each position point of the leveling skeleton has corresponding position fingerprint data.
本申请一种具体实施例中,确定通道的地标点的位置的过程可包括:根据移动终端的运动数据,获得所述多个移动终端在所述至少两个楼层中的移动轨迹;识别通道在各个所述移动轨迹上的位置点分布;将各个所述移动轨迹和所述至少两个楼层的平层骨架进行匹配,以获得所述通道的所述位置点。In a specific embodiment of the present application, the process of determining the location of the landmark point of the passage may include: obtaining the movement trajectories of the plurality of mobile terminals in the at least two floors according to the movement data of the mobile terminal; distribution of the position points on each of the moving trajectories; matching each of the moving trajectories with the leveling skeletons of the at least two floors to obtain the position points of the passage.
本申请一种具体实施例中,确定通道的构型的过程可包括:根据移动终端的运动数据进行行人航位推算(PDR),获得所述移动终端在所述通道中移动时的PDR信息;所述PDR信息包括速度、步数、距离、高度变化中的一个或多个;根据所述PDR信息,确定所述通道的构型。In a specific embodiment of the present application, the process of determining the configuration of the channel may include: performing pedestrian dead reckoning (PDR) according to the motion data of the mobile terminal, and obtaining PDR information when the mobile terminal moves in the channel; The PDR information includes one or more of changes in speed, number of steps, distance, and height; according to the PDR information, the configuration of the channel is determined.
S303、根据所述至少两个楼层的平层骨架、所述通道的位置点和所述通道的构型,生成所述多楼层建筑的指纹地图。S303: Generate a fingerprint map of the multi-storey building according to the leveling framework of the at least two floors, the location points of the passage, and the configuration of the passage.
具体的,可根据所述至少两个楼层的平层骨架、所述通道的位置点和所述通道的构型,生成3D拓扑地图,3D拓扑地图的构建过程不需要依赖于现有的室内平面地图。然后,将3D拓扑地图映射到世界坐标系,从而获得多楼层建筑的指纹地图,该指纹地图可用于服务器提供在线或者离线的室内全楼层定位服务。Specifically, a 3D topology map can be generated according to the leveling framework of the at least two floors, the location points of the passage, and the configuration of the passage, and the construction process of the 3D topology map does not need to depend on the existing indoor plane. map. Then, the 3D topology map is mapped to the world coordinate system to obtain the fingerprint map of the multi-story building, which can be used by the server to provide online or offline indoor full-floor location services.
可以看到,本申请实施例通过多个移动终端和服务器的交互,服务器可充分利用各种各样的移动终端采集的众包数据构建多楼层建筑的指纹地图,替代了人工数据的采集和人工标注,且能无地图依赖地实现3D拓扑地图的构建,无需在室内部署专门的数据采集装置,大大降低了人工物力成本。另外,本申请实施例通过利用通道的地标点位置、成对地标点的上下行连接关系、通道构型,自动化创建多楼层的3D拓扑地图,解决现有技术中地图构建依赖人工编辑的问题,提升了指纹地图生成的效率和准确性。It can be seen that in the embodiment of the present application, through the interaction between multiple mobile terminals and the server, the server can make full use of the crowdsourced data collected by various mobile terminals to construct a fingerprint map of a multi-story building, replacing the collection of manual data and manual labor. It can also realize the construction of 3D topology map without map dependence, without deploying special data acquisition devices indoors, which greatly reduces the cost of labor and material resources. In addition, the embodiment of the present application automatically creates a multi-floor 3D topology map by using the landmark position of the channel, the uplink and downlink connection relationship of the paired landmark points, and the channel configuration, so as to solve the problem that the map construction in the prior art relies on manual editing, Improved the efficiency and accuracy of fingerprint map generation.
下面描述基于指纹地图的室内定位方法,该方法具体包括两类:在线定位方法和离线定位方法。下面分别以端-云交互的方式进行描述。The indoor positioning method based on fingerprint map is described below, and the method includes two types: online positioning method and offline positioning method. The following descriptions are respectively described in the way of terminal-cloud interaction.
参见图6A,图6A示出了一种在线定位方法,该包括但不限于以下步骤:Referring to FIG. 6A, FIG. 6A shows an online positioning method, which includes but is not limited to the following steps:
S311、移动终端采集该移动终端在多楼层建筑中的实时的位置指纹数据;所述位置指纹数据包括无线访问接入点(AP)的数量和/或信号强度。例如该AP用于产生WiFi信号,则位置指纹数据可包括该移动终端在当前位置扫描/检测的AP数量和/或WiFi信号强度。S311. The mobile terminal collects real-time location fingerprint data of the mobile terminal in a multi-storey building; the location fingerprint data includes the number and/or signal strength of wireless access points (APs). For example, the AP is used to generate WiFi signals, and the location fingerprint data may include the number of APs and/or WiFi signal strengths scanned/detected by the mobile terminal in the current location.
其中,移动终端的当前位置可以是在楼层中,也可以是在楼层的通道内。Wherein, the current position of the mobile terminal may be in the floor, or may be in the passage of the floor.
S312、移动终端向服务器发送定位请求和所述位置指纹数据,所述定位请求用于请求服务器提供在线定位服务。S312. The mobile terminal sends a positioning request and the position fingerprint data to the server, where the positioning request is used to request the server to provide an online positioning service.
S313、服务器将所述位置指纹数据与预先构建的指纹地图进行匹配,从而获得定位结果;其中,所述指纹地图可以是所述服务器预先根据由多个移动终端的众包数据确定的所述多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;有关于所述指纹地图的具体生成过程可参考本申请的前后文的相关实施例的描述,这里不再赘述。S313. The server matches the location fingerprint data with a pre-built fingerprint map, thereby obtaining a positioning result; wherein the fingerprint map may be the multiple pre-determined by the server according to crowdsourcing data of multiple mobile terminals. It is generated from the leveling skeleton of the floor building, the position points on the leveling skeleton and the configuration of the passage; for the specific generation process of the fingerprint map, please refer to the description of the relevant embodiments in the context of this application , which will not be repeated here.
S314、服务器向移动终端发送定位结果,相应的,移动终端接收所述定位结果,所述定位结果用于指示该移动终端在所述多楼层建筑中的实时位置,所述实时位置相应为该移动终端在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。S314. The server sends a positioning result to the mobile terminal. Accordingly, the mobile terminal receives the positioning result, and the positioning result is used to indicate the real-time position of the mobile terminal in the multi-storey building, and the real-time position corresponds to the mobile terminal. The location of the terminal in a floor of the multi-story building or in a passageway between two floors.
其中,该定位结果可支持后续的用户室内导航、位置搜索、AR/VR/MR或广告推送等等 服务,本申请不做限定。The positioning result may support subsequent services such as user indoor navigation, location search, AR/VR/MR or advertisement push, which is not limited in this application.
在本申请的一种实际应用中,本申请的方法可以以室内定位服务软件的形式呈现,部署于移动终端的操作系统层,通过API接口供应用层LBS使用。当用户需要定位的时候,智能移动终端系的操作系统层通过向云端的服务器发起定位请求,服务器将定位结果返回终端设备系统层,最后通过API接口上传到应用层,从而使得用户获得定位结果。In a practical application of the present application, the method of the present application may be presented in the form of indoor positioning service software, deployed in the operating system layer of the mobile terminal, and used by the application layer LBS through an API interface. When the user needs positioning, the operating system layer of the intelligent mobile terminal system initiates a positioning request to the server in the cloud, the server returns the positioning result to the system layer of the terminal device, and finally uploads it to the application layer through the API interface, so that the user can obtain the positioning result.
可以看到,通过在线定位的方式,云端服务器可提供给移动终端定位服务接口,根据接收到的移动终端的定位请求及位置指纹数据,通过定位算法,利用最新的指纹地图对移动终端进行定位,并将定位结果返回给移动终端,提升移动终端室内定位的便捷性,节省数据存储开销。It can be seen that through the method of online positioning, the cloud server can provide the mobile terminal positioning service interface. According to the received positioning request and position fingerprint data of the mobile terminal, the mobile terminal can be positioned by using the latest fingerprint map through the positioning algorithm. The positioning result is returned to the mobile terminal, which improves the convenience of indoor positioning of the mobile terminal and saves data storage overhead.
参见图6B,图6B示出了一种离线定位方法,该包括但不限于以下步骤:Referring to FIG. 6B, FIG. 6B shows an offline positioning method, which includes but is not limited to the following steps:
S321、移动终端预先从服务器下载指纹地图并保存,所述指纹地图可以是所述服务器预先根据由多个移动终端的众包数据确定的多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;有关于所述指纹地图的具体生成过程可参考本申请的前后文的相关实施例的描述,这里不再赘述。S321. The mobile terminal downloads and saves a fingerprint map from the server in advance, and the fingerprint map may be a leveling skeleton of a multi-story building determined by the server in advance according to crowdsourcing data of multiple mobile terminals, on the leveling skeleton The location point of the fingerprint map and the configuration of the channel are generated; for the specific generation process of the fingerprint map, reference may be made to the description of the relevant embodiments in the context of the present application, which will not be repeated here.
S322、移动终端采集该移动终端在所述多楼层建筑中的实时的位置指纹数据;所述位置指纹数据包括无线访问接入点(AP)的数量和/或信号强度。例如该AP用于产生WiFi信号,则位置指纹数据可包括该移动终端在当前位置扫描/检测的AP数量和/或WiFi信号强度。S322. The mobile terminal collects real-time location fingerprint data of the mobile terminal in the multi-storey building; the location fingerprint data includes the number and/or signal strength of wireless access points (APs). For example, the AP is used to generate WiFi signals, and the location fingerprint data may include the number of APs and/or WiFi signal strengths scanned/detected by the mobile terminal in the current location.
其中,移动终端的当前位置可以是在楼层中,也可以是在楼层的通道内。Wherein, the current position of the mobile terminal may be in the floor, or may be in the passage of the floor.
S323、移动终端将所述位置指纹数据与所保存的指纹地图进行匹配,获得定位结果,例如获得所述第一移动终端在所述多楼层建筑中的实时位置,所述实时位置为在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。S323. The mobile terminal matches the location fingerprint data with the stored fingerprint map to obtain a positioning result, for example, obtains the real-time location of the first mobile terminal in the multi-storey building, where the real-time location is in the A location in a floor in a multi-story building or in a passageway between two floors.
具体的,该定位结果可支持后续的用户室内导航、位置搜索、AR/VR/MR或广告推送等等服务,本申请不做限定。Specifically, the positioning result may support subsequent services such as user indoor navigation, location search, AR/VR/MR or advertisement push, which is not limited in this application.
可以看到,通过离线定位的方式,可以在无网络信号或者网络信号较差的情况下,利用事先缓存于的指纹地图进行离线定位,另外也可以有利于结合传感器、GPS等的数据进行融合定位,以进一步提高室内定位的精确性。It can be seen that the offline positioning method can use the fingerprint map cached in advance for offline positioning when there is no network signal or the network signal is poor. In addition, it is also beneficial to combine the data of sensors, GPS, etc. for fusion positioning. , to further improve the accuracy of indoor positioning.
为了更好理解本申请的定位方法,下面以一种应用场景为例进行描述。需要说明的是该应用场景仅用于对本申请方案的一种示例性解释,而非对本申请方案的限制。In order to better understand the positioning method of the present application, an application scenario is used as an example for description below. It should be noted that this application scenario is only used for an exemplary explanation of the solution of the present application, rather than a limitation of the solution of the present application.
参见图7,移动终端以一种手机10为例,在手机10处于某个多楼层建筑(例如某多楼层的商场)中,例如用户正携带该手机10在该商场中行走,且该手机10已启动WiFi定位功能,该应用场景可以是在线定位场景,也可以是离线定位场景。Referring to FIG. 7 , a mobile phone 10 is used as an example for the mobile terminal. The mobile phone 10 is located in a multi-floor building (eg, a shopping mall with multiple floors), for example, a user is walking in the shopping mall with the mobile phone 10 The WiFi positioning function has been activated. The application scenario can be an online positioning scenario or an offline positioning scenario.
如图7所示,手机10中安装有某种地图应用,图7中的(1)示出了手机10的显示面板上的桌面101。当电子设备检测到用户点击桌面101上的地图应用的图标102的操作后,在电子设备10的显示面板上显示如图7中的(2)所示的该应用的一个用户界面104,这里的用户界面104中包括电子地图的界面以及多个控件,如图示中包括电子地图控件,卫星地图控件和室内地图控件103。As shown in FIG. 7 , a certain map application is installed in the mobile phone 10 , and ( 1 ) in FIG. 7 shows the desktop 101 on the display panel of the mobile phone 10 . When the electronic device detects that the user clicks the icon 102 of the map application on the desktop 101, a user interface 104 of the application as shown in (2) in FIG. 7 is displayed on the display panel of the electronic device 10, where the The user interface 104 includes an electronic map interface and a plurality of controls, such as an electronic map control, a satellite map control and an indoor map control 103 as shown in the figure.
当手机10检测到用户点击室内地图控件103后,在显示面板上显示如图7中的(3)所示的该应用的用户界面105,该用户界面105中显示了用户当前在该商场1楼中的实时位置。当用户在商场内继续行走时,用户界面105中显示的用户实时位置也会发生相应更新。When the mobile phone 10 detects that the user clicks on the indoor map control 103, the user interface 105 of the application as shown in (3) in FIG. 7 is displayed on the display panel, and the user interface 105 shows that the user is currently on the first floor of the shopping mall real-time location in . When the user continues to walk in the mall, the real-time location of the user displayed in the user interface 105 will also be updated accordingly.
当用户发生跨楼层移动时,用户界面105也会将在跨楼层移动的过程进行无缝衔接显示。如图7中的(4)所示,当用户乘坐自动扶梯(当然还可以使用其他通道,例如电梯,楼梯等)上商场2楼时,通过用户界面106中显示当前位置为在由1楼通往2楼的自动扶梯中,并且还可以显示当前实时的高度。When the user moves across floors, the user interface 105 will also seamlessly display the process of moving across floors. As shown in (4) in FIG. 7 , when the user takes the escalator (of course, other passages, such as elevators, stairs, etc.) can be used to go to the second floor of the shopping mall, the user interface 106 displays the current location as being on the first floor. Go to the escalator on the 2nd floor, and the current real-time altitude can also be displayed.
在用户到达2楼后,如图7中的(5)所示,通过用户界面107继续显示用户当前在该商场2楼中的实时位置。After the user arrives on the second floor, as shown in (5) in FIG. 7 , the user's current real-time location on the second floor of the shopping mall continues to be displayed through the user interface 107 .
可以看到,实施本申请实施例,既能够实现在各个楼层中的单点准确定位,例如1楼、2楼、通道中的定位,在跨楼层移动中,也能够实时显示跨楼层过程中(例如1楼到2楼)连续定位的3D效果,实现精确地、无缝连接的跨楼层间的3D过渡效果,不同楼层间定位时无需切换即可完成,并能实时显示准确高度。所以,本申请实施例能够提升室内定位的效率和准确性,提升用户使用体验。It can be seen that, by implementing the embodiment of the present application, it is possible to realize accurate positioning of a single point in each floor, such as the positioning in the first floor, the second floor, and the passage, and in the process of moving across floors, it can also display the process of crossing floors in real time ( For example, the 3D effect of continuous positioning from the 1st floor to the 2nd floor can realize the accurate and seamless 3D transition effect between floors. It can be completed without switching when positioning between different floors, and the accurate height can be displayed in real time. Therefore, the embodiments of the present application can improve the efficiency and accuracy of indoor positioning, and improve user experience.
为了更好理解本申请的指纹地图建构方案,下面对服务器20中的指纹地图构建模块201的具体功能进行描述。参见图8,图8是一种多楼层建筑的指纹地图建构过程的一种示例流程图。In order to better understand the fingerprint map construction solution of the present application, the specific functions of the fingerprint map construction module 201 in the server 20 are described below. Referring to FIG. 8, FIG. 8 is an exemplary flowchart of a fingerprint map construction process of a multi-story building.
如图8所示,服务器在获得多个移动终端的众包数据后,一方面,可基于可以基于这些众包数据生成多楼层建筑的至少两个楼层的平层骨架。例如,服务器根据众包数据中的运动数据,获得所述多个移动终端在所述至少两个楼层中的移动轨迹,然后,将所述多个移动终端的移动轨迹进行聚合,以获得所述至少两个楼层的平层骨架;其中,平层骨架的每个位置点均有与之对应的位置指纹数据。As shown in FIG. 8 , after obtaining the crowdsourcing data of the multiple mobile terminals, the server may, on the one hand, generate the leveling skeleton of at least two floors of the multi-storey building based on the crowdsourcing data. For example, the server obtains the movement trajectories of the plurality of mobile terminals in the at least two floors according to the movement data in the crowdsourced data, and then aggregates the movement trajectories of the plurality of mobile terminals to obtain the The leveling skeleton of at least two floors; wherein, each position point of the leveling skeleton has corresponding position fingerprint data.
另一方面,可将移动终端的众包数据分别通过指纹地图构建模块中的通道自学习模块、三维拓扑构建模块和地图映射模块进行处理,进而输出该多楼层建筑的指纹地图。其中在通道自学习模块的处理过程中,可进一步包括单轨迹通道检测、骨架候选通道检测和骨架精确通道定位这几个处理阶段。在三维拓扑构建模块的处理过程中,可进一步包括多层骨架排序、绝对楼层识别和多层骨架对齐这几个处理阶段。在地图映射模块的处理过程中,可进一步包括基层出入口检测和绝对坐标映射这几个处理阶段。下文将通过具体的示例展开详细描述。On the other hand, the crowdsourced data of the mobile terminal can be processed through the channel self-learning module, the three-dimensional topology building module and the map mapping module in the fingerprint map building module respectively, and then the fingerprint map of the multi-storey building can be output. The processing of the channel self-learning module may further include processing stages of single-track channel detection, skeleton candidate channel detection, and skeleton accurate channel positioning. In the processing of the 3D topology building block, it may further include several processing stages of multi-layer skeleton sorting, absolute floor recognition and multi-layer skeleton alignment. In the processing process of the map mapping module, it may further include several processing stages of base-level entrance and exit detection and absolute coordinate mapping. The following will be described in detail through specific examples.
首先描述关于通道自学习模块的具体实施例。本申请实施例中,通道自学习模块可用于根据众包数据确定多楼层建筑中至少两个楼层的平层骨架之间的通道在平层骨架上的位置点,还用于确定通道的构型。First, a specific embodiment about the channel self-learning module is described. In the embodiment of the present application, the channel self-learning module can be used to determine the position of the channel between the leveling frameworks of at least two floors in a multi-story building on the leveling framework according to crowdsourcing data, and also to determine the configuration of the channel .
参见图9,图9示出了通道自学习模块的一种可能的实施逻辑的流程示意图。该流程包括如下几个阶段:Referring to FIG. 9, FIG. 9 shows a schematic flowchart of a possible implementation logic of the channel self-learning module. The process includes the following stages:
S401:基于跨层信息融合实现单轨迹通道检测阶段。S401: Implement a single track channel detection stage based on cross-layer information fusion.
众包数据包括运动数据,运动数据为通过至少一个传感器采集的数据,所述至少一个传感器包括加速度计、陀螺仪、磁力计、惯性测量单元中的至少一者。通过该阶段,可根据运动数据获得所述多个移动终端在至少两个楼层中的移动轨迹,并识别通道在各个所述移动轨迹上的位置点(地标点)分布。The crowdsourced data includes motion data, which is data collected by at least one sensor including at least one of an accelerometer, a gyroscope, a magnetometer, and an inertial measurement unit. Through this stage, the movement trajectories of the plurality of mobile terminals in at least two floors can be obtained according to the motion data, and the distribution of the location points (landmark points) of the passage on each of the movement trajectories can be identified.
在一种实现中,可根据所述移动终端的运动数据,识别在所述移动轨迹上出现用户行为变化的位置,所述用户行为变化是指在所述楼层上的用户行为和在所述通道上的用户行为之间的转变,然后根据所述出现用户行为变化的位置,确定所述通道在所述移动轨迹上的位置点分布。In one implementation, a position where a user behavior change occurs on the movement track may be identified according to the motion data of the mobile terminal, where the user behavior change refers to the user behavior on the floor and the passageway. Then, according to the position where the user behavior change occurs, the position point distribution of the channel on the moving track is determined.
在又一种实现中,所述众包数据既包括运动数据还包括通过气压计采集的高度数据;那么,可根据所述移动终端的运动数据,识别在所述移动轨迹上出现用户行为变化的位置;所述用户行为变化是指在所述楼层上的用户行为和在所述通道上的用户行为之间的转变;根据移动终端的高度数据,识别在所述移动轨迹上出现跨层事件的位置。然后,根据所述出现用户行为变化的位置和所述出现跨层事件的位置进行融合处理,从而确定通道在所述移动轨迹上的位置点分布。例如,对用户行为识别结果进行滤波预处理,获得连续准确的跨层切换状态。利用气压计的高度数据反演的高度变化数据进行卡尔曼滤波,利用高度变化拐点检测跨层切换状态。根据输出的行为识别状态的准确度与气压计跨层检测的准确度进行加权融合,融合时序跨层状态,通过设定阈值进一步精确判定跨层状态切换点,并根据时戳信息与PDR轨迹对应,输出单轨迹地标点检测结果。该过程还可以详细描述如下:In yet another implementation, the crowdsourced data includes both motion data and altitude data collected by a barometer; then, according to the motion data of the mobile terminal, it is possible to identify the user behavior change on the movement track. position; the user behavior change refers to the transition between the user behavior on the floor and the user behavior on the passage; according to the height data of the mobile terminal, identify the occurrence of cross-floor events on the moving track Location. Then, fusion processing is performed according to the position where the user behavior change occurs and the position where the cross-layer event occurs, so as to determine the position point distribution of the channel on the moving track. For example, filtering and preprocessing the user behavior recognition results to obtain continuous and accurate cross-layer switching states. Kalman filtering is performed on the height change data retrieved from the height data of the barometer, and the cross-layer switching state is detected by the height change inflection point. According to the accuracy of the output behavior recognition state and the accuracy of the barometer cross-layer detection, the weighted fusion is carried out, the time series cross-layer state is fused, and the cross-layer state switching point is further accurately determined by setting the threshold, and corresponding to the PDR trajectory according to the timestamp information. , and output the single-track landmark detection results. The process can also be described in detail as follows:
(I)用户行为识别及处理:(I) User behavior identification and processing:
服务器可以通过行为识别程序输出行人携带手机行走的各种状态,包括上下楼梯、电梯、扶梯等状态,因此可以借助行为识别输出的状态,进行跨层状态检测。原始行为识别输出状态存在离散情况,因此首先需要对状态进行时序滤波,得到连续的楼层切换状态,然后对连续状态进行起终点检测。The server can output various states of pedestrians walking with mobile phones through the behavior recognition program, including the states of going up and down stairs, elevators, escalators, etc. Therefore, cross-layer state detection can be performed with the help of behavior recognition output states. There is a discrete situation in the original behavior recognition output state, so it is first necessary to perform sequential filtering on the state to obtain a continuous floor switching state, and then detect the start and end points of the continuous state.
处理流程如图10所示,在图10中的(1),可通过机器学习方式训练传感器行为模型,并对各时刻用户行为进行预测,例如在用户移动过程中即包括了在楼层内步行的行为,也包括了在通道(如电梯)中上行的行为。在图10中的(2),可对(1)中输入的结果进行滤波,滤波过程中取一段数据窗口,将右近邻窗口内出现频次最多的状态值赋予当前时刻,并将当前检测结果的置信度设置为该状态在当前窗口内的频次比例,进而输出结果如图10中的(3)所示,多段的电梯上行的行为被整合成了一种连续的电梯上行行为,多段的用户步行的行为被整合成了一种连续的步行行为。用户行为出现变化的地方(楼层行为和电梯行为)即为通道(电梯)的起点和终点。The processing flow is shown in Figure 10. In (1) of Figure 10, the sensor behavior model can be trained through machine learning, and the user behavior can be predicted at each moment. For example, the user's movement process includes walking on the floor. Behavior, also includes the behavior of going up in a corridor (such as an elevator). In (2) in Figure 10, the result input in (1) can be filtered, a segment of data window is taken during the filtering process, the state value with the most frequent occurrence in the right neighbor window is assigned to the current moment, and the current detection result is The confidence is set as the frequency ratio of the state in the current window, and the output result is shown in (3) in Figure 10. The multi-segment elevator upward behavior is integrated into a continuous elevator upward behavior, and the multi-segment user walks The behavior is integrated into a continuous walking behavior. The places where the user behavior changes (floor behavior and elevator behavior) are the start and end points of the passage (elevator).
(II)基于气压计数据跨层状态检测:(II) Cross-layer state detection based on barometer data:
气压计能够反映行走过程中高度变化,通过行走过程中气压计输出的气压值,反演出移动终端的海拔高度,见公式①,利用高度曲线进行跨层切换点检测。The barometer can reflect the altitude change during the walking process, and the altitude of the mobile terminal can be inverted through the air pressure value output by the barometer during the walking process.
Figure PCTCN2021114822-appb-000001
Figure PCTCN2021114822-appb-000001
其中,height表示高度值,pressure表示气压值。Among them, height represents the height value, and pressure represents the air pressure value.
原始的高度值会存在较大的波动,首先需要进行滤波处理,本申请实施例可分别采用了中值滤波和卡尔曼滤波来平滑高度曲线,在平滑的高度曲线上检测高度变化的切换点。其中中值滤波用于去除无效数据,卡尔曼滤波用于平滑高度曲线。The original height value may fluctuate greatly, and filtering processing is required first. In the embodiment of the present application, median filtering and Kalman filtering can be used to smooth the height curve, and the switching point of height change can be detected on the smooth height curve. The median filter is used to remove invalid data, and the Kalman filter is used to smooth the height curve.
具体处理流程如图10所示,在图10中的(4),通过气压计获得气压值变化曲线,由于该曲线存在较多无效数据和噪声,需进行滤波处理。滤波完成之后可以获得高度变化曲线,如图10中的(5)所示。在图10中的(6),可以进行拐点检测,检测高度变化拐点,拐点对应楼层切换开始和结束时刻,即对应到楼梯口、电梯口、扶梯口等地标点。通过检测高度变化曲线上的峰点和谷点即可判定是否发生跨层事件。其中高度变化曲线大于0的峰点表示局部高度上升最快的时刻,对应的即为上楼事件,小于0的谷点则对应局部高度下降最快的时刻,对应的是下楼事件。通过检测变化曲线上的峰谷点即可检测是否发生跨层。然后利用划窗检测高度曲线上峰谷点两端的高度变化平缓区域,通过定位高度变化到平缓的拐点即可定位跨层切换点。同时根据变化曲线变化率赋予检测区段内检测状态置信度,变化率绝对值越 大,置信度越大。上述实现逻辑可用如下公式②体现:The specific processing flow is shown in FIG. 10 . In (4) of FIG. 10 , the barometric pressure value change curve is obtained through the barometer. Since the curve has more invalid data and noise, filtering processing is required. After the filtering is completed, the height change curve can be obtained, as shown in (5) in Figure 10. In (6) in Figure 10, inflection point detection can be performed to detect the inflection point of height change, and the inflection point corresponds to the start and end time of floor switching, that is, it corresponds to landmark points such as stair entrance, elevator entrance, and escalator entrance. By detecting the peaks and valleys on the height change curve, it can be determined whether a cross-layer event occurs. The peak point of the height change curve greater than 0 represents the moment when the local height rises the fastest, corresponding to the upstairs event, and the valley point less than 0 corresponds to the moment when the local height drops the fastest, corresponding to the downstairs event. The occurrence of cross-layer can be detected by detecting the peak and valley points on the change curve. Then, the flat area of height change at both ends of the peak and valley points on the height curve is detected by scribing the window, and the cross-layer switching point can be located by locating the height change to the gentle inflection point. At the same time, the confidence of the detection state in the detection section is given according to the change rate of the change curve. The greater the absolute value of the change rate, the greater the confidence. The above implementation logic can be represented by the following formula ②:
Figure PCTCN2021114822-appb-000002
Figure PCTCN2021114822-appb-000002
其中h 0为高度变化率门限,设为检测起终点高度变化率绝对值的均值(h s+h e)/2,h Δ为高度变化率绝对值。γ为敏感系数,设为0.5。 Where h 0 is the height change rate threshold, which is set as the mean value of the absolute value of the height change rate at the start and end points of detection (h s + he )/2, and h Δ is the absolute value of the height change rate. γ is the sensitivity coefficient, which is set to 0.5.
(III)基于用户行为识别和跨层事件检测的融合处理:(III) Fusion processing based on user behavior recognition and cross-layer event detection:
可根据行为识别获得的状态置信度与气压计检测获得的状态置信度进行加权融合,获得最终状态置信度,赋予气压计检测结果较高的权重,例如,可将气压计的跨层事件检测的结果的权重设置为0.7,用户行为识别的结果的权重设置0.3,根据最终的状态置信度设定阈值判定连续状态的起终点。该起终点的位置即为通道(如电梯)在移动轨迹(例如PDR轨迹)上的地标点的位置。The state confidence obtained by behavior recognition and the state confidence obtained by barometer detection can be weighted and fused to obtain the final state confidence, and a higher weight can be given to the barometer detection result. The weight of the result is set to 0.7, the weight of the result of user behavior recognition is set to 0.3, and the threshold is set according to the final state confidence to determine the starting and ending points of the continuous state. The position of the starting and ending point is the position of the landmark point of the passage (eg, the elevator) on the moving track (eg, the PDR track).
此外,可以根据运动数据和/或高度数据进行行人航位推算(PDR),获得移动终端在通道中移动时的PDR信息,所述PDR信息包括速度、步数、距离、高度变化中的一个或多个。根据所述PDR信息,确定通道的构型。例如,在进行行人航位推算(PDR)获得PDR轨迹后,根据检测出的起终点时戳,对应PDR轨迹时戳,确定起止点在轨迹中的位置,实现单轨迹地标点检测。同时根据PDR检测的起止点间的行为识别状态、速度/步数、距离、高度变化等等,从而区分该通道的具体构型,例如楼梯、电梯或自动扶梯等等,并赋予该通道相应上下行方向属性。In addition, pedestrian dead reckoning (PDR) can be performed according to motion data and/or altitude data to obtain PDR information when the mobile terminal moves in the channel, the PDR information including one or more of speed, number of steps, distance, and altitude change indivual. Based on the PDR information, the configuration of the channel is determined. For example, after the pedestrian dead reckoning (PDR) is performed to obtain the PDR trajectory, according to the detected start and end time stamps, corresponding to the PDR trajectory time stamps, the position of the start and end points in the trajectory is determined to realize single-track landmark point detection. At the same time, according to the behavior between the starting and ending points detected by the PDR, the status, speed/step number, distance, height change, etc. are identified, so as to distinguish the specific configuration of the passage, such as stairs, elevators or escalators, etc., and assign the passage corresponding up and down row direction property.
可以看到,由于目前包含气压计的移动终端占比较小,需要增大众包数据量就需要将大量没有气压计的收集数据利用起来,而运动传感器(加速度计、陀螺仪、磁力计)能够反映用户的行走方向,并且根据现有的手机行为识别APP可以输出用户手持手机行走的各种行为状态,包括用户在楼梯、电梯、自动扶梯等等通道上的用户行为状态,因此,本申请实施例一方面可以利用移动终端的行为识别输出的状态信息检测跨层。另一方面,带有气压计的移动终端可以根据气压反应的高度变换检测显著高度变化切换点来检测通道的地标点。进一步可以融合行为识别结果和气压计跨层事件结果来确定通道的地标点,实现鲁棒性的通道的地标点的预测,提高了预测质量和准确度。It can be seen that since the current proportion of mobile terminals containing barometers is relatively small, it is necessary to use a large amount of collected data without barometers to increase the amount of data in the public package, and motion sensors (accelerometers, gyroscopes, magnetometers) can reflect The user's walking direction, and according to the existing mobile phone behavior identification APP can output various behavior states of the user walking with the mobile phone, including the user behavior state of the user on stairs, elevators, escalators, etc., therefore, the embodiment of the present application On the one hand, the state information output by the behavior recognition of the mobile terminal can be used to detect cross-layers. On the other hand, the mobile terminal with the barometer can detect the landmark point of the channel by detecting the significant height change switching point according to the height change of the air pressure response. Further, the behavior recognition results and the barometer cross-layer event results can be combined to determine the landmark points of the channel, so as to realize the prediction of the landmark points of the channel robustly, and improve the prediction quality and accuracy.
S402:对平层骨架的候选地标点的检测阶段。S402 : the detection stage of the candidate landmark points of the leveling skeleton.
在通过前述S401识别通道在各个移动轨迹上的位置点(地标点)分布后,服务器可基于所述移动轨迹上的位置点分布,将所述移动轨迹切分为平层段轨迹和跨层段轨迹;通过K近邻(K Nearest Neighbors,KNN)算法将所述平层段轨迹和所述平层骨架进行匹配,获得所述通道在所述平层骨架上的多个候选位置点。After identifying the distribution of the location points (landmark points) of the channel on each moving track through the aforementioned S401, the server may divide the moving track into a flat segment track and a cross-segment segment based on the location point distribution on the moving track. Track; match the leveling segment track with the leveling skeleton through the K Nearest Neighbors (KNN) algorithm to obtain multiple candidate position points of the channel on the leveling skeleton.
具体的,如图11所示,可利用移动终端的单移动轨迹的地标点的检测结果,将各跨层的移动轨迹(例如PDR轨迹)切分成两段平层段轨迹(例如图中的平层段1和平层段2)和一段跨层段,平层段轨迹首先与各平层骨架进行有效AP重合度计算,AP重合度最大的即为匹配上的平层骨架,然后在匹配上的平层骨架中按照KNN配准算法,将平层段轨迹配准至平层骨架上,利用平层段轨迹所带的地标点的标记,配准经过坐标转换之后,即可获得平层骨架上地标点的位置。跨层段轨迹用于后续的指纹聚类,以获得更精确的地标点位置。Specifically, as shown in FIG. 11 , the detection results of the landmark points of a single movement track of the mobile terminal can be used to divide each cross-layer movement track (eg, PDR track) into two levels of leveling segment tracks (eg, the leveling track in the figure). Segment 1 and leveling segment 2) and a cross-level segment, the leveling segment trajectory is first calculated with the effective AP coincidence degree of each leveling skeleton. In the layer skeleton, according to the KNN registration algorithm, the track of the leveling segment is registered to the leveling skeleton, and the ground on the leveling skeleton can be obtained after coordinate transformation by using the marks of the landmark points carried by the track of the leveling segment. The location of the punctuation. Cross-segment trajectories are used for subsequent fingerprint clustering to obtain more precise landmark locations.
需要说明的是,传统的匹配方法一般采用最相似匹配算法,即选择与待匹配点WiFi相似度最大的点作为匹配点,其中WiFi相似度定义为:假设参考轨迹中第i个步点扫描到m个AP则其指纹定义为:
Figure PCTCN2021114822-appb-000003
对于待拼轨迹 中第j个步点扫描到n个AP则定义为:
Figure PCTCN2021114822-appb-000004
Figure PCTCN2021114822-appb-000005
Figure PCTCN2021114822-appb-000006
Figure PCTCN2021114822-appb-000007
两个指纹点的相似度
Figure PCTCN2021114822-appb-000008
定义为:
It should be noted that the traditional matching method generally adopts the most similar matching algorithm, that is, the point with the largest WiFi similarity with the point to be matched is selected as the matching point, where the WiFi similarity is defined as: assuming that the i-th step point in the reference trajectory scans The fingerprints of m APs are defined as:
Figure PCTCN2021114822-appb-000003
For the jth step point in the track to be spelled to scan n APs, it is defined as:
Figure PCTCN2021114822-appb-000004
Figure PCTCN2021114822-appb-000005
but
Figure PCTCN2021114822-appb-000006
and
Figure PCTCN2021114822-appb-000007
Similarity of two fingerprint points
Figure PCTCN2021114822-appb-000008
defined as:
Figure PCTCN2021114822-appb-000009
Figure PCTCN2021114822-appb-000009
Figure PCTCN2021114822-appb-000010
Figure PCTCN2021114822-appb-000010
其中U为两条指纹AP的并集,且当
Figure PCTCN2021114822-appb-000011
Figure PCTCN2021114822-appb-000012
where U is the union of two fingerprint APs, and when
Figure PCTCN2021114822-appb-000011
Figure PCTCN2021114822-appb-000012
因此当采用最相似匹配算法时,会受到骨架上毛刺轨迹、离群点、骨架上AP无序性等的影响,造成WiFi最相似的点不是匹配点的情况。Therefore, when the most similar matching algorithm is used, it will be affected by the burr trajectory on the skeleton, outliers, AP disorder on the skeleton, etc., resulting in the situation that the most similar points in WiFi are not matching points.
而本申请实施例将平层段寻找匹配的平层骨架主要是利用AP交集个数,选择AP交集个数最多的平层骨架为匹配的平层骨架,然后在匹配的平层骨架上通过KNN配准算法逐个寻找匹配点。采用KNN匹配算法能在一定程度上减少以上误差的干扰。However, in this embodiment of the present application, the leveling segment is mainly used to find a matching leveling skeleton by using the number of AP intersections, selecting the leveling skeleton with the largest number of AP intersections as the matching leveling skeleton, and then passing KNN on the matching leveling skeleton. The registration algorithm finds matching points one by one. Using the KNN matching algorithm can reduce the interference of the above errors to a certain extent.
下面以图12为例解释一种采用KNN匹配算法确定候选地标点的过程,如图12所示,切分出的平层段轨迹包括平层段1和平层段1,首先可根据AP交集个数,从多楼层建筑的平层骨架集合中确定出与平层段匹配的平层骨架。例如,确定平层段1匹配平层骨架1,确定平层段2匹配平层骨架2。然后将平层段分别与其匹配的平层骨架进行KNN配准。如图12示中,经过KNN配准后,获得平层骨架1上的候选地标点1、平层骨架2上的候选地标点2,候选地标点1和候选地标点2为同一通道两端的地标点。The following uses Fig. 12 as an example to explain a process of using the KNN matching algorithm to determine candidate landmark points. As shown in Fig. 12, the segmented leveling segment trajectory includes leveling segment 1 and leveling segment 1. number, and determine the leveling skeleton matching the leveling segment from the set of leveling skeletons of the multi-story building. For example, determine that leveling section 1 matches leveling frame 1, and determine that leveling section 2 matches leveling frame 2. Then, KNN registration is performed on the flattened segments with their matching flattened skeletons respectively. As shown in Figure 12, after KNN registration, the candidate landmark point 1 on the leveling skeleton 1 and the candidate landmark point 2 on the leveling skeleton 2 are obtained. The candidate landmark point 1 and the candidate landmark point 2 are the ground points at both ends of the same channel. punctuation.
下面以图13为例进一步解释KNN匹配算法的实现过程。对于任意需要匹配的平层段和平层骨架,首先进行K近邻搜索,选择指纹相似度最高的K个点,如图13中的(1)所示。然后可利用这K个点的空间坐标,进行meanshift聚类,剔除掉离群点的干扰,获得空间分布一致性较好的点,然后利用相似度加权求取聚类中心,作为最终匹配点的位置,如图13中的(2)所示。这样可以使得指纹相似度匹配获得的结果,满足空间分布的近邻一致性。重复上述过程就可以获得平层段上各个点的匹配点,如图13中的(3)所示。经过匹配之后,获得匹配点坐标,可采用RANSAC算法计算坐标间的相似变换关系(如公式④所示)将带配准平层段转换至平层骨架上,即将地标点的坐标转换到平层骨架的坐标系,如图13中的(4)所示。The implementation process of the KNN matching algorithm is further explained below by taking FIG. 13 as an example. For any leveling segment and leveling skeleton that needs to be matched, K-nearest neighbor search is performed first, and the K points with the highest fingerprint similarity are selected, as shown in (1) in Figure 13. Then, the spatial coordinates of these K points can be used to perform meanshift clustering to eliminate the interference of outliers, and obtain points with better spatial distribution consistency, and then use similarity weighting to obtain the cluster center as the final matching point position, as shown in (2) in Figure 13. In this way, the results obtained by matching the fingerprint similarity can meet the neighbor consistency of the spatial distribution. By repeating the above process, the matching points of each point on the leveling section can be obtained, as shown in (3) in Fig. 13 . After matching, the coordinates of the matching points are obtained, and the RANSAC algorithm can be used to calculate the similarity transformation relationship between the coordinates (as shown in formula ④) to convert the leveling segment with registration to the leveling skeleton, that is, convert the coordinates of the landmark point to the leveling skeleton. The coordinate system of the skeleton is shown in (4) in Figure 13.
Figure PCTCN2021114822-appb-000013
Figure PCTCN2021114822-appb-000013
经过KNN配准后,可记录同一个移动轨迹上成对地标点(即同一通道两端的地标点),从而获得同一通道两端的地标点在平层骨架上的位置,实现平层骨架上的候选地标点的检测。After KNN registration, pairs of landmark points (that is, landmark points at both ends of the same channel) on the same moving track can be recorded, so as to obtain the positions of the landmark points at both ends of the same channel on the leveling skeleton, and realize the candidate on the leveling skeleton. Detection of landmark points.
S403:平层骨架上的地标点精确定位阶段。S403: The stage of precise positioning of landmark points on the leveling skeleton.
在通过S402将移动轨迹切分为平层段轨迹和跨层段轨迹,并根据平层段进行KNN配准获得各平层骨架上的多个候选地标点的位置后,可使所述多个移动轨迹的跨层段轨迹基于指纹相似度进行聚类,得到跨层段聚类中心,根据该跨层段聚类中心,从所述多个候选地标点筛选出部分的候选地标点进行聚类,获得的聚类中心作为通道的位置点。After the moving trajectory is divided into a leveling segment trajectory and a cross-segment trajectory through S402, and KNN registration is performed according to the leveling segment to obtain the positions of multiple candidate landmark points on each leveling skeleton, the multiple The cross-segment trajectories of the moving trajectory are clustered based on the similarity of the fingerprints, and the cross-segment clustering center is obtained. , and the obtained cluster center is used as the location point of the channel.
以信号指纹为WiFi指纹为例,可将各个跨层段轨迹进行WiFi相似度聚类,获得跨层段聚类中心,根据该跨层段聚类中心将各平层骨架上的候选地标点进行初始分类,然后结合各 类别地标点的空间坐标信息进行meanshift聚类,剔除掉离群点,得到准确的聚类中心,该聚类中心作为可平层骨架的地标点的精确位置。Taking the signal fingerprint as the WiFi fingerprint as an example, each cross-segment trajectories can be clustered by WiFi similarity to obtain the cross-segment clustering center. Initial classification, and then combined with the spatial coordinate information of each category of landmark points to perform meanshift clustering, remove outliers, and obtain an accurate cluster center, which is used as the precise location of the landmark points of the levelable skeleton.
下面以图14为例进一步解释WiFi相似度聚类算法的实现过程。在通过平层段轨迹的配准获得多个候选地标点(如图14中的(1)所示)后,可根据所述多个移动轨迹的跨层段轨迹对应的位置指纹数据,基于指纹相似度进行聚类,如图14中的(2)所示,并且聚类之前首先按照通道的构型(例如楼梯、扶梯、电梯)进行区分,然后按照通道的构型(例如楼梯、扶梯、电梯)分别进行跨层段WiFi相似度聚类。获得初始指纹点的类别,这种类别区分可以对每一平层骨架中的候选地标点进行初始分类,初始分类结果如图14中的(3)所示。之后,在各平层骨架上,利用初始分类中的候选地标点的空间坐标进行meanshift聚类,剔除掉初始分类中的离群点,如图14中的(4)所示。通过上述聚类获得准确的聚类中心,作为地标点的精确位置,从而实现了通道位置的优化,优化后的地标点位置如图14中的(5)所示。The following takes FIG. 14 as an example to further explain the implementation process of the WiFi similarity clustering algorithm. After obtaining multiple candidate landmark points (as shown in (1) in FIG. 14 ) through the registration of the horizontal segment trajectories, according to the position fingerprint data corresponding to the cross-segment trajectories of the multiple moving trajectories, the fingerprint The similarity is clustered, as shown in (2) in Figure 14, and before clustering, it is first distinguished according to the configuration of the channel (such as stairs, escalators, elevators), and then according to the configuration of the channel (such as stairs, escalators, elevators) Elevator) to perform cross-layer WiFi similarity clustering respectively. The category of the initial fingerprint point is obtained. This category distinction can perform initial classification on the candidate landmark points in each leveling skeleton. The initial classification result is shown in (3) in Figure 14. After that, on each leveling skeleton, meanshift clustering is performed using the spatial coordinates of the candidate landmark points in the initial classification to remove outliers in the initial classification, as shown in (4) in Figure 14. Accurate cluster centers are obtained through the above-mentioned clustering as the precise positions of landmark points, thereby realizing the optimization of channel positions. The optimized landmark positions are shown in (5) in FIG. 14 .
其中,上述过程中跨层段轨迹的WiFi相似度可采用轨迹AP交集的方式定义,如下式⑤所示:Among them, the WiFi similarity of the cross-layer trajectories in the above process can be defined by the intersection of trajectory APs, as shown in the following formula ⑤:
Figure PCTCN2021114822-appb-000014
Figure PCTCN2021114822-appb-000014
S 1={bssid|rssi>-95} S 1 ={bssid|rssi>-95}
其中similarity表示WiFi相似度,S 1、S 2表示两个跨层段轨迹的AP中Rssi值大于-95的AP集合。 The similarity represents the WiFi similarity, and S 1 and S 2 represent the set of APs whose Rssi value is greater than -95 in the APs of the two cross-layer trajectories.
可以看到,通过实施本申请实施例,服务器可利用加速度计、陀螺仪、磁力计等传感器的采集的运动数据和由气压计采集的高度数据进行融合,检测出单轨迹上的通道的地标点。然后利用由各个移动终端的平层段轨迹聚合生成的平层骨架,将单轨迹跨层KNN配准至平层骨架上,进而实现平层骨架上候选地标点的定位。最后利用跨层段轨迹的指纹相似度进行候选地标点的初始分类,利用候选地标点的空间分布进行meanshift聚类,剔除离群点干扰,从实现精确定位平层骨架上的地标点。这样,有助于后续建立指纹地图时提升多楼层的定位精度,尤其是在通道(例如电梯、楼梯、扶梯等)中的定位精度,实现楼层间的精细定位功能,增强室内外多楼层无缝定位的使用体验,且支持在室内定位中提供定位高度,提升使用体验。It can be seen that, by implementing the embodiments of the present application, the server can use the motion data collected by sensors such as accelerometers, gyroscopes, and magnetometers to fuse with the altitude data collected by the barometer to detect landmark points of a channel on a single track. . Then, using the leveling skeleton generated by the aggregation of the leveling segment trajectories of each mobile terminal, the single-track cross-layer KNN is registered to the leveling skeleton, and then the candidate landmark points on the leveling skeleton are located. Finally, the fingerprint similarity of the cross-segment trajectories is used to perform the initial classification of the candidate landmark points, and the spatial distribution of the candidate landmark points is used to perform meanshift clustering to eliminate the interference of outliers, so as to accurately locate the landmark points on the leveling skeleton. In this way, it is helpful to improve the positioning accuracy of multiple floors in the subsequent establishment of fingerprint maps, especially the positioning accuracy in passages (such as elevators, stairs, escalators, etc.), realize the function of fine positioning between floors, and enhance seamless indoor and outdoor multi-floor The user experience of positioning, and supports providing positioning height in indoor positioning to improve the user experience.
下面描述关于三维拓扑构建模块的具体实施例。本申请实施例中,三维拓扑构建模块可用于根据多楼层建筑的平层骨架、通道的地标点和通道的构型生成3D拓扑地图。Specific examples of three-dimensional topology building blocks are described below. In this embodiment of the present application, the 3D topology building module can be used to generate a 3D topology map according to the leveling skeleton of the multi-story building, landmark points of the passage, and the configuration of the passage.
参见图15,图15示出了三维拓扑构建模块的一种可能的实施逻辑的流程示意图。该流程包括如下几个阶段:Referring to FIG. 15, FIG. 15 shows a schematic flowchart of a possible implementation logic of the three-dimensional topology building module. The process includes the following stages:
S501:对所获得的各个平层骨架进行排序阶段。S501 : a stage of sorting the obtained leveling skeletons.
服务器可根据各个平层骨架之间的通道的连接关系,对各个平层骨架进行排序,以使所述各个平层骨架的顺序符合所述多楼层建筑中楼层的先后顺序。此外,还可以根据楼层的高度聚类值获得每个平层骨架对应的楼层高度。The server may sort the leveling frameworks according to the connection relationship of the channels between the leveling frameworks, so that the order of the leveling frameworks conforms to the order of floors in the multi-story building. In addition, the floor height corresponding to each leveling skeleton can also be obtained according to the height clustering value of the floor.
具体的,来自于同一段跨层移动轨迹的一对地标点(即同一通道两端的地标点)会通过轨迹配准至平层骨架,这一对跨层地标点之间存在跨层的上下行连通关系,这样可以利用众多地标点之间的连通关系进行聚类,得到两两平层骨架之间的上下行连通关系。Specifically, a pair of landmark points from the same cross-layer movement trajectory (that is, the landmark points at both ends of the same channel) will be registered to the leveling skeleton through the trajectory. In this way, the connectivity relationship between many landmark points can be used for clustering, and the upstream and downstream connectivity relationships between the two-level skeletons can be obtained.
如图16所示,在根据单移动轨迹获得轨迹上的地标点后,按照地标点进行移动轨迹的切分,且分出的两平层段各自一端会带有一个地标点(即图中的起点和终点),通过配准至平层 骨架获得平层骨架上的候选地标点。这样,根据众多的平层候选地标点,可以标记出两两平层骨架之间的众多的连通关系。As shown in Figure 16, after the landmark points on the trajectory are obtained according to the single movement trajectory, the movement trajectory is divided according to the landmark points, and each end of the divided two leveling layers will have a landmark point (that is, in the figure start and end points), and obtain candidate landmark points on the leveling skeleton by registering to the leveling skeleton. In this way, according to numerous leveling candidate landmark points, numerous connectivity relationships between two leveling skeletons can be marked.
然后,可通过两两平层骨架连接关系构建有向图,并对有向图进行环检测,分割出有向无环图。对每个分割出的子图进行上下行排序,从而实现各个平层骨架的上下高低排序。另外,还可利用两两平层骨架间的一对地标点表征的高度差进行聚类,获得两两平层骨架高度差,进而获得每个平层骨架相对于地面的楼层高度。Then, a directed graph can be constructed by the connection relationship between the two-level skeletons, and the directed graph can be detected by ring detection, and the directed acyclic graph can be segmented. The upper and lower order of each segmented sub-graph is performed to realize the upper and lower order of each leveling skeleton. In addition, the height difference represented by a pair of landmark points between the two leveling skeletons can also be used for clustering to obtain the height difference between the two leveling skeletons, and then the floor height of each leveling skeleton relative to the ground can be obtained.
为了更好理解上述排序过程,下面具体展开描述。In order to better understand the above sorting process, the following is a detailed description.
(I)连接关系的聚类和有向图的建立:(I) Clustering of connection relationships and establishment of directed graphs:
综合参见图17和图18,记平层骨架T 1与T 2之间的连接关系为R(T 1,T 2),假设地标点L 1∈T 1,L 2∈T 2,地标点L 1到L 2为楼梯上行,则d(L 1,L 2)=1;地标点L 1到L 2为楼梯下行,则d(L 1,L 2)=-1;且由实际含义可以获得d(L 1,L 2)=-d(L 2,L 1)。则R(T 1,T 2)={d(L 1,L 2)|L 1∈T 1,L 2∈T 2,}且L 1与L 2存在连接关系。利用关系集合R(T 1,T 2)进行聚类,选择聚类个数最多的类别代表关系,即是统计集合内取值为1与-1的个数,选择个数最多的关系确定为平层骨架T 1与T 2之间的上下行关系d(T 1,T 2)。这样我们可以获得两两平层骨架间的上下行连通关系,如图17中的(1)所示。以此构建有向图,该有向图如图18中的(1)所示。 Referring to Fig. 17 and Fig. 18 comprehensively, the connection relationship between the leveling skeleton T 1 and T 2 is denoted as R(T 1 , T 2 ), assuming that the landmark points L 1 ∈ T 1 , L 2 ∈ T 2 , the landmark point L 1 to L 2 are stairs going up, then d(L 1 , L 2 )=1; landmark points L 1 to L 2 are stairs going down, then d(L 1 , L 2 )=-1; and it can be obtained from the actual meaning d(L 1 , L 2 )=−d(L 2 , L 1 ). Then R(T 1 , T 2 )={d(L 1 , L 2 )|L 1 ∈ T 1 , L 2 ∈ T 2 ,} and L 1 and L 2 have a connection relationship. Use the relationship set R(T 1 , T 2 ) to perform clustering, and select the category with the largest number of clusters to represent the relationship, that is, the number of 1 and -1 in the statistical set, and the relationship with the largest number is selected as The up-down relationship d(T 1 , T 2 ) between the leveling skeletons T 1 and T 2 . In this way, we can obtain the uplink and downlink connectivity between the two-level skeletons, as shown in (1) in Figure 17. With this, a directed graph is constructed, and the directed graph is shown as (1) in FIG. 18 .
(II)有向无环图分割:(II) Directed acyclic graph segmentation:
如图18中的(2)所示,在完成平层骨架有向图构建之后,需要根据平层骨架之间的上下行传递关系进行分割,分割出有向无环图,再对有向无环图进行上下方向的排序。在定义平层骨架上下行关系时,可以在所有连接地标点中,取绝大多数连接对的上下行方向作为平层骨架上下行方向。具体的,首先将方向转换为一致的方向(均为上行或者均为下行方向),有向无环图分割采用深度优先搜索算法,从某一节点开始,将集合分为已搜索集合和未搜索集合,当前搜索节点与已搜索节点结合中直接父节点之外的节点存在连接关系时,断开该连接关系,直至没有连接关系可以继续搜索,则保存当前分割出的子图,继续在剩下的节点中进行搜索,最终获得包括各个平层骨架的有向无环图。As shown in (2) in Figure 18, after completing the construction of the directed graph of the leveling skeleton, it needs to be segmented according to the uplink and downlink transfer relationship between the leveling skeletons to segment the directed acyclic graph. The ring graph is sorted up and down. When defining the up-down relationship of the leveling skeleton, the up-down direction of the vast majority of connection pairs can be taken as the up-down direction of the leveling skeleton among all the connection landmarks. Specifically, the direction is first converted into a consistent direction (both up or down), the directed acyclic graph is segmented using a depth-first search algorithm, starting from a certain node, the set is divided into a searched set and an unsearched set Set, when there is a connection relationship between the current search node and the node other than the direct parent node in the combination of the searched node, disconnect the connection relationship, until there is no connection relationship to continue the search, then save the currently divided subgraph, and continue in the remaining Search in the nodes of , and finally obtain a directed acyclic graph including each leveling skeleton.
(III)上下行排序:(III) Sorting up and down:
完成有向无环图分割之后,按照平层骨架之间的上下行连接关系即可梳理出上下行排序关系。具体的,针对每个有向无环图,首先找出只有出度的节点,即为第一层,然后将其放入已排序集合,在断开已排序集合与未排序集合中所有节点的连接关系,然后用同样的方法找出剩下集合的第一层,放入已排序集合作为最高层,依次处理方法直至所有平层骨架均被排序,即可完成所有楼层的平层骨架的上下行排序,一种排序结果如图17中的(2)所示。After the directed acyclic graph segmentation is completed, the upstream and downstream sorting relationships can be sorted out according to the upstream and downstream connection relationships between the leveling skeletons. Specifically, for each directed acyclic graph, first find the node with only out-degree, which is the first layer, and then put it into the sorted set, and then disconnect all nodes in the sorted set and the unsorted set. Connect the relationship, and then use the same method to find the first layer of the remaining set, put the sorted set as the highest layer, and process the method in turn until all the leveling skeletons are sorted, then the upper and lower leveling skeletons of all floors can be completed. Row sorting, a sorting result is shown in (2) in Figure 17.
(IV)平层骨架的高度聚类:(IV) High clustering of flat skeletons:
此过程为可选的过程。在实现对地标点的连接关系聚类之后,可以获得两两平层骨架之间的连通关系,并且根据两两楼层之间有连接关系的地标点的气压值可以计算得到每对连接关系的地标点之间的高度差,对楼层间连通关系的地标点高度差绝对值进行聚类,选取聚类中心高度差值,作为两两楼层之间的高度差。结合楼层上下排序关系,即可获得各楼层相对于最底层的高度。This process is optional. After realizing the clustering of the connection relationship of the landmark points, the connection relationship between the skeletons of the two levels can be obtained, and the ground pressure value of each pair of connection relationship can be calculated according to the air pressure value of the landmark points with the connection relationship between the two floors. The height difference between the punctuation points, the absolute value of the height difference between the landmark points of the connectivity relationship between the floors is clustered, and the height difference value of the cluster center is selected as the height difference between the two floors. Combined with the upper and lower ordering relationship of floors, the height of each floor relative to the lowest floor can be obtained.
需要说明的是,由于气压计极易受到外界环境及手机设备的影响,高度值无法用于准确的楼层排序和高度计算;相对高度单一推算楼层的高度极易因为气压值的不准而造成偏差,亦难以可靠有效排序和高度计算。而本申请实施例利用地标点之间的连接关系来实现对平层 骨架的排序,能够有效克服因气压计不准带来的不确定性,实现更加鲁棒的楼层排序。It should be noted that because the barometer is easily affected by the external environment and mobile phone equipment, the height value cannot be used for accurate floor sorting and height calculation; the height of a single calculated floor relative to the height is easily deviated due to the inaccuracy of the air pressure value. , and it is also difficult to reliably and efficiently sort and calculate heights. However, the embodiment of the present application utilizes the connection relationship between landmark points to realize the ordering of the leveling skeleton, which can effectively overcome the uncertainty caused by the inaccuracy of the barometer, and realize a more robust floor ordering.
另外,本申请实施例依据楼层排序结果,进行各平层骨架的相对高度计算,并根据大量众包数据进行高度聚类,可以有效消除环境、采集状态等不稳定因素,实现更加可靠的楼层高度估计。In addition, the embodiment of the present application calculates the relative height of each leveling frame according to the floor sorting result, and performs high clustering according to a large amount of crowdsourced data, which can effectively eliminate unstable factors such as environment and collection status, and achieve a more reliable floor height. estimate.
S502:各个平层骨架对应的绝对楼层识别阶段。S502: The absolute floor identification stage corresponding to each leveling skeleton.
服务器可确定所述排序后的各个平层骨架与多楼层建筑中楼层的映射关系。在平层骨架上下行关系排序之后,只需要识别出对应于基准楼层的平层骨架,基准楼层例如可以是一楼,就可以确定其他楼层的平层骨架。具体的,服务器根据众包数据确定各个平层骨架上的出入口数量,将出入口数量最多的平层骨架映射到多楼层建筑的一楼,根据各个所述平层骨架的排序结果,将剩余的平层骨架映射到所述多楼层建筑中的其他楼层,从而实现绝对楼层的识别。The server may determine the mapping relationship between the sorted leveling skeletons and the floors in the multi-story building. After the upper and lower relationship of the leveling skeleton is sorted, it is only necessary to identify the leveling skeleton corresponding to the reference floor. For example, the reference floor may be the first floor, and then the leveling skeletons of other floors can be determined. Specifically, the server determines the number of entrances and exits on each leveling skeleton according to the crowdsourcing data, maps the leveling skeleton with the largest number of entrances and exits to the first floor of the multi-story building, and according to the sorting result of each leveling skeleton, assigns the remaining leveling skeletons. Floor skeletons are mapped to other floors in the multi-story building, enabling identification of absolute floors.
通常来说,大部分建筑物为了通行、运输、消防等的便利,会在一楼设置最多的出入口,利用检测出的有效出入口个数,选择出入口最多的那一层作为一楼,根据楼层排序关系即可获得与真实物理建筑对应的楼层。因此绝对楼层识别首先利用出入口识别结果,对出入口进行meanshift聚类,获得有效的出入口聚类,根据出入口聚类个数识别出基准楼层——一楼,最后利用楼层排序关系即可获得绝对楼层。具体过程描述如下:Generally speaking, most buildings will set the most entrances and exits on the first floor for the convenience of passage, transportation, fire protection, etc., and use the detected number of valid entrances and exits to select the floor with the most entrances and exits as the first floor, and sort according to the floor. relationship to get the floor corresponding to the real physical building. Therefore, the absolute floor recognition first uses the entrance and exit identification results to perform meanshift clustering on the entrances and exits to obtain effective entrance and exit clusters, and identify the reference floor - the first floor according to the number of entrance and exit clusters, and finally use the floor sorting relationship to obtain the absolute floor. The specific process is described as follows:
(I)平层骨架上的出入口聚类:(I) Clustering of entrances and exits on the leveling skeleton:
在出入口检测模块的作用下,可以获得平层骨架上的出入口分布,但是由于检测误差的存在,出入口的分布较为离散,且仅仅表征一次通行轨迹的出入口,需要经过空间聚类来识别与真实建筑物对应的出入口分布。出入口识别采用的是meanshift聚类方法,无需设置聚类个数,仅仅需要限定出入口分散最大距离,即可获得出入口的聚类,然后通过设定聚类大小阈值,满足一定聚类个数的类别才判定为有效的出入口。同时通过聚类进一步可以剔除掉离散的检测点,获得准确的聚类中心作为出入口的位置。Under the action of the entrance and exit detection module, the distribution of entrances and exits on the leveling skeleton can be obtained. However, due to the existence of detection errors, the distribution of entrances and exits is relatively discrete, and it only represents the entrances and exits of a single passage, which requires spatial clustering to identify and real buildings. The distribution of the corresponding entrances and exits. The entrance and exit identification adopts the meanshift clustering method. It is not necessary to set the number of clusters. It only needs to limit the maximum distance of the entrance and exit to obtain the clustering of the entrance and exit. Then, by setting the cluster size threshold, the category of a certain number of clusters can be satisfied. It is determined as a valid entry and exit. At the same time, the discrete detection points can be further eliminated by clustering, and the accurate cluster center can be obtained as the position of the entrance and exit.
(II)识别基准楼层:(II) Identify the reference floor:
基准楼层(如一楼)的识别采用出入口聚类个数作为首要判定因素,聚类个数最多的判定为一楼。当聚类个数存在相同的情况时,根据出入口设置的方位进一步判断。因为实际中的一楼一般会在四面八方均设置出入口,不会将出入口集中于某一区域,而二三楼或者地下一般处于成本或者规划考虑会将出入口集中于某一面,因此可以根据出入口聚类中心的分散程度来进一步判定,采用出入口聚类中心的位置方差大小进行判定,方差最大的判定为一楼。The identification of the reference floor (such as the first floor) uses the number of clusters of entrances and exits as the primary determining factor, and the one with the largest number of clusters is determined as the first floor. When the number of clusters is the same, it is further judged according to the orientation of the entrance and exit. Because the actual first floor generally has entrances and exits in all directions, and the entrances and exits will not be concentrated in a certain area, while the second and third floors or underground generally have cost or planning considerations, and the entrances and exits will be concentrated on a certain side, so they can be clustered according to the entrances and exits. The degree of dispersion of the center is further judged, and the position variance of the entrance and exit cluster centers is used to judge, and the one with the largest variance is judged as the first floor.
(III)识别各平层骨架对应的绝对楼层:(III) Identify the absolute floor corresponding to each leveling skeleton:
在获得楼层排序结果和基准楼层之后,我们可以根据基准楼层中判别出来的一楼,根据楼层上下行排序关系,依次将其他楼层与真实楼层对应起来。这样在应用到真实定位场景中时,能够准确感知所在的准确楼层。After obtaining the floor sorting result and the reference floor, we can correspond the other floors to the real floor in turn according to the first floor identified in the reference floor, and according to the floor ascending and descending sorting relationship. In this way, when it is applied to the real positioning scene, it can accurately perceive the exact floor where it is located.
如图19所示,在一种示例中,通过执行上述过程,一种楼层排序为“平层骨架3-平层骨架2-平层骨架1”,通过出入口聚类确定平层骨架3的出入口数量为3,其他平层骨架的出入口数量皆为0,那么可以确定平层骨架3对应基准楼层(1楼),这样,基于排序顺序可以确定平层骨架2对应2楼,平层骨架1对应3楼。As shown in FIG. 19 , in an example, by performing the above process, a floor order is “leveling skeleton 3-leveling skeleton 2-leveling skeleton 1”, and the entrance and exit of leveling skeleton 3 are determined through the clustering of entrances and exits The number is 3, and the number of entrances and exits of other leveling skeletons is 0, then it can be determined that leveling skeleton 3 corresponds to the reference floor (1st floor), thus, based on the sorting order, it can be determined that leveling skeleton 2 corresponds to the 2nd floor, and leveling skeleton 1 corresponds to 3rd floor.
需要说明的是,本申请其他实施例中,还可以通过其他方式实现绝对楼层的识别。例如如图20所示,假如在S501中已经计算得到各个平层骨架的相对高度值,那么可以将高度最低的楼层作为基准楼层,并将基准楼层的高度定义为0m,这样就可以知道其他平层骨架的绝对高度。然后将各个平层骨架的高度除以楼层间距值,即可以估算该平层骨架对应的绝对楼 层。其中,楼层间距值可以根据实际建筑设计情况进行预设,例如可以将楼层间距值设置为3.5m。如图20的示例中,平层骨架2相对地面的高度约为3.5m,平层骨架3相对地面的高度约为7.2m,那么可以确定平层骨架2对应2楼,平层骨架1对应3楼。It should be noted that, in other embodiments of the present application, the identification of the absolute floor may also be implemented in other ways. For example, as shown in Figure 20, if the relative height values of each leveling frame have been calculated in S501, then the floor with the lowest height can be used as the reference floor, and the height of the reference floor is defined as 0m, so that other levels can be known. The absolute height of the layer skeleton. Then divide the height of each leveling frame by the floor spacing value to estimate the absolute floor corresponding to the leveling frame. Among them, the floor spacing value can be preset according to the actual building design, for example, the floor spacing value can be set to 3.5m. In the example shown in Figure 20, the height of the leveling frame 2 relative to the ground is about 3.5m, and the height of the leveling frame 3 relative to the ground is about 7.2m, then it can be determined that the leveling frame 2 corresponds to the 2nd floor, and the leveling frame 1 corresponds to the 3rd floor. building.
S503:对排序后的平层骨架进行对齐阶段。S503: Perform an alignment stage on the sorted leveling skeleton.
由于各平层骨架属于局部二维直角坐标系,各个平层骨架间没有对应的连接关系,需要通过跨层信息恢复各平层骨架连通关系。平层骨架的对齐即是通过自学习出的平层骨架中的通道的地标点位置、空间构型,重构平层骨架之间的连通关系,将多层平层骨架统一到同一坐标系中,以便实现多楼层无缝室内定位。即本申请实施例中,服务器可根据通道的地标点和所述通道的构型,将经所述排序后的各个平层骨架在三维坐标空间进行对齐,以获得所述三维拓扑地图。Since each leveling skeleton belongs to a local two-dimensional rectangular coordinate system, there is no corresponding connection relationship between each leveling skeleton, and it is necessary to restore the connection relationship of each leveling skeleton through cross-level information. The alignment of the leveling skeleton is to reconstruct the connection relationship between the leveling skeletons through the self-learned landmark positions and spatial configurations of the channels in the leveling skeleton, and unify the multi-level leveling skeletons into the same coordinate system. , in order to achieve seamless indoor positioning on multiple floors. That is, in the embodiment of the present application, the server may align the sorted leveling skeletons in the three-dimensional coordinate space according to the landmark points of the channel and the configuration of the channel to obtain the three-dimensional topological map.
具体的,可通过识别不同通道的特性,根据通道的特性由粗到精对齐不同平层骨架。楼层对齐是构建多楼层3D拓扑地图的必要步骤,主要是利用楼层间的电梯、楼梯、自动扶梯等通道的构型和连接关系,将不同平层骨架的坐标系转换到统一坐标空间,例如将直连的通道在X、Y平面上对应到同一坐标点,从而实现将不同楼层分别重构出的平层骨架对齐到同一的三维坐标空间之中,实现多楼层指纹地图的同一坐标系映射并赋予楼层高度,从而实现3D拓扑地图的构建。这样建立的3D拓扑地图能够实现跨楼层移动时的无缝定位和楼层间通道上的精细定位,极大提升用户使用体验。下面对该对齐过程进行详细描述:Specifically, by identifying the characteristics of different channels, different leveling skeletons can be aligned from coarse to fine according to the characteristics of the channels. Floor alignment is a necessary step to construct a multi-floor 3D topology map. It mainly uses the configuration and connection relationship of elevators, stairs, escalators and other passages between floors to convert the coordinate systems of different leveling skeletons into a unified coordinate space. The directly connected channels correspond to the same coordinate point on the X and Y planes, so that the leveling skeletons reconstructed from different floors can be aligned into the same three-dimensional coordinate space, and the same coordinate system mapping of the multi-floor fingerprint map can be realized. Give the floor height, so as to realize the construction of 3D topology map. The 3D topology map established in this way can realize seamless positioning when moving across floors and fine positioning on passages between floors, which greatly improves the user experience. The alignment process is described in detail below:
(I)通道构型识别:(I) Channel configuration identification:
由于不同通道具有不同的空间构型,而针对不同构型的通道需要对平层骨架采用不同方式进行对齐,所以,在执行平层骨架对齐之前,需要确定各个通道的空间构型。例如,可将通道的构型为直连类型和斜连类型;所述通道的构型包括直连类型或斜连类型;所述直连类型是指所述通道两端的位置点在垂直方向上共线,所述斜连类型是指通道两端的位置点在垂直方向上不共线。所以,直连类型的通道的两端的地标点需要在垂直方向对齐,斜连类型的通道的两端的地标点在垂直方向不对齐,在水平方向上有偏移。直连类型的通道例如电梯、爬梯、或者某种中间对折的楼梯,所述斜连类型的通道例如有倾斜楼梯、自动扶梯、坡道等等。Since different channels have different spatial configurations, and the leveling skeletons need to be aligned in different ways for channels with different configurations, the spatial configuration of each channel needs to be determined before performing the alignment of the leveling skeletons. For example, the configuration of the channel can be a direct connection type and an oblique connection type; the configuration of the channel includes a direct connection type or an oblique connection type; the direct connection type means that the position points at both ends of the channel are in the vertical direction Collinear, the oblique connection type means that the position points at both ends of the channel are not collinear in the vertical direction. Therefore, the landmark points at both ends of the direct connection type channel need to be aligned in the vertical direction, and the landmark points at both ends of the oblique connection type channel are not aligned in the vertical direction and are offset in the horizontal direction. A direct-connection type of passage is, for example, an elevator, a ladder, or some kind of staircase that folds in the middle, and an inclined type of passage is, for example, a sloped staircase, an escalator, a ramp, and the like.
通常来说,对于电梯、爬梯,均具有严格的直通对齐关系,而对于楼梯、扶梯,可能会存在各种不同的空间构型。参见图21,图21示出了现实世界中五种常见的楼梯、扶梯的构型。其中:Generally speaking, elevators and ladders have a strict straight-through alignment relationship, while for stairs and escalators, there may be various spatial configurations. Referring to Figure 21, Figure 21 shows five common configurations of stairs and escalators in the real world. in:
图21中的(1)图中的楼梯为直连类型,通过跨层检测的楼梯地标点在不同楼层上会是垂直对齐的关系;图21中的(2)图中,偶数间隔层(1-2楼、1-4楼)之间的楼梯是斜连类型,存在水平偏移,而奇数间隔层(1-3楼、2-4楼、1-5楼)之间的楼梯可以视为直连类型;图21中的(3)图中的扶梯是斜连类型,这种斜连的距离可以通过传感器进行估计;图21中的(4)图和(5)图中,1-2楼、2-3楼的扶梯均是斜连类型,不过需要注意的是,隔层的扶梯地标点可能会存在隐含直连的情况,所谓隐含直连是指对于没有连接关系的地标点之间也可能垂直对齐关系。例如图21中的(5)图中,1楼的地标点与3楼的地标点之间虽然没有通道连接,但是这两个地标点也可能会存在隐含直连,这种隐含直连也会辅助于本申请中的平层骨架对齐。The stairs in (1) in Figure 21 are of the direct connection type, and the stair landmarks detected by cross-floor detection will be vertically aligned on different floors; in (2) in Figure 21, the even-numbered interval floors (1 -The stairs between floors 2, 1-4) are inclined connection types with horizontal offsets, while the stairs between floors with odd intervals (floors 1-3, 2-4, 1-5) can be regarded as Direct connection type; the escalator in (3) in Figure 21 is an inclined connection type, and the distance of this inclined connection can be estimated by sensors; in Figures (4) and (5) in Figure 21, 1-2 The escalators on the 2nd and 3rd floors are of the oblique connection type, but it should be noted that there may be implicit direct connections between the escalator landmarks on the other floors. The so-called implicit direct connection refers to the landmarks without connection relationship. There may also be vertical alignment relationships between. For example, in (5) in Figure 21, although there is no channel connection between the landmark point on the 1st floor and the landmark point on the 3rd floor, there may also be an implicit direct connection between these two landmark points. Also assists in the alignment of the flat skeleton in this application.
参见图22,可以利用来进行跨层对齐的地标点可以分为以下四类情况:(1)对于直通的电梯、楼梯,可以被直接利用来进行直连对齐;(2)对于斜连的楼梯,可以通过PDR估计斜边距离,利用楼层高度计算水平偏移,进行水平偏移优化修正;(3)对于隐含的直连地标点, 包括扶梯地标点,可以利用ICP算法将隐含的对齐关系利用起来,实现进一步对齐修正;另外,对于单纯斜跨的扶梯,难以被利用来进行楼层对齐,但是可以通过检测的起终点高度及时间间隔来估计扶梯的速度,用于精细的楼层间定位。Referring to Figure 22, the landmark points that can be used for cross-floor alignment can be divided into the following four categories: (1) For straight elevators and stairs, they can be directly used for straight alignment; (2) For diagonally connected stairs , the hypotenuse distance can be estimated by PDR, the horizontal offset can be calculated by using the floor height, and the horizontal offset can be optimized and corrected; (3) For the implicit directly connected landmarks, including the escalator landmarks, the ICP algorithm can be used to align the implicit The relationship can be used to achieve further alignment correction; in addition, for the escalator with simple inclined span, it is difficult to use it for floor alignment, but the speed of the escalator can be estimated by the detected starting and ending heights and time intervals for fine inter-floor positioning .
由于电梯可以确定存在直通关系,当两个平层骨架之间具有电梯时,可以首先可以利用电梯地标点计算坐标系变换矩阵。由于PDR步长估计的误差不确定性,不同平层骨架间可能会存在尺度不均,因此计算变换矩阵可采用相似变换。计算相似变换最少需要两对对应点,所以在计算初步变换矩阵时最少需要两对距离足够远的电梯地标点。一般会选择来自两个不同电梯聚类的地标点用于计算,多个电梯聚类或者多个聚类中的地标点存在时,采用RANSAC进行鲁棒性参数估计。Since the elevator can determine that there is a straight-through relationship, when there is an elevator between the two leveling skeletons, the coordinate system transformation matrix can be calculated by using the elevator landmark points. Due to the error uncertainty of the PDR step size estimation, there may be uneven scales between different leveling skeletons, so the similarity transformation can be used to calculate the transformation matrix. The calculation of similarity transformation requires at least two pairs of corresponding points, so at least two pairs of elevator landmark points that are far enough apart are required when calculating the preliminary transformation matrix. Generally, landmark points from two different elevator clusters are selected for calculation. When multiple elevator clusters or landmark points in multiple clusters exist, RANSAC is used for robust parameter estimation.
计算出初始变换矩阵之后,将楼梯地标点、扶梯地标点进行变换,计算连接关系的地标点之间反投影误差,如公式⑥所示:After calculating the initial transformation matrix, transform the landmark points of the stairs and the landmark points of the escalator, and calculate the back-projection error between the landmark points of the connection relationship, as shown in formula ⑥:
e=∑||L i-St*L j||      ⑥ e=∑||L i -St*L j || ⑥
其中St为计算的相似变换矩阵,L i,L j为一对连接关系的地标点。 Among them, St is the calculated similarity transformation matrix, and L i and L j are the landmark points of a pair of connection relationships.
针对楼梯,可选择反投影误差小于一定阈值的作为直连类型的楼梯,否则为斜连类型的楼梯。For stairs, the stairs with the back-projection error less than a certain threshold can be selected as the stairs of the direct connection type, otherwise the stairs of the inclined connection type can be selected.
针对扶梯,一般存在连接关系的基本上是斜连类型,而在之后的加权ICP修正过程中基本上不需要知道扶梯地标点之间的对应关系,因此对扶梯不需要区分类型,在之后的ICP修正过程中可以直接应用。For escalators, the connection relationship is basically the oblique connection type, and in the subsequent weighted ICP correction process, there is basically no need to know the corresponding relationship between the escalator landmarks, so there is no need to distinguish the type for the escalator. In the subsequent ICP The correction process can be applied directly.
需要说明的是,在实施本申请提供的对齐方案的过程中,由于多楼层建筑存在多个楼层,并且楼层之间的通道数目、构型可能不同,其中直连关系越多的楼层间,对齐结果的可靠性越好,并且某一个楼层可能会与其他多个楼层存在连接关系,因此在通道构型识别完成之后,需要考虑与多个楼层之间的先后对齐策略。It should be noted that, in the process of implementing the alignment solution provided by the present application, since there are multiple floors in a multi-story building, and the number and configuration of passages between floors may be different, the more directly connected floors are, the higher the alignment is. The reliability of the results is better, and a certain floor may have a connection relationship with multiple other floors. Therefore, after the identification of the passage configuration is completed, the sequential alignment strategy with multiple floors needs to be considered.
一种可能的对齐策略是:首先初始化将一楼放入对齐楼层集合,然后在未对齐楼层集合中选择与已对齐楼层集合中各个楼层直连关系最多的未对齐连层进行处理,首先进行初始化直连对齐,然后进行水平距离估计优化,利用加权ICP精对准,将当前处理楼层加入下对齐楼层集合中,如此直至所有楼层均完成对齐为止。下面进一步展开相关描述。A possible alignment strategy is: firstly initialize the first floor into the aligned floor set, then select the unaligned connected floor in the unaligned floor set that has the most direct connection with each floor in the aligned floor set for processing, and initialize it first Directly connect and align, then optimize the horizontal distance estimation, use weighted ICP fine alignment, and add the current processing floor to the set of lower aligned floors, and so on until all floors are aligned. The related description is further expanded below.
(II)平层骨架基于直连类型的通道进行对齐:(II) The leveling skeleton is aligned based on the direct connection type channel:
当两个平层骨架之间具有直连类型的通道时,可通过在垂直方向对齐所述通道两端的位置点来使所述两个平层骨架对齐。When there is a direct connection type channel between the two leveling frameworks, the two leveling frameworks can be aligned by aligning the position points at both ends of the channel in the vertical direction.
具体的,可采用识别出的直连类型的电梯、楼梯采用RANSAC算法计算同名点之间的相似变换,然后将待对齐骨架坐标利用相似变换转换到已对齐平层骨架坐标系。其中由于计算相似变换矩阵需要至少两个连通关系点对,并且这两对点之间的距离足够远,太近则拟合出来的相似变换矩阵误差较大。Specifically, the identified elevators and stairs of the direct connection type can be used to calculate the similarity transformation between the points with the same name by using the RANSAC algorithm, and then the skeleton coordinates to be aligned are transformed into the aligned leveling skeleton coordinate system using the similarity transformation. Among them, since the calculation of the similarity transformation matrix requires at least two connected point pairs, and the distance between the two pairs of points is far enough, if the similarity transformation matrix is too close, the error of the fitted similarity transformation matrix will be large.
因此,在进行直连对齐过程中进行RANSAC随机抽样时,首先根据不同直连楼梯、电梯聚类进行选择,首先选择两个直通关系的地标聚类,并且两个聚类中心的距离要大于10米,然后在两对地标聚类中随机各选择一个点,这样就组成采样的两对点,利用两对点计算相似变换矩阵,然后利用所有直连点计算反投影误差,将投影误差小于一定阈值的点作为内点。这样经过若干次采样后,选择内点数最多的那一组结果,利用其内点计算相似变换矩阵作为最终的拟合结果输出。Therefore, when RANSAC random sampling is performed in the process of direct connection alignment, the selection is made according to different directly connected stairs and elevator clusters. First, two landmark clusters with a direct relationship are selected, and the distance between the two cluster centers should be greater than 10. m, and then randomly select a point in each of the two pairs of landmark clusters to form two pairs of sampling points, use the two pairs of points to calculate the similarity transformation matrix, and then use all the directly connected points to calculate the back projection error, so that the projection error is less than a certain value Threshold points as interior points. In this way, after several times of sampling, the set of results with the largest number of interior points is selected, and the similarity transformation matrix is calculated by using its interior points as the final fitting result output.
(III)平层骨架基于斜连类型的通道进行水平距离优化:(III) The horizontal distance optimization of the leveling skeleton is based on the oblique connection type channel:
当两个平层骨架之间具有斜连类型的通道时,根据所述通道两端的位置点之间的水平偏移量来进一步优化对齐所述两个平层骨架。也就是说,在进行直连对齐之后,可以根据识别出的斜连楼梯进一步矫正对齐结果。When there is an oblique connection type channel between the two leveling frameworks, the alignment of the two leveling frameworks is further optimized according to the horizontal offset between the position points at both ends of the channel. That is to say, after the straight-connected alignment is performed, the alignment result can be further corrected according to the identified inclined-connected stairs.
参见图23,以一种倾斜楼梯为例,首先,利用相连的地标点之间的PDR距离作为斜边距离,估计出的相连楼层高度作为一条直角边,这样可以估计出斜连地标点之间的水平偏移,通过将计算出的水平偏移补偿给斜连地标点,通过补偿后的斜连地标点纳入直连对齐楼梯、电梯之中,进行进一步直连对齐计算,获得进一步纠正的对齐结果。由于地标点L 2直接按照计算的相似变换投影到楼层F1上时会存在投影点
Figure PCTCN2021114822-appb-000015
这个投影点也会与之相连的F1上的地标点L 1之间存在偏移,如果计算的相似变换矩阵精度较好的情况下,这两个偏移值会相等,因此可以通过这两个偏移值之间差值可以判定相似变换矩阵拟合的质量。
Referring to Figure 23, taking a sloped staircase as an example, first, the PDR distance between the connected landmark points is used as the hypotenuse distance, and the estimated height of the connected floor is used as a right-angle side, so that the distance between the diagonally connected landmark points can be estimated. By compensating the calculated horizontal offset to the obliquely connected landmark points, and incorporating the compensated obliquely connected landmark points into the directly-aligned stairs and elevators, further direct-connected alignment calculations are performed to obtain further corrected alignments. result. Since the landmark point L2 is directly projected onto the floor F1 according to the calculated similarity transformation, there will be projection points
Figure PCTCN2021114822-appb-000015
This projection point will also have an offset between the landmark point L 1 on F1 to which it is connected. If the calculated similarity transformation matrix has good accuracy, the two offset values will be equal, so it is possible to pass these two The difference between the offset values can determine the quality of the similar transformation matrix fit.
进一步可以通过补偿这一距离偏移,进一步加入直通地标点拟合程序中,可以进一步优化相似变换矩阵的拟合精度。假定楼梯方向根据投影点
Figure PCTCN2021114822-appb-000016
与L 1之间的方向一致,通过共线原理,可以获得补偿坐标在F1的投影点坐标
Figure PCTCN2021114822-appb-000017
Figure PCTCN2021114822-appb-000018
的坐标可以按照公式⑦计算得出:
Furthermore, by compensating for this distance offset, it can be added to the straight-through landmark point fitting program to further optimize the fitting accuracy of the similarity transformation matrix. Assume that the stair direction is based on the projected point
Figure PCTCN2021114822-appb-000016
Consistent with the direction between L 1 , through the principle of collinearity, the projected point coordinates of the compensation coordinates on F1 can be obtained
Figure PCTCN2021114822-appb-000017
Figure PCTCN2021114822-appb-000018
The coordinates of can be calculated according to formula ⑦:
Figure PCTCN2021114822-appb-000019
Figure PCTCN2021114822-appb-000019
通过逆投影,即可将
Figure PCTCN2021114822-appb-000020
的坐标投影到F2平面,获得补偿坐标点ΔL 2
By inverse projection, the
Figure PCTCN2021114822-appb-000020
The coordinates are projected to the F2 plane to obtain the compensation coordinate point ΔL 2 :
Figure PCTCN2021114822-appb-000021
Figure PCTCN2021114822-appb-000021
(IV)对于隐含直连类型,通过加权迭代最近邻(Iterative Closest Point,ICP)算法来优化对齐结果:(IV) For implicitly connected types, the alignment results are optimized by a weighted iterative Closest Point (ICP) algorithm:
本步骤为可选的步骤。在利用完直连电梯、楼梯和斜连楼梯之后,还有大量的隐含直连地标点未被利用,即没有连接关系但是实际上是直连的楼梯、电梯和扶梯。要利用这部分隐含直连关系,可采用ICP算法进行迭代优化,经过若干次迭代优化后,会输出全局的直连对齐结果。This step is optional. After using the direct-connected elevators, stairs and inclined-connected stairs, there are still a large number of implicit direct-connected landmarks that are not used, that is, the stairs, elevators and escalators that have no connection relationship but are actually directly connected. To use this part of the implicit direct connection relationship, the ICP algorithm can be used for iterative optimization. After several iterations of optimization, the global direct connection alignment result will be output.
根据之前的直连对齐和斜连楼梯修正后,可以获得较好的对齐效果,作为ICP算法对齐初值,但是为了避免未对齐地标点数量较大,导致最终结果急剧恶化,在迭代计算过程中进行加权,其中赋予直通楼梯、电梯较高的权重。在整体数据基础上,重复注入直连的电梯楼梯地标点对,增大直连地标点占比;每次选择最近邻点的时候,首选K个紧邻点内有连通关系的组成一队点,如果没有则选择最近邻的点;采用全部的直连电梯楼梯进行距离误差评估,而仅选择占直连楼梯电梯数量三分之一数量的其他跨层点最小误差来进行计算。According to the previous direct alignment and inclined stairs correction, a better alignment effect can be obtained as the initial alignment value of the ICP algorithm. However, in order to avoid a large number of unaligned landmark points, resulting in a sharp deterioration of the final result, in the iterative calculation process Weighting is performed, in which straight stairs and elevators are given higher weights. On the basis of the overall data, the directly connected elevator and stair landmark point pairs are repeatedly injected to increase the proportion of directly connected landmark points; each time the nearest neighbor point is selected, it is preferred to form a team of points with a connected relationship in the K adjacent points. If not, select the nearest neighbor point; use all directly connected elevator stairs for distance error evaluation, and select only the minimum error of other cross-floor points that account for one-third of the number of directly connected stairs and elevators for calculation.
通过执行上述过程,即可获得各个平层骨架较佳的对齐效果,最终可输出3D拓扑地图。By performing the above process, a better alignment effect of each leveling skeleton can be obtained, and finally a 3D topology map can be output.
可以看到,本申请实施例首先根据检测通道的构型,判定通道的地标点是属于直连类型(例如直连楼梯和直连电梯)、斜连类型(例如斜连楼梯)还是隐含直连类型(例如扶梯);然后,可优先利用直连类型的通道进行平层骨架的初始直连对齐;然后,利用斜连类型通道中的PDR轨迹距离和楼层高度差计算水平偏移量,从而对平层骨架的水平偏移进行补偿,进一步优化计算对齐关系;最后,利用所有地标点进行ICP精对齐,赋予直连电梯和楼梯较高的权值,利用隐含直连关系的扶梯进一步精确对齐楼层,获得3D拓扑地图。通过分阶段采用由粗到精的楼层坐标系对齐策略,实现楼层的精细化对齐,无需借助室内平面图或者人工编辑,有利于实现自动化的多楼层指纹地图构建,提升了地图构建的效率和准确性,且3D拓扑地图的构建过程不需要依赖于现有的室内平面地图。It can be seen that, in the embodiment of the present application, firstly, according to the configuration of the detection channel, it is determined whether the landmark point of the channel belongs to a direct connection type (such as a direct connection staircase and a direct connection elevator), an oblique connection type (such as an inclined connection staircase) or an implicit direct connection type. connection type (such as escalator); then, the direct connection type channel can be preferentially used for the initial direct connection alignment of the leveling frame; then, the horizontal offset is calculated using the PDR track distance and floor height difference in the inclined connection type channel, so that Compensate the horizontal offset of the leveling skeleton to further optimize the calculation of the alignment relationship; finally, use all landmark points to perform ICP fine alignment, assign higher weights to directly connected elevators and stairs, and use the escalator with implicit direct relationship to further accurate Align floors to get a 3D topology map. By adopting the coarse-to-fine floor coordinate system alignment strategy in stages, the fine alignment of floors can be realized without resorting to indoor floor plans or manual editing, which is conducive to the realization of automatic multi-floor fingerprint map construction and improves the efficiency and accuracy of map construction. , and the construction process of the 3D topological map does not need to rely on the existing indoor flat map.
下面继续描述关于地图映射模块的具体实施例。本申请实施例中,三维拓扑构建模块可用于将3D拓扑地图映射到世界坐标系,以获得多楼层建筑的指纹地图。具体的,三维拓扑构建模块的功能实现可包括两方面:The following continues to describe specific embodiments of the map mapping module. In this embodiment of the present application, the 3D topology building module can be used to map the 3D topology map to the world coordinate system to obtain a fingerprint map of a multi-story building. Specifically, the functional realization of the 3D topology building module can include two aspects:
一方面,如图24所示,众包数据中可包含的移动终端基于卫星导航模块获得的信息,例如移动终端可通过GPS模块检测基准楼层的出入口的GPS信息(简称入口GPS),或者在室内环境中偶尔获得的GPS信息(简称机会GPS)。服务器通过对基准楼层的出入口位置的识别,获得该出入口GPS或室内机会GPS。那么,可利用该出入口GPS或室内机会GPS,将3D拓扑地图映射到世界坐标系,例如WGS84坐标系,从而实现全楼层绝对坐标映射,即获得在世界坐标系下该多楼层建筑的指纹地图。On the one hand, as shown in Figure 24, the mobile terminal that can be included in the crowdsourcing data is based on the information obtained by the satellite navigation module. Occasional GPS information in the environment (opportunistic GPS for short). The server obtains the GPS of the entrance or the indoor opportunity GPS by identifying the position of the entrance and exit of the reference floor. Then, the 3D topology map can be mapped to the world coordinate system, such as the WGS84 coordinate system, by using the entrance and exit GPS or indoor opportunistic GPS, so as to realize the absolute coordinate mapping of the whole floor, that is, to obtain the fingerprint map of the multi-story building in the world coordinate system.
另一方面,如图25所示,本申请实施例也支持利用预先得到的室内地图、矢量地图、栅格地图、或控制点信息,与3D拓扑地图进行映射,从而可将该3D拓扑地图与该多楼层建筑的实际室内平面地图关联起来,从而获得了与该多楼层建筑的实际地图对应的指纹地图。On the other hand, as shown in FIG. 25 , the embodiment of the present application also supports using pre-obtained indoor map, vector map, grid map, or control point information to map with the 3D topology map, so that the 3D topology map can be mapped with the 3D topology map. The actual indoor floor map of the multi-story building is associated, thereby obtaining a fingerprint map corresponding to the actual map of the multi-story building.
可以看到,实施本申请实施例,无需借助(或仅基于部分)室内平面图即可获得WGS84坐标系下多楼层建筑的指纹地图,实现全楼层地图坐标映射。并且,可重建楼层间精细连接关系,从而实现精细化、无缝切换的楼层内定位和通道内定位。本申请兼容无地图源、有地图源两种方式实现3D拓扑地图的绝对坐标映射,以实现多楼层全场景无缝室内外定位效果。It can be seen that by implementing the embodiments of the present application, a fingerprint map of a multi-storey building under the WGS84 coordinate system can be obtained without (or only based on part of) an indoor floor plan, thereby realizing the map coordinate mapping of all floors. In addition, the fine connection relationship between floors can be reconstructed, so as to achieve refined and seamless switching of intra-floor positioning and intra-channel positioning. The present application is compatible with two ways of realizing the absolute coordinate mapping of the 3D topology map without a map source and with a map source, so as to realize the seamless indoor and outdoor positioning effect of multi-floor and full-scene.
综合上文描述的各种实施例可以看到,实施本申请方案,至少可以带来如下效果:Combining the various embodiments described above, it can be seen that implementing the solution of the present application can at least bring about the following effects:
一方面,本申请通过各种各样用户的移动终端对众包数据的收集替代了人工数据的采集和人工标注,无地图依赖地实现3D拓扑地图的构建,无需在室内部署专门的数据采集装置,大大降低了人工物力成本。On the one hand, the present application replaces manual data collection and manual annotation by collecting crowdsourced data on various users' mobile terminals, and realizes the construction of 3D topological maps without map dependence, without deploying special data collection devices indoors. , greatly reducing the cost of labor and material resources.
又一方面,本申请实施例通过融合多种传感器的数据来识别移动终端的轨迹上的地标点,兼容有气压计和无气压计的场景,采用KNN配准算法自学习平层骨架上的候选地标点,结合在通道上跨层轨迹的指纹空间特性和地标点欧式空间分布,精准定位平层骨架上的地标点,从而避免了由于众包数据多样性以及众包数据采集质量带来的影响。On the other hand, the embodiment of the present application identifies landmark points on the trajectory of the mobile terminal by fusing data from multiple sensors, is compatible with scenarios with and without a barometer, and uses the KNN registration algorithm to self-learn candidates on the leveling skeleton. Landmark points, combined with the fingerprint space characteristics of the cross-layer trajectories on the channel and the Euclidean spatial distribution of the landmark points, can accurately locate the landmark points on the flat-layer skeleton, thereby avoiding the influence of the diversity of crowdsourcing data and the quality of crowdsourcing data collection. .
再一方面,本申请充分利用通道地标点的特性,对多个平层骨架自动进行排序、对齐,并识别绝对楼层,整套流程无需人工编辑和标注、无地图依赖,能够全流程自动化、高效率地输出多楼层建筑的指纹地图,提升了指纹地图生成的效率和准确性。实践证明,基于本专利构建的多楼层指纹地图,楼层对齐平均精度达到2-3.5m,所以,基于本申请的指纹地图能够在实际的室内定位中实现高精度定位。由于生成的多楼层指纹地图表征在同一的坐标空间,不同楼层间定位时无需切换即可完成,结合地图映射模块可以实现室内外多楼层全场景无缝定位的使用体验。On the other hand, the application makes full use of the characteristics of the landmark points of the passage, automatically sorts and aligns multiple leveling skeletons, and identifies absolute floors. The whole process does not require manual editing and labeling, and has no map dependence. The entire process can be automated and highly efficient. The fingerprint map of the multi-storey building can be outputted in place, which improves the efficiency and accuracy of the fingerprint map generation. Practice has proved that the multi-floor fingerprint map constructed based on this patent has an average floor alignment accuracy of 2-3.5m. Therefore, the fingerprint map based on this application can achieve high-precision positioning in actual indoor positioning. Since the generated multi-floor fingerprint map is represented in the same coordinate space, the positioning between different floors can be completed without switching. Combined with the map mapping module, it can realize the seamless positioning experience of indoor and outdoor multi-floor full-scene.
最后,现有方法主要借助室内地图实现绝对坐标映射,而目前很多的多楼层建筑没有室内地图提供,导致地图构建失败。而本申请实施例提出基于出入口GPS、机会DPS映射的方法实现指纹地图到绝对坐标的映射,该方法无需依赖室内地图,普适性强,在有室内地图或没室内地图的情况下均有效。Finally, the existing methods mainly rely on indoor maps to achieve absolute coordinate mapping, and many multi-story buildings currently do not provide indoor maps, resulting in the failure of map construction. However, the embodiment of the present application proposes a method based on entry-exit GPS and opportunistic DPS mapping to realize the mapping of fingerprint map to absolute coordinates. This method does not need to rely on indoor maps, has strong universality, and is effective when there is an indoor map or no indoor map.
应理解,在本申请的各种方法实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。It should be understood that in the various method embodiments of the present application, the size of the sequence numbers of the above-mentioned processes does not mean the sequence of execution, and the execution sequence of each process should be determined by its functions and internal logic, and should not be implemented in the present application. The implementation of the examples constitutes no limitation.
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。Those of ordinary skill in the art can realize that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Skilled artisans may implement the described functionality using different methods for each particular application, but such implementations should not be considered beyond the scope of this application.
在上述实施例中,对各个实施例的描述各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。In the above-mentioned embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference may be made to the relevant descriptions of other embodiments.
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the above-described systems, devices and units may refer to the corresponding processes in the foregoing method embodiments, which will not be repeated here. In the several embodiments provided in this application, it should be understood that the disclosed system, apparatus and method may be implemented in other manners. For example, the apparatus embodiments described above are only illustrative. For example, the division of the units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored, or not implemented. On the other hand, the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of devices or units, and may be in electrical, mechanical or other forms.
另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。In addition, each functional module in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit. The functions, if implemented in the form of software functional units and sold or used as independent products, may be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be embodied in the form of a software product in essence, or the part that contributes to the prior art or the part of the technical solution. The computer software product is stored in a storage medium, including Several instructions are used to cause a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), magnetic disk or optical disk and other media that can store program codes .
上述实施例仅用以说明本申请的技术方案,而非对其限制。尽管参照上述实施例对本申请进行了详细的说明,本领域的普通技术人员还应当理解的是:任何基于对上述各实施例所记载的技术方案进行的改动、变形、或者对其中部分技术特征进行的等同替换均应属于本申请各实施例技术方案的精神和范围。The above embodiments are only used to illustrate the technical solutions of the present application, but not to limit them. Although the present application has been described in detail with reference to the above embodiments, those of ordinary skill in the art should also understand that: any modification, deformation, or modification of some of the technical features based on the technical solutions described in the above embodiments The equivalent replacements of all should belong to the spirit and scope of the technical solutions of the various embodiments of the present application.

Claims (37)

  1. 一种多楼层建筑的指纹地图的构建方法,其特征在于,所述方法应用于服务器,包括:A method for constructing a fingerprint map of a multi-story building, wherein the method is applied to a server, comprising:
    接收来自多个移动终端的众包数据,所述众包数据包括所述移动终端在多楼层建筑中跨楼层移动过程采集的运动数据和位置指纹数据;receiving crowdsourced data from a plurality of mobile terminals, the crowdsourced data including motion data and location fingerprint data collected during cross-floor movement of the mobile terminal in a multi-story building;
    根据所述众包数据,确定所述多楼层建筑中的至少两个楼层的平层骨架、连接于各平层骨架之间的通道在所述平层骨架上的位置点、以及所述通道的构型;According to the crowdsourced data, the leveling frames of at least two floors in the multi-storey building, the location points on the leveling frames of the passages connected between the leveling frames, and the location points of the passages are determined. structure;
    根据所述至少两个楼层的平层骨架、所述通道的位置点和所述通道的构型,生成所述多楼层建筑的指纹地图。A fingerprint map of the multi-story building is generated according to the leveling framework of the at least two floors, the location points of the passage, and the configuration of the passage.
  2. 根据权利要求1所述的方法,其特征在于,所述通道的构型包括直连类型或斜连类型;所述直连类型是指所述通道两端的位置点在垂直方向上共线,所述斜连类型是指通道两端的位置点在垂直方向上不共线。The method according to claim 1, wherein the configuration of the channel includes a direct connection type or an oblique connection type; the direct connection type means that the position points at both ends of the channel are collinear in the vertical direction, so The above-mentioned oblique connection type means that the position points at both ends of the channel are not collinear in the vertical direction.
  3. 根据权利要求1或2所述的方法,其特征在于,所述根据所述平层骨架、所述通道的位置点和所述通道的构型,生成三维拓扑地图,包括:The method according to claim 1 or 2, wherein the generating a three-dimensional topological map according to the leveling skeleton, the location points of the channel and the configuration of the channel includes:
    根据各个平层骨架之间的通道的连接关系,对所述各个平层骨架进行排序,以使所述各个平层骨架的顺序符合所述多楼层建筑中楼层的上下关系;根据所述通道的位置点和所述通道的构型,将经所述排序后的各个平层骨架在三维坐标空间进行对齐,以获得所述指纹地图。According to the connection relationship of the passages between the respective leveling frames, the respective leveling frames are sorted, so that the sequence of the respective leveling frames conforms to the upper and lower relationship of the floors in the multi-storey building; The position point and the configuration of the channel are aligned in the three-dimensional coordinate space of the sorted flat skeletons to obtain the fingerprint map.
  4. 根据权利要求3所述的方法,其特征在于,所述根据所述通道的位置点和所述通道的构型,将经所述排序后的各个平层骨架在三维坐标空间进行对齐之前,还包括:The method according to claim 3, characterized in that, before aligning the sorted leveling skeletons in the three-dimensional coordinate space according to the position point of the channel and the configuration of the channel, further include:
    确定所述排序后的各个平层骨架与所述多楼层建筑中楼层的映射关系。A mapping relationship between the sorted leveling skeletons and the floors in the multi-story building is determined.
  5. 根据权利要求4所述的方法,其特征在于,根据所述各个平层骨架之间的通道的连接关系,对所述各个平层骨架进行排序,包括:The method according to claim 4, wherein, according to the connection relationship of the channels between the respective leveling skeletons, sorting the respective leveling skeletons, comprising:
    根据所述各个平层骨架之间的通道的连接关系,构建所述各个平层骨架的有向无环图;constructing a directed acyclic graph of each leveling framework according to the connection relationship of the channels between the leveling frameworks;
    根据所述有向无环图对所述各个平层骨架进行排序。The respective flat skeletons are ordered according to the directed acyclic graph.
  6. 根据权利要求4或5所述的方法,其特征在于,所述确定所述排序后的各个平层骨架与所述多楼层建筑中楼层的映射关系,包括:The method according to claim 4 or 5, wherein the determining the mapping relationship between the sorted leveling skeletons and the floors in the multi-story building comprises:
    根据所述众包数据,确定各个所述平层骨架对应的楼层的出入口数量;所述出入口数量最多的平层骨架对应所述多楼层建筑的一楼;According to the crowdsourcing data, determine the number of entrances and exits of each floor corresponding to the leveling framework; the leveling framework with the largest number of entrances and exits corresponds to the first floor of the multi-story building;
    根据各个所述平层骨架的排序结果,确定剩余的平层骨架分别对应的楼层。According to the sorting result of each of the leveling frameworks, the floors corresponding to the remaining leveling frameworks are determined.
  7. 根据权利要求4-6任一项所述的方法,其特征在于,所述根据所述通道的位置点和所述通道的构型,将经所述排序后的各个平层骨架在三维坐标空间进行对齐,包括:The method according to any one of claims 4-6, wherein, according to the position point of the channel and the configuration of the channel, each leveling skeleton after the sorting is arranged in a three-dimensional coordinate space Alignment, including:
    当两个平层骨架之间具有直连类型的通道时,通过在垂直方向对齐所述通道两端的位置点来使所述两个平层骨架对齐;When there is a direct connection type channel between the two leveling frameworks, aligning the two leveling frameworks by aligning the position points at both ends of the channel in the vertical direction;
    当两个平层骨架之间具有斜连类型的通道时,根据所述通道两端的位置点之间的水平偏移量来对齐所述两个平层骨架。When there is an oblique connection type channel between two leveling frameworks, the two leveling frameworks are aligned according to the horizontal offset between the position points at both ends of the channel.
  8. 根据权利要求1-7任一项所述的方法,其特征在于,所述根据众包数据确定所述多楼层建筑中的至少两个楼层的平层骨架的过程包括:The method according to any one of claims 1-7, wherein the process of determining the leveling skeleton of at least two floors in the multi-story building according to crowdsourcing data comprises:
    根据所述运动数据,获得所述多个移动终端在所述至少两个楼层中的移动轨迹;obtaining movement trajectories of the plurality of mobile terminals in the at least two floors according to the motion data;
    将所述多个移动终端的移动轨迹进行聚合,以获得所述至少两个楼层的平层骨架;其中,所述平层骨架与所述位置指纹数据关联。The movement trajectories of the multiple mobile terminals are aggregated to obtain the leveling skeletons of the at least two floors; wherein, the leveling skeletons are associated with the position fingerprint data.
  9. 根据权利要求1-8任一项所述的方法,其特征在于,所述根据所述众包数据确定连接于各平层骨架之间的通道的所述位置点的过程包括:The method according to any one of claims 1-8, wherein the process of determining, according to the crowdsourcing data, the location points of the channels connected between the skeletons of each leveling layer comprises:
    根据所述运动数据,获得所述多个移动终端在所述至少两个楼层中的移动轨迹;obtaining movement trajectories of the plurality of mobile terminals in the at least two floors according to the motion data;
    识别在各个所述移动轨迹上分布的属于所述通道的位置点;Identifying the position points belonging to the channel distributed on each of the moving trajectories;
    将各个所述移动轨迹和所述至少两个楼层的平层骨架进行匹配,以获得所述通道在所述平层骨架上的位置点。Each of the moving trajectories is matched with the leveling skeletons of the at least two floors to obtain the position points of the passage on the leveling skeletons.
  10. 根据权利要求9所述的方法,其特征在于,所述将各个所述移动轨迹和所述至少两个楼层的平层骨架进行匹配,以获得所述通道的所述位置点,包括:The method according to claim 9, wherein the matching each of the moving trajectories with the leveling skeletons of the at least two floors to obtain the position points of the passages comprises:
    基于所述移动轨迹上的位置点分布,将所述移动轨迹切分为平层段轨迹和跨层段轨迹;Based on the position point distribution on the moving track, the moving track is divided into a flat-segment track and a cross-segment track;
    根据所述平层段轨迹和所述平层骨架,获得所述通道在所述平层骨架上的多个候选位置点;根据所述多个候选位置点,获得所述通道的所述位置点。Obtain multiple candidate position points of the channel on the leveling frame according to the leveling segment trajectory and the leveling skeleton; obtain the position point of the channel according to the multiple candidate position points .
  11. 根据权利要求9所述的方法,其特征在于,所述识别所述通道在所述移动轨迹上的位置点分布,包括:对于所述多个移动终端中的每个移动终端,根据所述移动终端的运动数据,识别在所述移动轨迹上出现用户行为变化的位置;所述用户行为变化是指在所述楼层上的用户行为和在所述通道上的用户行为之间的转变;(说明书解释是一种动态变化的过程)The method according to claim 9, wherein the identifying the position point distribution of the channel on the movement track comprises: for each mobile terminal in the plurality of mobile terminals, according to the movement The movement data of the terminal, identify the position where the user behavior change occurs on the moving track; the user behavior change refers to the transition between the user behavior on the floor and the user behavior on the passage; (instructions Interpretation is a dynamic process)
    根据所述出现用户行为变化的位置,确定所述通道两端的位置点在所述移动轨迹上的位置点分布。According to the location where the user behavior change occurs, the location point distribution of the location points at both ends of the channel on the movement track is determined.
  12. 根据权利要求9所述的方法,其特征在于,所述众包数据还包括通过气压计采集的高度数据;The method of claim 9, wherein the crowdsourced data further comprises altitude data collected by a barometer;
    所述识别所述通道在所述移动轨迹上的位置点分布,包括:The identifying the position distribution of the channel on the moving track includes:
    对于所述多个移动终端中的每个移动终端,根据所述移动终端的运动数据,识别在所述移动轨迹上出现用户行为变化的位置;所述用户行为变化是指在所述楼层上的用户行为和在所述通道上的用户行为之间的转变;For each mobile terminal in the plurality of mobile terminals, according to the motion data of the mobile terminal, identify the position where the user behavior change occurs on the moving track; the user behavior change refers to the movement on the floor. transitions between user behavior and user behavior on said channel;
    根据所述移动终端的高度数据,识别在所述移动轨迹上出现跨层事件的位置;According to the height data of the mobile terminal, identify the position where the cross-layer event occurs on the movement track;
    根据所述出现用户行为变化的位置和所述出现跨层事件的位置,确定所述通道在所述移动轨迹上的位置点分布。According to the location where the user behavior change occurs and the location where the cross-layer event occurs, the location point distribution of the channel on the moving track is determined.
  13. 根据权利要求1-12任一项所述的方法,其特征在于,所述根据所述至少两个楼层的平层骨架、所述通道的连接位置和所述通道的构型,生成所述多楼层建筑的指纹地图,包括:The method according to any one of claims 1 to 12, wherein the generating the multi-layer structure is performed according to the leveling framework of the at least two floors, the connection position of the passage and the configuration of the passage. The fingerprint map of the floor building, including:
    根据所述平层骨架、所述通道的位置点和所述通道的构型,生成三维拓扑地图;generating a three-dimensional topological map according to the leveling skeleton, the location points of the channel and the configuration of the channel;
    将所述三维拓扑地图映射到世界坐标系,获得所述多楼层建筑的指纹地图。The three-dimensional topological map is mapped to the world coordinate system to obtain the fingerprint map of the multi-story building.
  14. 根据权利要求1-13任一项所述的方法,其特征在于,所述根据众包数据确定所述通道的构型的过程包括:The method according to any one of claims 1-13, wherein the process of determining the configuration of the channel according to crowdsourcing data comprises:
    根据所述运动数据进行行人航位推算(PDR),获得所述移动终端在所述通道中移动时的PDR信息;所述PDR信息包括速度、步数、距离、高度变化中的一个或多个;Perform pedestrian dead reckoning (PDR) according to the motion data, and obtain PDR information when the mobile terminal moves in the channel; the PDR information includes one or more of speed, number of steps, distance, and altitude change;
    根据所述PDR信息,确定所述通道的构型。Based on the PDR information, the configuration of the channel is determined.
  15. 根据权利要求1-14任一项所述的方法,其特征在于,所述运动数据为通过至少一个传感器采集的数据,所述至少一个传感器包括加速度计、陀螺仪、磁力计、惯性测量单元中的至少一者;所述位置指纹数据包括无线访问接入点的数量和信号强度。The method according to any one of claims 1-14, wherein the motion data is data collected by at least one sensor, and the at least one sensor includes an accelerometer, a gyroscope, a magnetometer, and an inertial measurement unit. At least one of; the location fingerprint data includes the number and signal strength of wireless access points.
  16. 一种室内定位方法,其特征在于,所述方法应用于第一移动终端,包括:An indoor positioning method, wherein the method is applied to a first mobile terminal, comprising:
    从服务器下载指纹地图,所述指纹地图是所述服务器根据由多个第二移动终端的众包数据确定的多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;Download a fingerprint map from the server, the fingerprint map is the leveling skeleton of the multi-story building, the position points on the leveling skeleton and the passage determined by the server according to the crowdsourced data from a plurality of second mobile terminals generated from the configuration;
    采集所述第一移动终端在所述多楼层建筑中的实时的位置指纹数据;collecting real-time location fingerprint data of the first mobile terminal in the multi-storey building;
    将所述位置指纹数据与所述指纹地图进行匹配,以获得所述第一移动终端在所述多楼层建筑中的实时位置,所述实时位置为在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。Matching the location fingerprint data with the fingerprint map to obtain a real-time location of the first mobile terminal in the multi-story building, where the real-time location is a location in a floor in the multi-story building Or the location in the passage between two floors.
  17. 一种室内定位方法,其特征在于,所述方法应用于服务器,包括:An indoor positioning method, wherein the method is applied to a server, comprising:
    接收来自第一移动终端的定位请求和所述位置指纹数据;receiving a location request and the location fingerprint data from the first mobile terminal;
    将所述位置指纹数据与指纹地图进行匹配获得定位结果;所述指纹地图是所述服务器根据由多个第二移动终端的众包数据确定的所述多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;The location fingerprint data is matched with the fingerprint map to obtain a positioning result; the fingerprint map is the flat skeleton of the multi-story building determined by the server according to the crowdsourcing data of a plurality of second mobile terminals, in the generated from the position points on the flat skeleton and the configuration of the channel;
    将所述第一移动终端发送所述定位结果,所述定位结果用于指示所述第一移动终端在所述多楼层建筑中的实时位置,所述实时位置为在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。The first mobile terminal sends the positioning result, and the positioning result is used to indicate the real-time position of the first mobile terminal in the multi-storey building, and the real-time position is the location in the multi-storey building. A position in a floor or in a passageway between two floors.
  18. 一种用于多楼层建筑的指纹地图构建的装置,其特征在于,所述装置包括:A device for fingerprint map construction for multi-story buildings, characterized in that the device comprises:
    接收模块,用于接收来自多个移动终端的众包数据,所述众包数据包括所述移动终端在多楼层建筑中跨楼层移动过程采集的运动数据和位置指纹数据;a receiving module, configured to receive crowdsourcing data from a plurality of mobile terminals, where the crowdsourcing data includes motion data and location fingerprint data collected by the mobile terminal during a process of moving across floors in a multi-story building;
    指纹地图构建模块,用于根据所述众包数据,确定所述多楼层建筑中的至少两个楼层的平层骨架、连接于各平层骨架之间的通道在所述平层骨架上的位置点、以及所述通道的构型;根据所述至少两个楼层的平层骨架、所述通道的位置点和所述通道的构型,生成所述多楼层建筑的指纹地图。A fingerprint map building module for determining, according to the crowdsourcing data, the leveling skeletons of at least two floors in the multi-storey building and the positions of the passages connected between the leveling skeletons on the leveling skeletons point, and the configuration of the passage; generating a fingerprint map of the multi-storey building according to the leveling framework of the at least two floors, the location points of the passage, and the configuration of the passage.
  19. 根据权利要求18所述的装置,其特征在于,所述通道的构型包括直连类型或斜连类型;所述直连类型是指所述通道两端的位置点在垂直方向上共线,所述斜连类型是指通道两端的位置点在垂直方向上不共线。The device according to claim 18, wherein the configuration of the channel includes a direct connection type or an oblique connection type; the direct connection type means that the position points at both ends of the channel are collinear in the vertical direction, so The above-mentioned oblique connection type means that the position points at both ends of the channel are not collinear in the vertical direction.
  20. 根据权利要求18或19所述的装置,其特征在于,所述指纹地图构建模块具体用于:The device according to claim 18 or 19, wherein the fingerprint map building module is specifically used for:
    根据各个平层骨架之间的通道的连接关系,对所述各个平层骨架进行排序,以使所述各 个平层骨架的顺序符合所述多楼层建筑中楼层的上下关系;According to the connection relationship of the passages between the respective leveling frameworks, the respective leveling frameworks are sorted, so that the order of the respective leveling frameworks conforms to the upper and lower relationship of the floors in the multi-story building;
    根据所述通道的位置点和所述通道的构型,将经所述排序后的各个平层骨架在三维坐标空间进行对齐,以获得所述指纹地图。According to the position point of the channel and the configuration of the channel, the sorted leveling skeletons are aligned in the three-dimensional coordinate space to obtain the fingerprint map.
  21. 根据权利要求20所述的装置,其特征在于,所述指纹地图构建模块还用于:在所述根据所述通道的位置点和所述通道的构型,将经所述排序后的各个平层骨架在三维坐标空间进行对齐之前,确定所述排序后的各个平层骨架与所述多楼层建筑中楼层的映射关系。The device according to claim 20, wherein the fingerprint map building module is further configured to: at the location point according to the channel and the configuration of the channel, the sorted Before the floor skeletons are aligned in the three-dimensional coordinate space, the mapping relationship between the sorted leveling skeletons and the floors in the multi-story building is determined.
  22. 根据权利要求21所述的装置,其特征在于,所述指纹地图构建模块具体用于:The device according to claim 21, wherein the fingerprint map building module is specifically used for:
    根据所述各个平层骨架之间的通道的连接关系,构建所述各个平层骨架的有向无环图;constructing a directed acyclic graph of each leveling framework according to the connection relationship of the channels between the leveling frameworks;
    根据所述有向无环图对所述各个平层骨架进行排序。The respective flat skeletons are ordered according to the directed acyclic graph.
  23. 根据权利要求21或22所述的装置,其特征在于,所述指纹地图构建模块具体用于:The device according to claim 21 or 22, wherein the fingerprint map building module is specifically used for:
    根据所述众包数据,确定各个所述平层骨架对应的楼层的出入口数量;所述出入口数量最多的平层骨架对应所述多楼层建筑的一楼;According to the crowdsourcing data, determine the number of entrances and exits of the floors corresponding to each of the leveling frameworks; the leveling framework with the largest number of entrances and exits corresponds to the first floor of the multi-story building;
    根据各个所述平层骨架的排序结果,确定剩余的平层骨架分别对应的楼层。According to the sorting result of each of the leveling frameworks, the floors corresponding to the remaining leveling frameworks are determined.
  24. 根据权利要求21-23任一项所述的装置,其特征在于,所述指纹地图构建模块具体用于:The device according to any one of claims 21-23, wherein the fingerprint map building module is specifically used for:
    当两个平层骨架之间具有直连类型的通道时,通过在垂直方向对齐所述通道两端的位置点来使所述两个平层骨架对齐;When there is a direct connection type channel between the two leveling frameworks, aligning the two leveling frameworks by aligning the position points at both ends of the channel in the vertical direction;
    当两个平层骨架之间具有斜连类型的通道时,根据所述通道两端的位置点之间的水平偏移量来对齐所述两个平层骨架。When there is an oblique connection type channel between two leveling frameworks, the two leveling frameworks are aligned according to the horizontal offset between the position points at both ends of the channel.
  25. 根据权利要求18-24任一项所述的装置,其特征在于,所述指纹地图构建模块具体用于:The device according to any one of claims 18-24, wherein the fingerprint map building module is specifically used for:
    根据所述运动数据,获得所述多个移动终端在所述至少两个楼层中的移动轨迹;obtaining movement trajectories of the plurality of mobile terminals in the at least two floors according to the motion data;
    将所述多个移动终端的移动轨迹进行聚合,以获得所述至少两个楼层的平层骨架;其中,所述平层骨架与所述位置指纹数据关联。The movement trajectories of the multiple mobile terminals are aggregated to obtain the leveling skeletons of the at least two floors; wherein, the leveling skeletons are associated with the position fingerprint data.
  26. 根据权利要求18-25任一项所述的装置,其特征在于,所述指纹地图构建模块具体用于:The device according to any one of claims 18-25, wherein the fingerprint map building module is specifically used for:
    根据所述运动数据,获得所述多个移动终端在所述至少两个楼层中的移动轨迹;obtaining movement trajectories of the plurality of mobile terminals in the at least two floors according to the motion data;
    识别在各个所述移动轨迹上分布的属于所述通道的位置点;Identifying the position points belonging to the channel distributed on each of the moving trajectories;
    将各个所述移动轨迹和所述至少两个楼层的平层骨架进行匹配,以获得所述通道在所述平层骨架上的位置点。Each of the moving trajectories is matched with the leveling skeletons of the at least two floors to obtain the position points of the passage on the leveling skeletons.
  27. 根据权利要求26所述的装置,其特征在于,所述指纹地图构建模块具体用于:The device according to claim 26, wherein the fingerprint map building module is specifically used for:
    基于所述移动轨迹上的位置点分布,将所述移动轨迹切分为平层段轨迹和跨层段轨迹;Based on the position point distribution on the moving track, the moving track is divided into a flat-segment track and a cross-segment track;
    根据所述平层段轨迹和所述平层骨架,获得所述通道在所述平层骨架上的多个候选位置点;根据所述多个候选位置点,获得所述通道的所述位置点。According to the leveling segment trajectory and the leveling skeleton, multiple candidate position points of the channel on the leveling skeleton are obtained; according to the multiple candidate position points, the position point of the channel is obtained .
  28. 根据权利要求26所述的装置,其特征在于,所述指纹地图构建模块具体用于:The device according to claim 26, wherein the fingerprint map building module is specifically used for:
    对于所述多个移动终端中的每个移动终端,根据所述移动终端的运动数据,识别在所述移动轨迹上出现用户行为变化的位置;所述用户行为变化是指在所述楼层上的用户行为和在所述通道上的用户行为之间的转变;(说明书解释是一种动态变化的过程)For each mobile terminal in the plurality of mobile terminals, according to the motion data of the mobile terminal, identify the position where the user behavior change occurs on the moving track; the user behavior change refers to the movement on the floor. The transition between user behavior and user behavior on the channel; (the specification explains that it is a dynamic process)
    根据所述出现用户行为变化的位置,确定所述通道两端的位置点在所述移动轨迹上的位置点分布。According to the location where the user behavior change occurs, the location point distribution of the location points at both ends of the channel on the movement track is determined.
  29. 根据权利要求26所述的装置,其特征在于,所述众包数据还包括通过气压计采集的高度数据;The apparatus of claim 26, wherein the crowdsourced data further comprises altitude data collected by a barometer;
    所述指纹地图构建模块具体用于:The fingerprint map building module is specifically used for:
    对于所述多个移动终端中的每个移动终端,根据所述移动终端的运动数据,识别在所述移动轨迹上出现用户行为变化的位置;所述用户行为变化是指在所述楼层上的用户行为和在所述通道上的用户行为之间的转变;For each mobile terminal in the plurality of mobile terminals, according to the motion data of the mobile terminal, identify the position where the user behavior change occurs on the moving track; the user behavior change refers to the movement on the floor. transitions between user behavior and user behavior on said channel;
    根据所述移动终端的高度数据,识别在所述移动轨迹上出现跨层事件的位置;According to the height data of the mobile terminal, identify the position where the cross-layer event occurs on the movement track;
    根据所述出现用户行为变化的位置和所述出现跨层事件的位置,确定所述通道在所述移动轨迹上的位置点分布。According to the location where the user behavior change occurs and the location where the cross-layer event occurs, the location point distribution of the channel on the moving track is determined.
  30. 根据权利要求18-29任一项所述的装置,其特征在于,所述指纹地图构建模块具体用于:The device according to any one of claims 18-29, wherein the fingerprint map building module is specifically used for:
    根据所述平层骨架、所述通道的位置点和所述通道的构型,生成三维拓扑地图;generating a three-dimensional topological map according to the leveling skeleton, the location points of the channel and the configuration of the channel;
    将所述三维拓扑地图映射到世界坐标系,获得所述多楼层建筑的指纹地图。The three-dimensional topological map is mapped to the world coordinate system to obtain the fingerprint map of the multi-story building.
  31. 根据权利要求18-30任一项所述的装置,其特征在于,所述指纹地图构建模块具体用于:The device according to any one of claims 18-30, wherein the fingerprint map building module is specifically used for:
    根据所述运动数据进行行人航位推算(PDR),获得所述移动终端在所述通道中移动时的PDR信息;所述PDR信息包括速度、步数、距离、高度变化中的一个或多个;Perform pedestrian dead reckoning (PDR) according to the motion data, and obtain PDR information when the mobile terminal moves in the channel; the PDR information includes one or more of speed, number of steps, distance, and altitude changes;
    根据所述PDR信息,确定所述通道的构型。Based on the PDR information, the configuration of the channel is determined.
  32. 根据权利要求18-31任一项所述的装置,其特征在于,所述运动数据为通过至少一个传感器采集的数据,所述至少一个传感器包括加速度计、陀螺仪、磁力计、惯性测量单元中的至少一者;所述位置指纹数据包括无线访问接入点的数量和信号强度。The device according to any one of claims 18-31, wherein the motion data is data collected by at least one sensor, and the at least one sensor includes an accelerometer, a gyroscope, a magnetometer, and an inertial measurement unit. At least one of; the location fingerprint data includes the number and signal strength of wireless access points.
  33. 一种用于室内定位的装置,其特征在于,所述装置应用于第一移动终端,包括:An apparatus for indoor positioning, wherein the apparatus is applied to a first mobile terminal, comprising:
    接收模块,用于从服务器下载指纹地图,所述指纹地图是所述服务器根据由多个第二移动终端的众包数据确定的多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;The receiving module is used for downloading a fingerprint map from the server, where the fingerprint map is the leveling skeleton of the multi-story building and the position on the leveling skeleton determined by the server according to the crowdsourcing data of a plurality of second mobile terminals generated by the configuration of the points and channels;
    数据采集模块,用于采集所述第一移动终端在所述多楼层建筑中的实时的位置指纹数据;a data collection module, configured to collect real-time location fingerprint data of the first mobile terminal in the multi-storey building;
    本地定位模块,用于将所述位置指纹数据与所述指纹地图进行匹配,以获得所述第一移动终端在所述多楼层建筑中的实时位置,所述实时位置为在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。A local positioning module for matching the location fingerprint data with the fingerprint map to obtain the real-time location of the first mobile terminal in the multi-story building, where the real-time location is in the multi-story building A position in a floor in a , or a position in a passageway between two floors.
  34. 一种用于室内定位的装置,其特征在于,所述装置应用于服务器,包括:An apparatus for indoor positioning, characterized in that the apparatus is applied to a server, comprising:
    接收模块,用于接收来自第一移动终端的定位请求和所述位置指纹数据;a receiving module for receiving a positioning request and the position fingerprint data from the first mobile terminal;
    云端定位服务模块,用于将所述位置指纹数据与指纹地图进行匹配获得定位结果;所述指纹地图是所述服务器根据由多个第二移动终端的众包数据确定的所述多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;The cloud positioning service module is used for matching the position fingerprint data with a fingerprint map to obtain a positioning result; the fingerprint map is the data of the multi-story building determined by the server according to the crowdsourcing data of a plurality of second mobile terminals. Generated by the leveling framework, the position points on the leveling framework and the configuration of the channel;
    发送模块,用于将所述第一移动终端发送所述定位结果,所述定位结果用于指示所述第一移动终端在所述多楼层建筑中的实时位置,所述实时位置为在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。a sending module, configured to send the positioning result to the first mobile terminal, where the positioning result is used to indicate the real-time position of the first mobile terminal in the multi-storey building, where the real-time position is in the A position in a floor in a multi-story building or in a passageway between two floors.
  35. 一种服务器,其特征在于,所述服务器包括存储器、通信装置和处理器,其中:所述通信装置用于从外界接收数据或者向外界发送数据;所述存储器用于存储程序;所述处理器用于执行所述存储器存储的程序,当所述处理器执行所述存储器存储的程序时,具体用于执行权利要求1至15中任一项所述的方法。A server, characterized in that the server comprises a memory, a communication device and a processor, wherein: the communication device is used for receiving data from the outside world or sending data to the outside world; the memory is used for storing programs; the processor is used for For executing the program stored in the memory, when the processor executes the program stored in the memory, it is specifically configured to execute the method according to any one of claims 1 to 15 .
  36. 一种移动终端,其特征在于,所述服务器包括通信装置、信号检测装置和处理器,其中:A mobile terminal, characterized in that the server comprises a communication device, a signal detection device and a processor, wherein:
    所述通信装置用于服务器下载指纹地图,所述指纹地图是所述服务器根据由多个第二移动终端的众包数据确定的多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;The communication device is used for the server to download a fingerprint map, and the fingerprint map is the leveling skeleton of the multi-story building and the position on the leveling skeleton determined by the server according to crowdsourcing data of a plurality of second mobile terminals. generated by the configuration of the points and channels;
    所述信号检测装置用于采集所述第一移动终端在所述多楼层建筑中的实时的位置指纹数据;The signal detection device is used to collect real-time location fingerprint data of the first mobile terminal in the multi-storey building;
    所述处理器用于将所述位置指纹数据与所述指纹地图进行匹配,以获得所述第一移动终端在所述多楼层建筑中的实时位置,所述实时位置为在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。The processor is configured to match the location fingerprint data with the fingerprint map to obtain a real-time location of the first mobile terminal in the multi-story building, where the real-time location is in the multi-story building The location in the floor of the , or the location in the passage between the two floors.
  37. 一种服务器,其特征在于,所述服务器包括通信装置和处理器,其中:A server, characterized in that the server includes a communication device and a processor, wherein:
    所述通信装置用于接收来自第一移动终端的定位请求和所述位置指纹数据;The communication device is configured to receive a positioning request and the position fingerprint data from the first mobile terminal;
    所述处理器用于将所述位置指纹数据与指纹地图进行匹配获得定位结果;所述指纹地图是所述服务器根据由多个第二移动终端的众包数据确定的所述多楼层建筑的平层骨架、在所述平层骨架上的位置点和所述通道的构型生成的;The processor is configured to match the location fingerprint data with a fingerprint map to obtain a positioning result; the fingerprint map is the leveling of the multi-story building determined by the server according to crowdsourcing data from a plurality of second mobile terminals. The skeleton, the position points on the flat skeleton and the configuration of the channel are generated;
    所述通信装置还用于将所述第一移动终端发送所述定位结果,所述定位结果用于指示所述第一移动终端在所述多楼层建筑中的实时位置,所述实时位置为在所述多楼层建筑中的楼层中的位置或者在两个楼层间的通道中的位置。The communication device is further configured to send the positioning result to the first mobile terminal, where the positioning result is used to indicate the real-time position of the first mobile terminal in the multi-storey building, where the real-time position is at A location in a floor in the multi-story building or a location in a passageway between two floors.
PCT/CN2021/114822 2020-08-31 2021-08-26 Method for constructing fingerprint map of multi-floor building, positioning method, and apparatus WO2022042655A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010899650.XA CN114125696A (en) 2020-08-31 2020-08-31 Construction method, positioning method and device of fingerprint map of multi-floor building
CN202010899650.X 2020-08-31

Publications (1)

Publication Number Publication Date
WO2022042655A1 true WO2022042655A1 (en) 2022-03-03

Family

ID=80352682

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/114822 WO2022042655A1 (en) 2020-08-31 2021-08-26 Method for constructing fingerprint map of multi-floor building, positioning method, and apparatus

Country Status (2)

Country Link
CN (1) CN114125696A (en)
WO (1) WO2022042655A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114818226A (en) * 2022-06-27 2022-07-29 深圳小库科技有限公司 Pipeline arrangement generating method, device, equipment and storage medium for plate building
CN116184312A (en) * 2022-12-22 2023-05-30 泰州雷德波达定位导航科技有限公司 Indoor crowdsourcing fingerprint library construction method based on semantic Wi-Fi
CN116580160A (en) * 2023-07-12 2023-08-11 深圳大学 Building monomer segmentation and structure reconstruction coupling processing method and related device

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116858232A (en) * 2022-03-26 2023-10-10 华为技术有限公司 Vehicle position acquisition method and electronic equipment
WO2024031554A1 (en) * 2022-08-11 2024-02-15 北京城市网邻信息技术有限公司 Three-dimensional modeling method and apparatus for multi-layer space, and computer-readable storage medium
CN115950437B (en) * 2023-03-14 2023-06-09 北京建筑大学 Indoor positioning method, positioning device, equipment and medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103152697A (en) * 2013-03-25 2013-06-12 南京大学 Method for realizing automatic floor positioning by using intelligent mobile phone Wi-Fi (Wireless Fidelity) function
CN105263113A (en) * 2015-10-26 2016-01-20 深圳大学 Wi-Fi location fingerprint map building method and system based on crowd-sourcing
CN106448431A (en) * 2016-08-24 2017-02-22 电子科技大学 Mobile phone sensor-based indoor planar graph construction method adopting crowdsourcing mode
CN106851585A (en) * 2017-01-12 2017-06-13 杭州电子科技大学 A kind of mixing floor location method based on barometer and WiFi
CN109819406A (en) * 2019-01-22 2019-05-28 江苏大学 A kind of indoor orientation method based on crowdsourcing
US20200142008A1 (en) * 2018-11-06 2020-05-07 Invensense, Inc. Method and system for magnetometer calibration

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10111197B2 (en) * 2011-11-02 2018-10-23 Navin Systems Ltd. Generating and using a location fingerprinting map
CN102612071B (en) * 2012-02-24 2014-11-05 华为技术有限公司 Method and device for presenting indoor telephone traffic map
US9170113B2 (en) * 2012-02-24 2015-10-27 Google Inc. System and method for mapping an indoor environment
CN103425800B (en) * 2013-09-04 2016-08-17 中国科学院遥感与数字地球研究所 map visualization method, device and processor
US10048077B2 (en) * 2014-11-24 2018-08-14 Pornchai Direkwut Method and system of generating an indoor floor plan
CN109525935B (en) * 2018-11-23 2021-01-15 武汉大学 Intelligent floor sensing method and control system for universal indoor environment
CN111311748B (en) * 2020-02-19 2023-06-30 广东小天才科技有限公司 Indoor stereogram construction method and device, terminal equipment and storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103152697A (en) * 2013-03-25 2013-06-12 南京大学 Method for realizing automatic floor positioning by using intelligent mobile phone Wi-Fi (Wireless Fidelity) function
CN105263113A (en) * 2015-10-26 2016-01-20 深圳大学 Wi-Fi location fingerprint map building method and system based on crowd-sourcing
CN106448431A (en) * 2016-08-24 2017-02-22 电子科技大学 Mobile phone sensor-based indoor planar graph construction method adopting crowdsourcing mode
CN106851585A (en) * 2017-01-12 2017-06-13 杭州电子科技大学 A kind of mixing floor location method based on barometer and WiFi
US20200142008A1 (en) * 2018-11-06 2020-05-07 Invensense, Inc. Method and system for magnetometer calibration
CN109819406A (en) * 2019-01-22 2019-05-28 江苏大学 A kind of indoor orientation method based on crowdsourcing

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114818226A (en) * 2022-06-27 2022-07-29 深圳小库科技有限公司 Pipeline arrangement generating method, device, equipment and storage medium for plate building
CN114818226B (en) * 2022-06-27 2022-09-30 深圳小库科技有限公司 Pipeline arrangement generating method, device, equipment and storage medium for plate building
CN116184312A (en) * 2022-12-22 2023-05-30 泰州雷德波达定位导航科技有限公司 Indoor crowdsourcing fingerprint library construction method based on semantic Wi-Fi
CN116184312B (en) * 2022-12-22 2023-11-21 泰州雷德波达定位导航科技有限公司 Indoor crowdsourcing fingerprint library construction method based on semantic Wi-Fi
CN116580160A (en) * 2023-07-12 2023-08-11 深圳大学 Building monomer segmentation and structure reconstruction coupling processing method and related device
CN116580160B (en) * 2023-07-12 2023-12-15 深圳大学 Building monomer segmentation and structure reconstruction coupling processing method and related device

Also Published As

Publication number Publication date
CN114125696A (en) 2022-03-01

Similar Documents

Publication Publication Date Title
WO2022042655A1 (en) Method for constructing fingerprint map of multi-floor building, positioning method, and apparatus
US11199412B2 (en) Collaborative creation of indoor maps
Gu et al. Indoor localization improved by spatial context—A survey
US11328158B2 (en) Visual-inertial positional awareness for autonomous and non-autonomous tracking
US10126134B2 (en) Method and system for estimating uncertainty for offline map information aided enhanced portable navigation
US10018474B2 (en) Method and system for using offline map information aided enhanced portable navigation
US10332309B2 (en) Method and apparatus for identifying buildings in textured 3D mesh data and generating 3D building models
WO2020223974A1 (en) Method for updating map and mobile robot
US10547976B2 (en) Method and system for assigning point of sale information
US20160069690A1 (en) Method and apparatus for using map information aided enhanced portable navigation
US20150285639A1 (en) Method and system for crowd sensing to be used for automatic semantic identification
US11343636B2 (en) Automatic building detection and classification using elevator/escalator stairs modeling—smart cities
Shu et al. Efficient image-based indoor localization with MEMS aid on the mobile device
Gu et al. Integration of positioning and activity context information for lifelog in urban city area
KR102387974B1 (en) Autonomous driving platform based on grid-address system on the basis of digital twin
WO2015150855A1 (en) A method and system for crowd sensing to be used for automatic semantic identification
Guo et al. Indoor semantic-rich link-node model construction using crowdsourced trajectories from smartphones
Wu et al. Indoor surveillance video based feature recognition for pedestrian dead reckoning
US11521023B2 (en) Automatic building detection and classification using elevator/escalator stairs modeling—building classification
US11494673B2 (en) Automatic building detection and classification using elevator/escalator/stairs modeling-user profiling
KR102223319B1 (en) Method and system of gathering and using composite data for indoor location recognition through crowdsorcing
Chi et al. Locate, Tell, and Guide: Enabling public cameras to navigate the public
US20240159857A1 (en) Method for constructing indoor map and related apparatus
WO2023005865A1 (en) Method for constructing indoor map and related apparatus
Pipelidis et al. Models and tools for indoor maps

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21860489

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21860489

Country of ref document: EP

Kind code of ref document: A1