Opencv 2.4 snakeImage C++ - c++

I have looked at the opencv 2.4 reference and I cannot find an equivalent of snakeImage. Therefore what other methods can I implement to achieve the same result?
Many Thanks

You can use the definition of the snake of previous releases (eg. opencv2.0).
snake opencv 2.0
It works efficiently.

This is one approach: Active Contour (Snake) with OpenCV
But search on Google, you'll find more interesting results.

It was moved to legacy.
Python binding: cv2.cv.SnakeImage()

Related

Extracting LBPFeatures in OpenCV

I am trying to extract the LBPFeatures of an image using OpenCV and C++, but there seems to be no in-built function to extract the features.
Can anyone help me?
I need to find the feature points and not the histogram.
The LBP authors give an optimized C code in one of their papers: here is the link.
you can find an old implementation of OpenCV in https://github.com/bytefish/opencv/tree/master/lbp
That libraries are included in newer versions of OpenCV, but the link have an example implementation

OpenCV CV_* functions error

I am having a bit of annoying problem with OpenCV CV_* constants for functions.
I know OpenCV has recently got rid of the CV_ for a lot of constants, however I can not find any updated documentation. And all the documentation that exits it still shows the old constants.
For example CV_BGR2GRAY has been switched to COLOUR_BGR2GRAY.
Where Can I find the new updated documentation for these constants like
CV_AA, CV_HOUGH_GRADIENT. (before someone says their original website, I have already checked and it shows older versions).
Any links would be nice.
Many thanks for your help.
Here's OpenCV 3.0 documentation:
http://docs.opencv.org/trunk/index.html
Conversion constants are described here:
http://docs.opencv.org/trunk/modules/imgproc/doc/miscellaneous_transformations.html

opencv c and c++ interface conversion table

i'l learning opencv with c++ and so i'm trying to use new c++ interface. but a lot of code i found on internet is based on old c interface.
for example i fond a lot of algorithm based on
IplImage, cvCvtPixToPlane, cvThreshold
and i have to translate them in
cv::Mat, cv::threshold, ..
in here (i think the official manual) i haven't find anything of really complete.
and each time i have to google for get the right conversion in the new c++ interface.
where can i find a conversion table?
Try OpenCV manuals, It seems they are the best way to find equivalent functions.
Version 2.1 : http://www.comp.nus.edu.sg/~cs4243/doc/opencv.pdf
All C,C++ and python API is available as single pdf, so you can just search for function names to find equivalent in C or C++
Version 2.3 : https://shimcv.googlecode.com/files/opencv2refman.pdf
Online version of 2.3 : http://opencv.itseez.com/
The cheatsheet doesn't have conversions but is the most useful documentation I've found and used!

is there a DWT function in opencv?

is there a DWT (discrete wavelet transform ) function in opencv ?? else if anyone have link of its implementation in c++
No, I don't believe OpenCV has that functionality.
This page might be useful.
It appears that openCV does not have an implementation of the DWT algorithm, but a quick google search turns up two results which may be relevant.
First is a result from Koders code search, which is an implementation designed to process MPEG4 frames for an image decoding program.
There is also a google code project, wavelet1d which is a version designed to process a 1d array of data.
You may be able to use those two implementations to build your own suitable for your uses?

Connected Component Labeling in C++

I need to use the connected component labeling algorithm on an image in a C++ application. I can implement that myself, but I was trying to use Boost's union-find/disjoint sets implementation since it was mentioned in the union-find wiki article.
I can't figure out how to create the disjoint_sets object so that it'll work with the image data I have (unsigned shorts). What am I missing? The examples in the Boost documentation aren't making any sense to me. Do I need all the extra Graph mumbo-jumbo in those examples when I have an image? OR, is there already an OpenCV connected component labeling implementation. Currently we're using OpenCV 1.1pre1 and Boost 1.37.
Surprisingly, there is no CCL in OpenCV. However, there is a workaround that is described in the reference manual. See the example for cvDrawContours. When I tried to use it, I had some strange behaviour on first and last rows and columns of an image, but I probably did something wrong.
An alternative way is to use cvBlobs library.
We ended up writing the algorithms for CCL and Union-Find ourselves using the descriptions found on Wikipedia and elsewhere. It seemed easier and faster than adding another library to our application just for this purpose.
Another possibility is to use the source codes provided provided by Ali Rahimi, and you can have a look at this.
I was able to use disjoint_sets of the boost library for the connected component labeling.
But to test, I was trying to create an image with pixel intensities having the value same as its label.
This led to the problem which I haven't been able to handle yet. Have a look at the thread.