How can we create Markers? Can we use it to get the location of the buildings shown in Camera view using Augmented Reality?
I am new in this Augmented Reality concept. Can markers be used to get position of the object shown in Camera view. Actually the app i want to is: On start of the application Camera start and then it shows the location of the build开发者_JAVA技巧ing which is shown in the Camera view .
Somethings you have to get acquainted with are the Orientation and Magnetic sensors, the angle of view of the camera. Some things are deprecated from 3.0 onwards.
from the orientation and magnetic sensors you get the azimuth, pitch and roll values. With these values you have to plot your markers. All the azimuth values are with respect to true North, so you need to calculate your the azimuth angle from Location.bearingTo() method.
Now that you have the azimuth, pitch and roll values from your sensors, you can place markers on your Camera SurfaceView. Draw your markers using a canvas on a surface view and update your markers according to the new values from the sensors. thats all.
Now if you have your latitude-longitude and the building's lat-long, just calculate the azimuth values and plot the markers...
Traditional fiducial markers can only be read to ~10x their width/height, so if you wanted to use markers to determine a building from far away they'd have to be huge. Natural feature markers can be read at further distances, but for items like buildings the difficulty is the feature descriptors change drastically with scale (distance from the building).
It sounds like to want to show people where an unknown (to the user) building is? In that case requiring it be in the view (so depending on computer vision alone) seems restrictive: the typical approach here is to determine the camera position and orientation (e.g. using sensors), and then project the known 3D coordinates of the building in to that view.
精彩评论