1

重複の可能性:
OpenCV のメモリ不足

いくつかの反復で実行しているプログラムがあります。最初の数回は正常に動作しますが、それらを通過すると、OpenCV のメモリ不足エラーが原因でクラッシュします。問題は、使用可能なメモリが十分にあることです。RAM の制限にもディスク容量の制限にも近づいていません。

エラーの原因となっているコードは次のとおりです。

// ftrs is a vector of MyFeature objects.
// it has 289600 elements
// FEATURE_DIMENSIONALITY is 58
cv::Mat data_pts(ftrs.size(), FEATURE_DIMENSIONALITY, CV_32FC1);

そして、ここにエラーがあります:

OpenCV エラー: 不明な関数、ファイル ......\src\opencv\modules\core\src\alloc.cpp、行 52 でメモリ不足 (70662404 バイトの割り当てに失敗)

したがって、これは非常に特殊なエラーです。他に何が原因でしょうか? 繰り返しますが、その時点で絶対に十分な RAM が利用可能であり、十分なディスク容量が存在します。助けてくれてありがとう

4

1 に答える 1

3

プロセスが 32 ビット プロセスの場合、使用可能な RAM の量は実際にはそれほど多くはなく、実際には数ギガバイトです。したがって、実際には 32 ビット プロセスの限界に達している可能性があります。エラー発生時のメモリ使用量を確認してみてください。

于 2012-10-14T17:28:29.947 に答える