quick responses, and more detail when I have more time:
**1) CvMemStorage causing Access violation **
it looks like you are not actually allocating it, so that clearning it would cause a problem. dont have a the CV reference in front of me, but take a look at the contour finder to see the allocation call
**2) <default_face_cascade> not included in addon? **
currently the addon does very basic opencv stuff and doesnt have face detection wrapped up (or much of opencv, for that matter). for now, the idea with the opencv addon is just to get basic stuff (grayscale images, contour detection) and to provide a general in to opencv , but not to do everything. since some nice projects are being built with the face detection (see the examples forum for one in particular) it would be nice to wrap it…
**3) cascade = crashes .exe outside of IDE **
somewhere in visual studio, there is a something like a “current working directory” for debugging or running the app. See the text file readme in the 0.02 download – take a look at that, it´s my first guess as to why you might see problems running in different ways. another guess is an uninitialized variable, or something like that (usually voodoo like that is based on some simple memory misusages). If you want to post the project as a zip, happy to take a look and try to debug it. you can link here or email or PM
Just in response to problem 2. Isn’t the openCV addon a wrapper for openCV functions? Like greyscale image, contours etc. I mean the actual openCV lib that is included is the same as the openCV 1.0 library?
( \v0.02\libs\opencv\ i mean, not \v0.02\libs\openFrameworks\computerVision\ )
I started writing my own wrapper in the same way that ofCvGreyscaleImage works, called ofCvFace. This is based on the default face example provided with openCv, the same thing Diego has used here.
Looking at Diegos code, it appears that the changes to the opencvaddon have nothing to do with face detection, but other functions relating to his specific project.
The only difference I can see between mine and in diegos is how the storage is declared.
In his, at the top of .cpp it says (above everything else, not in a function)
static CvMemStorage* storage = 0;
Where as in my .h declaration I have (private):
CvMemStorage * storage;
Then I have at the top of setup:
storage = 0;
storage = cvCreateMemStorage(0);
We both have
cvClearMemStorage( storage );
This is where my confusion comes from, there must be a big problem in the way I am declaring it?