CvSVM::train_auto() run out of memory (Bug #511)


Added by Fei DUAN over 14 years ago. Updated over 14 years ago.


Status:Done Start date:
Priority:High Due date:
Assignee:- % Done:

0%

Category:ml
Target version:-
Affected version: Operating System:
Difficulty: HW Platform:
Pull request:

Description

when the dimension of the training data is above several thousand, CvSVM::train_auto() will run out of memory after several minutes.
My testing platform is Windows XP / Win7, RAM 6G


reproduce-bug.cpp - Reproduction of a similar bug (1.5 kB) Stefan Walk, 2010-08-18 02:35 pm


Associated revisions

Revision 6a6ee640
Added by Vadim Pisarevsky over 14 years ago

fixed allocation bug in SVM training (ticket #511)

Revision 7b79eaf5
Added by Andrey Kamaev about 12 years ago

Merge pull request #511 from aritzlc:master

History

Updated by Stefan Walk over 14 years ago

I've attached a sample program reproducing a similar issue - it seems the procedure underestimates the block size for cvMemStorage (so it does not really run out of memory, but the error message suggests it does ...)

OpenCV Error: One of arguments' values is out of range (requested size is negative or too big) in cvMemStorageAlloc, file /home/walk/downloads/opencv/modules/core/src/datastructs.cpp, line 332
terminate called after throwing an instance of 'cv::Exception'
what(): /home/walk/downloads/opencv/modules/core/src/datastructs.cpp:332: error: (-211) requested size is negative or too big in function cvMemStorageAlloc

Updated by Vadim Pisarevsky over 14 years ago

thanks for the report and for the sample!
and sorry for delay.

the bug is fixed in r4119

  • Status changed from Open to Done
  • (deleted custom field) set to fixed

Also available in: Atom PDF