OutOfMemoryError opencv(需要NON 64bit解决方案)

时间:2014-05-29 01:44:18

标签: c++ opencv sift

嘿伙计们,我的opencv 2.3.0存在问题

我要做的就是从我下载的图片中提取SIFT功能。现在图像非常大(约120MB)6124w X 7636h PNG

我看到的错误是:

OpenCV Error: Insufficient memory (Failed to allocate 748205824 bytes) in OutOfMemoryError, file /home/ros/Desktop/OpenCV-2.3.0/modules/core/src/alloc.cpp, line 52
terminate called after throwing an instance of 'cv::Exception'
what():  /home/ros/Desktop/OpenCV-2.3.0/modules/core/src/alloc.cpp:52: error: (-4)    Failed to allocate 748205824 bytes in function OutOfMemoryError

现在我知道调用此行时会发生错误。

cv::FeatureDetector * siftfeaturedetector = new cv::SiftFeatureDetector( siftLevel_, 10.0, 4,3,-1,0 );
siftfeaturedetector->detect(imgMat, keypts); // HERE

所以我想知道(因为我已经阅读了一些解决方案,说要用64位编译)如何使用32位Linux VM解决这个问题。还有一个注意事项我有4 GB的内存,所以750MB应该不是问题。

如果你知道为什么它需要750MB而不是接近120MB,我很想知道为什么会这样:)

0 个答案:

没有答案