Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Opencv_TrainCascade OutOfMemoryException

Hello,

I am using opencv_traincascades but face an out of memory exception when numPos > 10000 and numNeg >10000. I have a dataset of 2700 cropped images and have run opencv_createsamples to generate 10 images per input image giving me ~27000+ and ~27000- images.

When i run with LBP, i am able to reach stage 20 on -numNeg 22000 -numPos 21000. (Other posts recommend using a smaller value than the total number of samples for these parameters). HOG will run at .numNeg 5000 and numPos 5000 but this is just a quarter of my dataset.

When i do the same for HOG or even HAAR i get an OutOfMemoryException. I have 8Gb of memory available and no other RAM consuming programs/processes running. Ubuntu 32bit.

OpenCV Error: Insufficient memory (Failed to allocate XXXXXXXXXX bytes) in OutOfMemoryError, file /tmp/pkg/OpenCV-2.4.1/modules/core/src/alloc.cpp, line 52

HAAR and HOG are floating point and LBP is integer i believe which could be affecting this result.

1) Anyway to calculate max +/- image number for given RAM and feature type? 2) I am using samples which are 80 width and 40 height. Is this too big? 3) If i train for 20 stages with one quarter of my dataset, then change the input to another set of image for another 20 stages, how should this be done?

Regards,