Get the next direction help provided GPS location - google-maps-api-3

I am working on proof of concept project that is an augmented reality based navigation system. Basically, it is supposed to provide users a video of real scene with additional navigational signs that are created with the use of GPS location.
The thing I need to do is not a complete useful system but rather a proof of concept. There were mainly two tasks that I had to do. First real image of the scene is processed to determine the road in it, and with the use of GPS I will place the navigational sign like turn right, go straight on the road. The challenge I have here is how i can fetch the required navigation information. I considered Google Maps Api but it requires you to have your google host. I also made some research about how to get directions from it, but it seems that results are not very well structured for my purposes. I mean I need something like having a certain number of outputs and rigorously defined (e.g. turn right, turn left, etc) but its output is very unstructured. How do you think I can achieve this task. Thanks for any help.

This Link might help for Google Map Location extraction
https://developers.google.com/maps/documentation/javascript/streetview
You can use Layar , or other available AR sdks(Metaio, QUalcomm also provide one ) for AR related Overlays
Good luck !

Related

Damaging QR Codes to Create Circles: Are Corners Necessary?

I am trying to create a circular QR Code. I understand that the typical circular codes require customer readers (Facebook, Kik, TikTok, ShotCode, etc.), but I would like this code to be able to be read by standard devices (ex.: the built-in reader in iOS devices).
I have looked at a stack of reference materials, including:
How can I generate a circular qr-code like a messenger or a kik code?
Generate circular qr-code like a messenger or a kik code using Python
Generate QR codes missing the corner
I've also dug into the (really in-depth) tutorial at thonky.com, and tried to create my own:
From what I can tell, I've kept the finder patterns, the alignment pattern, the timing patterns, the separators, and the dark module intact (see details here). But still no love when I try to read it.
Admittedly, I've taken an existing code (it contains the URL 'https://www.stackoverflow.com') and just chopped off the corners to make it fit. So my assumption is that I've damaged the code enough that the error correction isn't working.
But, would this work at all anyway? If I figured out how to encode it correctly, would it work without the corners? Or is this a useless endeavor to start with?
There is a basic structure for QR codes with specific elements that take part in the decoding process. Some of them are the alignment, the timing pattern, and the finder pattern. One of the elements which seems to be missing is the quiet zone. It's used to separate the code from other objects and surrounds all the data including structuring elements in the code. Have a look on the outer side of codes here and notice the difference. Also, if you look at the points that represent your data cells, some of them partially exist. In other words, some half and quarter circles exist and others are unknown behind the outer frame of your code design. How would it be figured out if it's black or white to be used for decoding? This is the problem. Please check this image to see how data look missing when you crop it with the circle.
Also, if you use any regular QR coder reading application, you will notice that circular QR codes require custom readers. So, the answer to your question is yes. The corners are necessary if you don't use a custom reader and if data exists on them.
If you are interested in academic research details, see this. I hope my answer helps you. :)

Is there any way to use Point Cloud Library (or similar) to get a skeleton from point cloud data like obj?

everyone.
I've been stuck for some days searching some way to get the skeleton of a point cloud data (like OBJ) but not using kinect. Is it possible?
I found the Point Cloud Library which does a lot of tasks related to point cloud data, and in their documentation there is a body keypoints detector, but it also works with kinect grabbers.
In my case, I have a point cloud data like in the picture, which was generated by another depth sensor scanner. Is it possible to find the key points in such data?
I really would appreciate any help. Thanks in advance.
Even if it's not explicitly mentioned in the tutorial you linked, a quick to the code suggests that you can use different data sources (e.g. PCD files), so you're not stuck with the live capture from Kinect.
All the tutorial code really does is the following:
Setup the GPU for the people parts detection.
Pick the appropriate data source.
Load the tree files for the body part detector.
Run the PeopleDetector on a single frame captured from the live grabber stream/PCD file.

Creating an indoor map

I wonder if someone here can help here ,in my web application I'm trying to create map section:
In my map section the objective is to show an indoor search like in the attached picture from Yahoo Maps does someone know how they Created the tenants names and level of the floor on the maps it self?
http://s30.postimg.org/4dh7mlpfl/Yahoo_Maps.png
I think the best answer for this one is going to depend on which mapping framework you were interested in using.
If you're using Yahoo maps: Yahoo got that indoor map data from Nokia's here platform. As far as I know, they don't offer an editor for the indoor mapping data. The major mapping platforms often have some self-service mechanism to add or correct mapping data. If you were set on having this available and you were using Yahoo's maps, you might want to try to contact someone at Nokia's "here" and see how you might be able to get that to happen.
With that being said, you can do something like that with Google Maps as well. They have information and a way to add the interior layout of a building here. I haven't used it...I just know that it exists, so I can't speak to it in much detail.
There is also some support for this kind of thing in OpenStreetMap. I would post a link to an example of it, but stackoverflow says I can't post more than 2 links unless I have more than 10 reputation. (Sorry...I'm still relatively new to posting on here.)

mapping API: Google earth, Worldwind or OpenStreet MAP

