The system relates to an indoor positioning system with fast floor plan mapping.
Indoor positioning is a common problem people encounter. Due to poor visibility, GPS cannot be used in most indoor applications. Although the industry has developed alternative methods such as using Wi-Fi or Bluetooth triangulation, they usually need a pre-setup or even a survey procedure before being useable. Another problem arises from a building's floor plan. Most commonly, a building's floor plan is a picture image, such as paper copy or microfilm or digitized picture. Even if a positioning system is able to calculate the location of a particular point inside the building, due to the lack of detailed information from the floor plan image, the system may not be possible or hard to map the location into the floor map. However, the capability of such mapping may be critical such as in a fire fighting case, in that such mapping could help the fire fighter to quickly get into the scene or assist the evacuation.
One conventional solution is the method used by Google Map, and the second is that used by indoor positioning software using Wi-Fi or Bluetooth. For Google Map floor plan mapping, the user first find the building on Google Map, then upload the floor plan image (for example in JPEG format), followed by the step of “line up”, to line up the floor plan with Google Map. “Line up” requires many manual operations, and the result may not be accurate.
For existing survey-based indoor positioning system using Wi-Fi or Bluetooth, the procedure is to upload the floor plan, and then specify the positioning node (i.e., the fixed node either to send out signal to or receive signal from the mobile devices to be located) location on the floor plan. This method requires pre-knowledge or pre-processing before usable. An alternative approach is called “opportunistic” solution, which knows its initial location (e.g., from GPS while moving from outdoor to indoor) is to “estimate” the location by measuring a user's acceleration and orientation. This solution requires pre-aligned map (floor plan) with outside image or absolute coordinates which may not be available.
In one aspect, an in-door positioning system for a building includes three or more external positioning devices (EPDs), wherein the EPD is capable of calculating the distance between each other; a floor plan module with a floor plan map of the building, for a building level of interest; and relative positions of the EPDs; and an indoor positioning device positioned at a predetermined distance to each of the EPDs.
In another aspect, a positioning system contains 3 or more external devices that are able to synchronize and calculate a relative distance to each other. Each external device also has the capability to measure its distance to the building, such as using ultrasonic or laser distance sensor. The system has software to collect such measured or calculated information, including the distance among the external devices and the distance of each device to the building, and construct 3D model to display through graphic user interface (GUI). The system has code that recognizes the building's floor plan, either in scanned image or architect's design file. The floor plan has dimension between two points, either direct or indirect, that the code can detect. The system is able to display the floor plan using the same scale as the measured distances by external devices and display through the GUI. The user specifies the measuring points at the building or align the floor plan with the drawn outline from the measured distances. The system has indoor device that can be located using external devices' coordination. The indoor device is displayed by software together with floor map. A graphical user interface (GUI) is able to show the overlapped indoor device and the floor map, which gives the indoor device positioning on the floor map.
Advantages of the system may include one or more of the following. The system makes in-field positioning possible, which is able to quickly and accurately display the positioned indoor object or person over the given floor map, without pre-setup or measurement. This is particularly useful under emergent circumstances such as disaster evacuation and firefighting. The system provides the capability of positioning an indoor device without pre-setup and survey, and using devices outside the building to achieve positioning, which may be useful for disaster evacuation and assistance or firefighting.
The EPDs can be human carried or vehicle (including unmanned aerial vehicle or UAV) mounted. The initial step is putting EPDs in fixed positions outside the building, such as EPD1˜EPD4 (each denoted 104) in
Software on the device 110 maps the relative location of the EPDs 104 and their distances to the building in a planar graph. In addition, the software has the building's floor plan. In one embodiment, the measured distances to the building can be applied directly to the level of interest. For example, the EPD is on the same floor level as that of interest, as shown in
Besides consistent scale between the displayed floor plan and positioning devices, the software can also have them oriented in the same direction. In one embodiment, one EPD knows the direction of another EPD, and the floor plan has also has the orientation knowledge, either inputted by user (such as input box 412 in
With properly rotated EPDs and floor plan, the next step is combining them to the right relative position. In one embodiment, an assistant circle, for example circle 604 around EPD1, is drawn around each EPD, using measured shortest distance to the building (same level as the floor plan) as the radius of the circle. In one embodiment, the user drags the building or the EPDs (“dragging” step, with their relative position fixed) to let all the circles touch but not cross the floor plan, as shown in
After both the angle and the relative position are aligned, the system considers the combined image as a locked bundle, so that further operation such as rotation or movement will still keep them coupled. Now the software is ready to position the IPD on the floor map. By collecting the distances between an IPD and each EPD, such as distance 702 between IPD and EPD1 in
With these elements and the obtained knowledge, the software:
Various embodiments can include the following:
The EPD has distance sensor, to measure its shortest distance to the building and the distance is measured by acoustic distance sensor, by laser distance sensor, or at the floor of interest
Software uses the measured distance to the floor of interest as radius, to draw a circle around the corresponding EPD; the floor plan map and EPDs alignment includes the procedure to align the outline of the floor of interest with the circles, so that the circles touch but not cross the outline
The distance is measured at a floor that is different from the floor of interest. The outline of the measuring floor is marked on the floor of interest. Software uses the measured distance as radius to draw a circle, and aligns the circle to the outline of the corresponding floor. The EPDs are attached to the exterior of the building. The aforementioned “measured” distances are all zeros. The EPDs are mounted on ground level vehicles; or, the EPDs are carried by UAVs
Software obtains the floor plan scale by letting user specify two points on the floor plan map together with the actual distance in between
In one embodiment, the absolute position and orientation of both the EPDs and the building are known, so the software does the alignment automatically.
The system provides the capability of positioning an indoor device without pre-setup and survey, and using devices outside the building to achieve positioning, which may be useful for disaster evacuation and assistance or firefighting.
The system has 3 or more EPDs, located outside of the building, either portable or vehicle (including UAV) mounted; each EPD has a distance measuring sensor to measure the shortest distance to the building; an indoor positioning device which is the object to map on the corresponding floor plan; software that handles the layout of the EPDs and the floor plan. With these items, the operation procedure is:
1) EPDs measure the distance between each other
2) EPDs measure its shortest distance to the building
3) Software has floor plan image or design file, and the measured data from the EPDs
4) Software obtains dimension of the floor plan, either by user inputting two points and specify the distance, or by reading data from design file; the software zooms the floor plan and the EPDs to the same scale
5) If both the floor plan and the EPDs have orientation information, the software rotates either or the floor plan or the EPDs or both to have them in the same orientation
6) Software aligns the EPDs and the floor plan. This can be achieved by letting user manually drag the floor plan map or the EPDs, or by knowing the outline of the building and using software to automatically do that
7) With IPD distance to each of the EPDs, the software is able to position the IPD on the map.
Referring to the drawings in which like numerals represent the same or similar elements and initially to
A first storage device 122 and a second storage device 124 are operatively coupled to a system bus 102 by the I/O adapter 120. The storage devices 122 and 124 can be any of a disk storage device (e.g., a magnetic or optical disk storage device), a solid state magnetic device, and so forth. The storage devices 122 and 124 can be the same type of storage device or different types of storage devices.
A speaker 132 is operatively coupled to the system bus 102 by the sound adapter 130. A transceiver 142 is operatively coupled to the system bus 102 by a network adapter 140. A display device 162 is operatively coupled to the system bus 102 by a display adapter 160. A first user input device 152, a second user input device 154, and a third user input device 156 are operatively coupled to the system bus 102 by a user interface adapter 150. The user input devices 152, 154, and 156 can be any of a keyboard, a mouse, a keypad, an image capture device, a motion sensing device, a microphone, a device incorporating the functionality of at least two of the preceding devices, and so forth. Of course, other types of input devices can also be used while maintaining the spirit of the present principles. The user input devices 152, 154, and 156 can be the same type of user input device or different types of user input devices. The user input devices 152, 154, and 156 are used to input and output information to and from the system 100.
Of course, the processing system 100 may also include other elements (not shown), as readily contemplated by one of skill in the art, as well as omit certain elements. For example, various other input devices and/or output devices can be included in the processing system 100, depending upon the particular implementation of the same, as readily understood by one of ordinary skill in the art. For example, various types of wireless and/or wired input and/or output devices can be used. Moreover, additional processors, controllers, memories, and so forth, in various configurations, can also be utilized as readily appreciated by one of ordinary skill in the art. These and other variations of the processing system 100 are readily contemplated by one of ordinary skill in the art given the teachings of the present principles provided herein.
It should be understood that embodiments described herein may be entirely hardware, or may include both hardware and software elements which includes, but is not limited to, firmware, resident software, microcode, etc.
Embodiments may include a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or any instruction execution system. A computer-usable or computer readable medium may include any apparatus that stores, communicates, propagates, or transports the program for use by or in connection with the instruction execution system, apparatus, or device. The medium can be magnetic, optical, electronic, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium. The medium may include a computer-readable storage medium such as a semiconductor or solid state memory, magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk and an optical disk, etc.
A data processing system suitable for storing and/or executing program code may include at least one processor, e.g., a hardware processor, coupled directly or indirectly to memory elements through a system bus. The memory elements can include local memory employed during actual execution of the program code, bulk storage, and cache memories which provide temporary storage of at least some program code to reduce the number of times code is retrieved from bulk storage during execution. Input/output or I/O devices (including but not limited to keyboards, displays, pointing devices, etc.) may be coupled to the system either directly or through intervening I/O controllers.
The foregoing is to be understood as being in every respect illustrative and exemplary, but not restrictive, and the scope of the invention disclosed herein is not to be determined from the Detailed Description, but rather from the claims as interpreted according to the full breadth permitted by the patent laws. It is to be understood that the embodiments shown and described herein are only illustrative of the principles of the present invention and that those skilled in the art may implement various modifications without departing from the scope and spirit of the invention. Those skilled in the art could implement various other feature combinations without departing from the scope and spirit of the invention.
Number | Date | Country | |
---|---|---|---|
62286030 | Jan 2016 | US |