Approaches to accurate 3d compass for finding specific locations - android

Say an event is being hosted in a large building. There are 20 rooms which are quite difficult to find.
I want to develop an app which points you in the right direction of a specified room or shows on a 3-d map, the location of you, relative to this room. This obviously includes altitude as the building has many floors.
Now, I looked into GPS, which is not very accurate and also depends on the quality of the phone's GPS. I'm not sure if this is really an option for the accuracy I require.
I also looked into Bluetooth beacons, but it is apparently very difficult to add direction to this as well as distance. Plus, this is only accurate at around 20 meters, right?
What other alternatives are out there that I can research myself?
And which options can I definitely eliminate?
I am not looking for a heated debate over the best approach, I know this is against SO rules.
So just a few potential options is all I wasnt, so I can go and research them myself... maybe wifi or something?

GPS you can forget, there is no or very bad receivement indoors.
I would concentrate on blue tooth beacons. Apple provides such iBeacons, too. So this can give you more information what is feasible.
The third possibility is magnetic field analysis, but i dont trust much that solutions. Altough there are demos and even an ios App (Indoor Atlas), this soultion has some drawbacks. Change of magnetic field after change in construction / furniture.

Related

GPS functionality from the SDK

I've read through the SDK documentation for both Windows and Android and found some functions for accessing the state of the current GPS connection and Latitude/longitude information.
I am looking to develop an application that uses 3d photogrammatry to monitor a set area in real time and am worried that built-in localization might not update the model accurately enough.
So I am wondering if there is a way to get the lower-level information like connection strength and specific connected satellites. (to compare to GPS information from the ground for better accuracy.) Is this supported? (maybe in specific drones?) Or is my only option to attatch a GPS device to it that I then access seperately?
I also know that DJI offers a drone with GPS-RTK to give this accuracy but I'm looking at alternative approaches because of the big step up in cost.
Any information / suggestions would be of great help! Thanks.
I am sorry to report but there is no access to the raw data from the GPS sensors. The information you found in the SDK documentation is all that is available.
How accurate are you looking for? Generally the accuracy is pretty close, certainly within 1 foot or so and there is specifications for GPS accuracy in specific drone's manuals.
There isn't any more info you can get from the sdk.
I guess you looking for raw meassurements? There is nothing that points to that's possible, even in the dumledore messages.
You better stick with the newer drones, since they seems to use dual freq gps, starting from mini2. Very accurate.
Havn't tried the mavic3 but my guess is that they switched to the same gps-chip as in the mini2.
Ne aware that gps lat/lon you get is actually fused with the imu.

GPS elevation/altitude precision - relative position

I'm trying to find a good way to track location of people in a building. I would ultimately like to be able to create a graphic on demand showing where employees are in a building - which floor (elevation), and where on the floor they are located (lat/lon). I have read that elevation is relative to the WGS84 ellipsoid, not sea level necessarily, which is fine. I can define a baseline of where the first floor is, for example, and then calculate the difference of a person's current location from there. If I understand correctly, the general precision lat/lon for a GPS is as fine as 1m, which should be sufficient for me.
Part of my problem is finding a device to use for employees to carry around. The other is finding a device with a supported API (read: "free API") or other programming options. I would like this to be manufacturer-independent.
I would love to do cross-platform development - iOS, Android, PC, web, etc.
Does anyone have experience with something like this, and what recommendations can you offer on where to start? I know this is a little open ended but I'm not sure where to start.
Thanks.
This all does not work (tracking within a building).
GPS Signal is very poor or non existent within a building.
(Next time search here on Stackoverflow. It has been asked some times.)
The only robust and working solution, are BlueTooth beacons.
Such small hardware pieces are mounted within the building.
Such beacons (search for iBeacon) just send out an id.
The phone receives the id, and the approximate distance to it.
You have to administrate and know which id is at which level of the building.
Even when having good reception the GPS signal is not precise enough to determine the floor a person is location.
Some phones have a barometer, like the ipHone, this can track relative heigh changes, and may be used to determine level within a building. (Once calibrated before entering the buulding)

