When I move, the mobile (AR camera) object is also moving with it. I want to avoid this. How can this be done? The object should not follow the camera of mobile devices.
I want output like this image:
As far as I know Vuforia only allows you to place objects on different types of image targets, and if i understood correctly that you want to place an object in a 3D environment without an image target
you can do that but your Cellphone must have a gyroscope, here are some pretty good tutorials you can follow here to achieve that:
http://wirebeings.com/markerless-augmented-reality.html
https://www.youtube.com/watch?v=73ImdGxHnkU
This is a very basic tutorial to start understanding AR, if you want something more complex you need to look into projects like ARCORE (Android) and ARKIT (Iphone)
Related
I am a complete beginner with ARCore and I would like to ask if it is possible to display 3D objects using 3D coordinates and having the user as the origin? For example, having (x,y,z) values of (0,3,0) will display the 3D object to the right of the user.
First of all: There is no native implementation in ARCore for that!.
But you're not completely lost. There are some very useful libraries in Android like appoly. I've used this fork from Eric Neidhardt.
For iOS I only know this library based on ARKit.
You can also make a Unity3D app in C# and use AR Foundation and Vuforia Plug-in. This way is platform-independent, but imho testing is a pain.
You see, there are a few options out there, but be careful that none is really accurate!
i want to make an augmented reality which the building as a marker. in my research there is object as a marker for an augmented reality, i didnt found that object is a building.
. I want to know that is this possible that i can use real object (building) as a marker in augmented reality, If yes then would you suggest me that which any sdk for which will help me to build this in iPhone and android like Vuforia.
how to make a building as marker? what app that use for that ?
please help me. thank you
Vuforia is perfect for this my friend. It's completely up to you on which SDK you chose but I use vuforia so I woul suggest that. There is no app for specifically making buildings markers, instead they are methods to make it possible. These are just my views on how this can be achieved and as far as my knowledge goes, it should definitely work. There are two ways of doing this:-
Using the Vuforia Object Scanner: This is a slightly expensive approach. Since buildings cannot be directly placed under the camera for this app to function, you could get the builduings achitectural drawings and 3D Print a miniature version of it, so that it is now easier to scan.
Using MultiTarget: Well, this is basically very straightforward, the picture of the builing (that is the Front View, Side View and Plan) are uploaded into the Vuforia Target Manager and can be made into a Multitarget object and this can then be used for various applications.
I must create an Android app that recognizes some objects from the camera (car steering wheel, car wheel). I tried with Haar classifier but without success and I'm running out of time (it's a school project). So I decided to look for another way. I found some other methods for my goal - ORB. I found what should I do in this answer. My problem is that things are messed up in my head. Can you give me a step-by-step answer of what to do to implement the answer from the question in the link I gave:
From extracting the feature points to training the KD tree and using it for every frame from the camera.
Bonus questions:
Can you give a definition of feature point? It's something I couldn't exactly understand.
Will be the detecting slow using ORB? I know OpenCV can be used in native android, wouldn't that make the things faster?
I need to create this app as soon as possible. Please help!
I am currently developing a similar application. I would recommend getting something working with a single reference image first for a couple of reasons:
It's easier to do and understand if you're just starting out, and you can change it later.
For android applications you have limited processing capabilities so more images = lower fps.
You should have a look at the OpenCV tutorials which are quite helpful. Once you go through the “OpenCV for Android SDK” section and understand the three tutorials you can pretty easily add in functionality that will allow you to analyse the video feed.
The basic logic path I'd recommend following when making the app is:
Read in the reference image.
Create and use your FeatureDetector, DescriptorExtractor and DescriptorMatcher.
Use the above to detect keypoints and then descrive keypoints (the first two, don't forget to convert it to a mat and then to greyscale).
Every time you get a frame from your camera repeat step 3. on it and then compare the keypoints in the images (with the third part of 2.).
Use the result to determine if there is a match (if there is then draw a box around it or something).
Get a new frame.
Try making it to work for a single object and then add in others later. Another thing you could add is a screen at the start to allow users to pick what they want to search for.
Also ORB is reasonably fast, especially compared to SIFT and SURF. I get about 3fps on a HTC One with a single reference image.
I'm asked to do an app with a 3D object mapped on a tag on the camera preview. The user should be able to rotate the 3D object on swipes, and to click on different area of the 3D object.
I'm investigating the different way to do it.
So far the best option I've found seems to be https://developer.vuforia.com/resources/sdk/unity, but I can't find whether it's possible to interact with the 3d model (rotate on swipe, define clickable areas).
Has anyone any experience with that?
I guess I can do it with some OpenGL, but I have no experience with it and it seems quite complex to start off with.
Is there any other library I should consider?
I would use OpenGL and start by the training tutorials on http://developer.android.com/training/graphics/opengl/index.html. Hope this helps! If you follow these tutorials you will be able to do what you want. ive tried unity and it is a really good engine too. and of course you can make an object clickable with unity! maybe using unity would be easier but the documentation on opengl is huge and is not that difficult to implement at least with first steps. hope this helps
The Metaio SDK can do all of that but I am not sure if it automatically provides the area of the model tapped, but you could ask here.
I'm looking for a 'basic' AR SDK that allows me to draw images and 3D shapes around the user (no matter where he is). It would be even better if the SDK includes a simple way to detect interaction with the shapes (something like onClick).
I made a project from scratch on Android but there's still a lot of work to do and I'll need to do the same on iOS after... So that's why I'm looking for an SDK or a similar project (no matter what platform).
I tested Metaio but it's quite expensive and maybe overkill for my purpose because it uses LLA coordinates.
I tested DroidAR on Android but it's only for Android and it looks heavy too (don't need the GPS).
How about Qualcomm's Vuforia? I was able to quickly get a sample project running on it.
EDIT Looks like I was wrong about what it could do. According to this (which is slightly dated, so who knows) Metaio might be your only choice.
i really don't sure what you really want to do ..but if you simply show images or 3d models on camera without any detection you can achieve this very easily i am explaining for Android and you can extend it to ios on same logic.
first approach:
you have to use custom camera of Android in your app,then use any game engine as per your need..i will suggest Jpct-ae or Rajawali
they are very simple to integrate and can be used for 2d images and 3d models.
this tutorial will explains a lot
keep the gl-surafce transparent and you can have model floating in space ...
second approach :
to add some more effect to your AR app you can use sensor values to move model in 3d space as per movement of device..it gives a cool effect.
use first approach and additionally collect sensor values and apply that matrix to gl camera of your game engine..for sensor values follow here
good tutorial here..
i hope this may help you..i done these a long time ago but try to help if you want..