I am trying to develop a simple Android app that will get the current frame from the camera on the phone using PreviewCallback. Then perform SURF feature detection and extraction using the ObjectFinder provided in the JavaCV project. However I keep getting an Exception. The same program works on my PC.
This is probably due to SURF being a patented algorithm and this is causing issues.
Thus can somebody provide me an alternative for this in JavaCV. Any help would be appreciated. Thank you.
Your assumptions are correct. SURF/SIFT being a patented one, it has been removed from the latest opencv SDK. As an alternative you can try to use the androidobjectrecognition methods used in the same. You can checkout its source from: https://code.google.com/p/androidobjectrecognition/source/checkout
I tried use ObjectFinder too. But after unsuccessful attempts I found this code. After little corrective it work for me in android.
Basil is right, but there are many new features to find images (freak, orb, brisk...).
Related
i'm new to developing android apps in general.
I'm trying to create an application that given a certain image it would detect faces and would give me the eye locations and other info.
I've done some research and i found some stuff such as, the android FaceDetector API and OpenCV.
Could anyone give me some advice on how to make an app like this or send me a link with any info related to this, all help would be great!
Thanks, Daniel.
I have worked with Face recognition for a while.
If you want to use OpenCV you could do a better effort searching in SO and you can found things like this one.
The best one for me is the SDK provide by lockheed martin... but it's too expensive :S for a single person.
Edited
"Face detection and face recognition are different things ;) Face detection tells you where is the face and face recognition tells you who's the owner of the face"
If you choose OpenCV, you can find full doc in official page.
I'm going to give you a overview :
You can use OpenCV in your app using "OpenCV Manager" or with "Static Initialization on OpenCV Android".
About the first one:
OpenCV Manager is an Android service targeted to manage OpenCV library binaries on end users devices. It allows sharing the OpenCV dynamic libraries between applications on the same device. The Manager provides the following benefits:
Less memory usage. All apps use the same binaries from service and do not keep native libs inside themselves;
Hardware specific optimizations for all supported platforms;
Trusted OpenCV library source. All packages with OpenCV are published on Google Play market;
Regular updates and bug fixes;
About the second one:
A complete tutorial using eclipse.
You might try the new Android face API. See the tutorial here about how to detect faces and facial landmarks:
https://developers.google.com/vision/detect-faces-tutorial
I explain how to do it in this article. I used a TensorFlow Lite with a MobileFaceNet implementation, achieving very accurate results and with surprisingly high speed.
You'll find the source code and an APK in this repo
Does Apportable support this framework?
https://developer.apple.com/library/ios/documentation/Accelerate/Reference/AccelerateFWRef/_index.html
I am trying to build the sample project for an Audio Unit wrapper as AVAudioPlayer is too slow on Android for me:
https://github.com/alexbw/novocaine
I added it as a dependency but it doesn't seem to be able to find it. If not are there any work arounds to get novocaine working with Apportable? Thank you.
Apportable doesn't currently support Accelerate. That is a very large, special purpose framework that we haven't heard many people requesting.
Novocaine definitely uses Accelerate, so at this point, that library won't work. Our initial CoreAudio and AudioUnit support is written without Accelerate, so if you can use those directly to solve your needs, you may be able to get it working.
I want to convert the following openCV code(available in iOS) at Matching template imge(scaled) to Main/larger image to Android.
I have tried lot of things, but the opencv library has problem that surf detection is not available in OpenCV's Android Library. For using that they have told to use c++ code and doing some settings. Different sites are saying different settings. As i am totally new to android, i am not getting properly how to set it up. Please can anyone give me reliable and detailed way of doing that. or does anyone know ther other method of doing the same thing that is given in above question.
I have found solution to my question, You can check it out the solution on this post:Object detection with OpenCV Feature Matching with a threshold/similarity score - Java/C++
I need to develop a facial features detection application by which I could be able to detect eyes,nose,lips,head along with its face. For this I opted for OpenCV. I had gone through many tutorials and also sample projects. There I could see the usage of haarcascade files through which I could detect the facial features while recording a video. As I know the location of haar cascade file.
But no site could tell me the complete implementation of haarcascade files in OpenCV android project.
Kindly provide me some sites regarding or give me some brief knowledge regarding the same.
That is a good approach for detecting faces using openCV. Since you are using android, you will probably not find code written in java but you can always modal it to work on android too. This is what I believe is the best approach. http://docs.opencv.org/master/d7/d8b/tutorial_py_face_detection.html#gsc.tab=0
http://docs.opencv.org/modules/contrib/doc/facerec/facerec_tutorial.html
This is another detailed use of different approaches using OpenCV.
Hope it helps, if you need help in changing the code you have to post what you've done so far and then I would be happy to help! Cheers!
I am developing android game using opensource cocos2d-android-1 library available here . I also developed demo application using this tutorial.
Now I want to do further development but I am not getting any documentation for this library and how to use library. If anybody knows any blog, forum, documentation for this library project please suggest me.
I recommend you use cocos2d-x instead. It is also a port of cocos2d-iphone but with more platforms, a better documentation and a wider community than cocos2d-android (but still not as good as cocos2d-iphone).
It's probably a bit more painful to start because you need to understand how to run native code on android but you probably won't regret it when you decide to port your game on another platform.
many example is available on the github for cocos2d-android and documentation is not in large scale but you can handle most of the things from the test sample which is available in the cocos2d-andriod . if you getting any problem ..post here to get the answer or help..