I would like to include MAP in an application which will update the route I travel.
I have studied various map sources and listed Google Earth, Worldwind and Openstreet map.
Can someone help me in choosing the right one.
I might need offline use also.
I may advice you to choose Google earth: it is quicker and has better texture quality, in my opinion. It is also quite used so you can find a lot of information and examples about how to do things, whereas Worlwind is not so used (448 vs 38 tags in stackoverflow).

Where to start with map application [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 4 years ago.
Improve this question
i'm trying to desing a new application which allow user see he/her current location on a custom map (office, university compus, etc). but actually i have a couple of question in my mind (i haven't designed this kind of application before). i'm wondering:
How can i draw my own maps, what is the best option for it? there any format that i have to care of, there are any specification about it ?
Once i have my custom map. how can i do to mapping a global position system with the local positions ?
What are the tricks behing zoom on maps ? just differents layers with more or less informations and those layers changes on users demand ?
If a whant to mark some specific points over the map, like a cafeteria, boss's office etc, how can i do that ?
Sorry if my questions are too much generics and dumb, but i really need some clues about this topic because i don't have any idea how to design this kind of application as best as possible. and we don't whant to reinvent the wheel.
I will appreciate any help that you can provide me in order to desing this application
There are a number of approaches you can take to creating a maps application. Which one you use depends on the set of features you want to support, and the degree of control you want to maintain over the product.
If you want something like an embedded google map, then clearly the JavaScript Google Maps API may be best solution. If you need to support further features from the server side, like directions, you can make use of the web services api:
http://code.google.com/apis/maps/documentation/webservices/index.html
If, on the other hand, you essentially need a zoomable map of an area that you can define with markers and borders drawn from your database, and you want complete custom control over this image without having to rely on Google Maps' data or branding, then you can fairly easily build a scalable image either on the client or server, or both.
To start, you will need a set of point coordinates from which to draw your map. These can be derived from the SVG generated by a program like Adobe Illustrator when you draw vector graphics. Thus you could draw your own map in Illustrator and use the generated svg to create your map. In this case you will have to read about SVG and understand how to use it. Raphael.js is an excellent library that offers cross-browser compatible handling of SVG. If your map is of a familiar region, such as a country, you may be able to find SVG coordinates for it already on the web. You could start by grabbing a subset of the data in this file on wikipedia for the country or region you want to map.
Once you have a set of coordinates that define your map areas, you can keep them in a config file that can be read into memory from disk by your application as needed. It's convenient to save this data in the form of a hash, where each set of key-value pairs stores a separate svg 'path', or set of point coordinates that forms a closed shape. These could represent, for instance, the counties in a state.
Once you have the appropriate 'paths' stored in this manner, it is relatively easy to write a wide variety of software implementations.
Check out the imagemagick convert
documentation for the -draw
option for an example of how to
draw a png, jpeg, or gif on your
server from your stored svg paths.
Adam Hooper has some brilliant ideas of what to do with a custom map using SVG on the client side:
http://adamhooper.com/eng/articles/9
Note that you do not necessarily
need to use SVG. Here's an
example of a map drawn on the
server using ImageMagick, with a
highlightable clickmap drawn over it
by the browser, where the
highlighting is handled by the
jquery maphighlight plugin, which
uses the canvas element where it is
supported and VML in its place on
Internet Explorer browsers. All of
these layers (ImageMagick,
client-side click-map, and
client-side javascript highlighting)
are built with straight lines drawn
between point coordinates, so none
of this is actually SVG, and may be
easier to understand. Have a look
at the page source to see how the
click map is drawn, then look at the
maphighlight plugin to understand
what's going on:
http://davidlynch.org/js/maphilight/docs/
A third option, if you need to support more google-maps-like features, but want to add your own map data without using an overlay, is to implement some application of Open Street Maps. If you go to openstreetmap.org, find the area you want to customize, and click the edit tab at the top, you can edit the map as needed for your area. This edits the map data for all users of the Open Street Map service. Then you can get the openlayers javascript from http://openlayers.org/ to render a map on your website from Open Street Maps data that you can freely edit yourself. Also see the OpenStreetMap Wiki that tells you more about the OpenStreetMap movement.
If you don't want to reinvent the wheel, then don't try do do it: take the Google Maps API, add some markers and you're done. Zooming included. They have examples to guide you and there's loads of knowledge about the usage.
All you need is a free API key.
Edit: Your comment in the original question indicates that you want to use a custom overlay over existing maps. That's also possible as this example shows (see docs for custom overlays).
In the effort to not reinvent the wheel (which is definitely a good idea), much of the work of the maps themselves has already been done. The simplest approach will be to integrate Google Maps into your application. To address your individual points:
You don't have to draw your own maps. Tons of them already exist. Unless you're asking about drawing maps of indoor facilities yourself and plotting on those? In which case, how do you plan to approach this from a hardware perspective? GPS won't work well.
You need a piece of hardware that supplies the GPS coordinates. From there, you can just call the API to plot it.
Already done.
Calls to the API. Just provide the location (address, GPS, whatever you have) to the API. GPS will be more accurate, of course. But I'm pretty sure there's a geolocation service as part of the API and you can store the coordinates locally and adjust them manually if they're inaccurate.
If I'm off-base from your actual idea here, let me know. "Maps" is, of course, vague.

Resources