In freak_demo.cpp, there's this comment:
// MATCHER
// The standard Hamming distance can be used such as
// BruteForceMatcher<Hamming> matcher;
// or the proposed cascade of hamming distance using SSSE3
But how to use SSSE3? It's best if this comment also includes the sample code.
As far as I remember you should be able to set SSE support when generating OpenCV project using CMake and then compiling OpenCV. It is possible that some binary versions of OpenCV which are distributed could have been already compiled with this setting.
This could be also helpful- OpenCV Install Guide.
As far as I know (I didn't write the FREAK code myself but had to work with the fREAK guys a lot) the BruteForceMatcher class from OpenCV was either changed or removed in the latest version. Anyway, this part of the code is broken if you use the latest stable release (2.4.3) and there are some bug requests to update it, but I have no idea wether it's in the pipeline.
Related
So like the title says I've been following this tutorial which seems to be the go to tutorial for how to handle haar feature training using the OpenCV.
Mergevec is a utility that merged together vec files so that you could generate a large number of samples from relatively few images. Anyway, he has an exe but it appears to be for 32-bit OpenCV 2.4.3 while I have 64-bit version 2.4.5. Any help would be appreciated!
My version is built using cmake and Visual Studio 10 as the compiler
Figured it out! Hopefully others can make use of this too!
Basically you want to:
First add mergevec.cpp to the folder \opencv\apps\haartraining then add the following to CMakeLists.txt
# -----------------------------------------------------------
# mergevec
# -----------------------------------------------------------
add_executable(opencv_mergevec mergevec.cpp)
set_target_properties(opencv_performance PROPERTIES
DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}"
OUTPUT_NAME "opencv_mergevec")
I am new to both openCV and Android. I have to detect objects in my project. So, I have decided to use ASIFT for the same. However, the code they have given here is very lengthy. It contains lots of C file. It also doesn't have openCV support.
Some search on the SO itself suggested that it is easier to connect the ASIFT code to the openCV library, but I can't figure out how to do that. Can anyone help me by giving some link or by telling the steps that I should use to add ASIFT to my openCv library, which I can further utilize in making my Android application?
Also, I would like to know whether using Android NDK along with JNI to make calls to the C files or using Android SDK along with binary package for my android project(Object Detection) would be a suitable option for me?
Finally , I solved my problem by using the source code given at the website of ASIFT developers. I compacted all the source files together to make my own library using make. I then called the required function from the library using JNI.
It worked for me, but the execution is taking approximate 2 mins on an Android device. Anyone having some idea about ways to reduce the running time ?
They used very simple and slow brute force matching (just for proving of concept). You can use FLANN library and it will help a lot. http://docs.opencv.org/doc/tutorials/features2d/feature_flann_matcher/feature_flann_matcher.html
I am interested in using a library that supports lip reading to augment audio/voice recognition. I found out that Intel's AVCSR (which was bundled with OpenCV library) would be an interesting option to consider. Would there be any other libraries that can be used to achieve the same (lip reading to augment voice recognition)?
Also I have not been able to locate a source to download this library from. I already tried the OpenCV package from SourceForge (http://sourceforge.net/projects/opencvlibrary/) but it does not seem to have the AVCSR packages/files. Could someone who has already worked with something similar point me to the place where I can find these source files (either within OpenCV or elsewhere)?
Thank you.
I'm looking to minimize the size of my android ndk built library.
I have started with the pre-built OpenCv libraries for Android and as of now the size of my lib is about 3MB. How can I minimize it's size?
I only need read/write files capability, png encode/decode, jpeg decoder and the typical image manipulation functions from OpenCv such as resize and cvtColor.
Any pointers greatly appreciated!
You've probably moved on with your project by now, Jona, but others not using the cmake-gui may like a command-line example. i.e. if you didn't want the CCALIB module, you could build like this:
cmake -DBUILD_OPENCV_CCALIB=OFF [other cmake flags] ../
Manipulating build flags may not cover all the module exclusions you would like, however, it's probably a good place to start. To see the list of flag options, open CMakeLists.txt file (top of the opencv source directory).
Turning on/off flags also won't break your builds as much as manually commenting-out code.
The OpenCV library has several modules, you might consider leaving out modules like 'highgui' and 'gpu', and maybe more depending on what you need and don't need. Anyhow, I am not quite sure what you need. Maybe you should use a different smaller library instead, as reading, writing, decoding, converting, etc are not really Computer Vision operations, like a Hough transform or a distance map
One you might consider is cimg btw, you can easily strip that one down as it simply just defines more and more functions as part of the cimg class.
Good luck!
I'm building openCV with either this script: https://github.com/BloodAxe/OpenCV-iOS-build-script, or this one: https://github.com/aptogo/OpenCVForiPhone.
Compared to their previous already built versions mine is really slow. The only thing I can see different is that in my case opencv is getting compiled with -O0.
Edit: I've tested it with phase correlation and lk and it's 5 times as slow.
Why don't you use cmake as the official documentation suggests?
Edit: make sure you're passing -DCMAKE_BUILD_TYPE=RELEASE to cmake.