私は現在コンピュータビジョンを調べており、ハフ変換を使用していくつかの行を見つけようとしています。それ自体が機能している操作ですが、最小限のサンプルコードでも割り当て解除エラーが発生します。
#include <iostream>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace std;
using namespace cv;
int main(int argc, char* argv[])
{
int size[] = {100, 100};
Mat img(1, size, CV_8U);
img = cv::Scalar(255);
vector<Vec4i> lines;
HoughLinesP(img, lines, 1, CV_PI/180, 100, 30, 5);
cout << lines.size() << endl;
}
行を*行に変換し、ヒープ上にベクトルを作成し、削除しない場合は、すべてが機能していることに注意してください。コードに問題は見当たりません。OpenCVの例から直接引用しています。
例外はで発生します
msvcr110d.dll!_CrtIsValidHeapPointer(const void * pUserData) Line 2036 C++
これをVS201264ビットバージョンからコンパイルして実行します。実行可能ファイルも64ビットです。OSはWindows7、64ビットです