Android navigation without GPS and WIFI

I would like to make an app which is keep tracking various points in a room in 3D and can tell where to look up the tracked points again.
The problem is: I can't use GPS and Wifi points to determine my phone's location and orientation.
So far I know two things which can be useful in this case, the gravitation force, and magnetic north. It is not a problem if there is some misleading fake magnetic north unless it is too close to the room where I want to locate things.
I found that the gyro + acceleration isn't accurate enough to use, is there a "ready made" API what I can use for that? I have the feeling I am reinventing the wheel.
Thanks in advance.
There is only one "ready made" API - Fused locations ( https://developer.android.com/google/play-services/location.html ). But currently it relies on GPS/WiFi/Cell-tower data. I don't beleive there is easy/cheap solution for your problem.
You could use bunch of Bluetooth devices, maybe some BT4 low power tags. Place them everywhere in the room and measure signal strength of each.

How accurate is the Location information of Geotagged photos?

This question is a bit subjective and not exactly a programming question but very relevant to an idea i am trying to develop.
I want to know the personal opinion and information of developers who have dealt with Geotagged information and what they think is current and what they feel will be possible over next 2-4 years.
SO the question is simple , If i take a picture with an iphone or any other phone with geotagging ability (how far will the next picture have to be to differentiate between the two)
Does the accuracy vary from place to place ? Any comments, opinions are welcome.
I am currently developing geo reading and writing routines to incorporate geo searching as well as picture recognition into my software.
My research using bing maps, google earth and tag viewers only to find that if you take a photo with a mobile phone it seems to be out by up to 1000 meters some times. I am just starting to look at this but if these are true accuracy levels then this is a concern. I have only used one mobile phone to date but if these levels are true with other phones then it is a big concern.
I will come back to this page in say a month and maybe some others can give their feedback after using geo tagging on their phone. I maybe very wrong here but it seems to me that programmers are using different standards than those set out in the EXIF specification.
Geolocation data is most likely picked up from the GPS, which is accurate down to a meter or two in the right surroundings. Tough if you are surrounded by tall buildings it might not be any more accurate than 30-40 meters. I don't know if the phone could use the cell antennas to set the location, if so it'll have an accuracy on perhaps 200-600 meters.
So my conclusion is that is you use your phone with GPS enabled the geotag info is indeed useful and accurate!

Calculating distance within a building

I started doing some thinking about creating an Android application that can be used within a corporate building to determine what room you are in. Obviously I'm thinking GPS and network locations wouldn't be accurate enough to accomplish this. (Not to mention the instability of GPS signal inside) I looked briefly into calculating distance via the accelerometer, but it is apparently highly volatile and leaves a large margin for error. I've also considered some sort of triangulation from routers, but you run into issues with walls/microwaves and various other things that could upset the signal strength. Does anyone have any possible ideas or directions to try?
How about bluetooth tags that emit a room id. You could make money merchandising the emitters on a facility size basis and they could provide additional functionality such as:
(1) forming a pico net that ultimately updates the an onsite server with locations of everyone using the app, or
(2) tracking key equipment with a similar bluetooth tag, etc.
You could get something similar to the link below in qty from China, I'm sure:
http://www.engadget.com/2009/03/26/nio-bluetooth-security-tag-keeps-tabs-on-your-belongings/
Perhaps it is not too much help but the papers I have found on this subject are these:
RSSI-Based Indoor Localization and Tracking Using Sigma-Point Kalman Smoothers
Pedestrian Tracking with Shoe-Mounted Inertial Sensors
Enhancing the Performance of Pedometers Using a Single Accelerometer
I have no idea how these methods would perform in real-life applications or how to turn them into a nice Android app.
I am curious what other answers you will get.

Categories

Resources